Вызов метода разрешен только в обработчике расширяющей формы

1. vadim1011985 99 29.07.17 10:58 Сейчас в теме
Всех приветствую Подскажите что я делаю не так. не могу понять смысл ошибки.

Имеется типовая конфигурация БП 3.0 (платформа 8.3.10.2252 номер релиза я думаю в данном контексте не интересен, но стоит последний 51.22) . Через расширение конфигурации необходимо организовать множественный подбор номенклатуры. Добавил основную форму обработки "Подбор номенклатуры" в расширение. прописал события выбора

&НаКлиенте
Процедура МножественныйПодборНоменклатуры_СписокНоменклатурыВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
	
	ВыделенныеСтроки = Элементы.СписокНоменклатуры.ВыделенныеСтроки;
	
	Если ВыделенныеСтроки.Количество()> 1 тогда // если выбрали несколько позиций 
		
		Для каждого НоваяСтрока Из  ВыбраннаяСтрока Цикл
			
			ТекСтрока = Элемент.ДанныеСтроки(НоваяСтрока);
			
			СтрокаПодбора = Объект.ПодобраннаяНоменклатура.Добавить();
			СтрокаПодбора.Номенклатура = ТекСтрока.Ссылка;
			СтрокаПодбора.Количество = ТекСтрока.КоличествоОстаток;
			
		КонецЦикла;	
		
		УстановитьВыполнениеОбработчиковСобытия(ложь); // отказ от выполнения события расширяемой формы - тут как раз ошибка
		
    КонецЕсли;

КонецПроцедуры 
Показать


но на последней строке возникает ошибка - "Вызов метода разрешен только в обработчике расширяющей формы". Причем в предприятии после закрытии сообщения об ошибки таб.часть "ПодобраннаяНоменлатура" оказывается заполнена правильно - т.е. выбранными позициями.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. vadim1011985 99 29.07.17 11:12 Сейчас в теме
Блин, понял свой косяк. в 8.3.10 немного изменился порядок работы с расширением форм
3. info1i 223 06.06.18 13:02 Сейчас в теме
(2) Просьба сообщить ответ, как решили; или хотя бы ссылку на информацию. У меня, например, та же ситуация возникла; не знаю, где почитать.
4. vadim1011985 99 06.06.18 13:21 Сейчас в теме
(3) немного изменил код - закомментировал последнюю строку кода , само событие назначил после основного обработчика

объект.ПодобраннаяНоменклатура.Очистить(); // так как обработка срабатывает после основного события очищаем данные 
	
	ВыделенныеСтроки = Элементы.СписокНоменклатуры.ВыделенныеСтроки; // заново заполняем 
	
	Если ВыделенныеСтроки.Количество()> 1 тогда 
		
		Для каждого НоваяСтрока Из  ВыбраннаяСтрока Цикл
			
			ТекСтрока = Элемент.ДанныеСтроки(НоваяСтрока);
			
			СтрокаПодбора = Объект.ПодобраннаяНоменклатура.Добавить();
			СтрокаПодбора.Номенклатура = ТекСтрока.Ссылка;
			СтрокаПодбора.Количество = ТекСтрока.КоличествоОстаток;
			
		КонецЦикла;	
		
		//УстановитьВыполнениеПослеОбработчиковСобытия("МножественныйПодборНоменклатуры_СписокНоменклатурыВыборПосл­е",Неопределено);
		
    КонецЕсли;
Показать
Прикрепленные файлы:
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот