Обработка заполнение табличных частей документа

1. srub 84 15.10.18 19:23 Сейчас в теме
Подскажите пожалуйста. Делаю внешнюю подключаемую обработку для заполнения табличной части Акта взаиморасчетов для Бухгалтерии Корп. При нажатии кнопки Заполнить ТЧ в документе Акт взаиморасчетов, необходимо чтобы перед выполнением обработки, выпадало окно выбора подразделения из справочника ПодразделенияОрганизации, чтобы передать подразделение параметром в запрос. Никак не могу понять как это сделать. Понимаю, что нужно использовать асинхронные методы, но как именно сделать так чтобы заработал не знаю


&НаКлиенте
Процедура Команда1(Команда)
	ВыполнитьКоманду("Обработка ТЧ у Акта взаиморасчетов", Объект)
КонецПроцедуры



&НаКлиенте
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт
	
	Подразделение = ОткрытьФорму("Справочник.ПодразделенияОрганизаций.Форма.ФормаВыбора");
	
		Если ИдентификаторКоманды = "Обработка ТЧ у Акта взаиморасчетов" Тогда
		Режим = РежимДиалогаВопрос.ДаНет;
		Оповещение = Новый ОписаниеОповещения("ПослеОтветаНаВопросОЗаполненииТЧ", ЭтаФорма, Подразделение);
		ПоказатьВопрос(Оповещение, "Заполнить табличную часть?", Режим, 0); 
	КонецЕсли;
			
	

	
КонецПроцедуры



&НаКлиенте
Процедура ПослеОтветаНаВопросОЗаполненииТЧ(Результат, Подразделение) Экспорт
	
	//Подразделение под отладчиком - УправляемаФорма. Как из получить выбранное подразделение?	
		
	Если Не ВладелецФормы = Неопределено Тогда
		НовыйОбъект = ВладелецФормы.Объект;
	Иначе	
		ВладелецФормы = ОткрытьФорму("Документ.АктСверкиВзаиморасчетов.Форма.ФормаДокумента", Новый Структура("Ключ", Объект.Ссылка));
		НовыйОбъект = ВладелецФормы.Объект;
	КонецЕсли;
	
	
	ЗаполнитьПоДаннымБухгалтерскогоУчета(Ложь, НовыйОбъект, Подразделение);
	
	КопироватьДанныеФормы(НовыйОбъект, ВладелецФормы.Объект);
	
	Сообщение = Новый СообщениеПользователю();
	Сообщение.Текст = "Табличная часть обработана!!!";
	Сообщение.Сообщить();
	
			
КонецПроцедуры
Показать
По теме из базы знаний
Найденные решения
3. VZyryanov 16.10.18 08:24 Сейчас в теме
Вариант 1
Создать реквизит и элемент Подразделение в форме. Вводить подразделение в этот элемент.

Вариант 2
&НаКлиенте
Процедура ВыбратьПодразделение(Команда)
	ОткрытьФорму("Справочник.ПодразделенияОрганизаций.Форма.ФормаВыбораКФОснПодр",,ЭтаФорма,,,,
		Новый ОписаниеОповещения("ДобавитьПодразделениеНаКлиенте",ЭтотОбъект),РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецПроцедуры

&НаКлиенте
Процедура ВыбратьПодразделениеНаКлиенте(Результат,ДополнительныеРеквизиты) Экспорт
	Если Результат=Неопределено Тогда
		Возврат;
	КонецЕсли;
	Подразделение=Результат;
	//...
КонецПроцедуры
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SanyMaga 68 16.10.18 05:56 Сейчас в теме
&НаКлиенте
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт 
 ОткрытьФорму("Справочник.ПодразделенияОрганизаций.ФормаВыбора",,ЭтаФорма); //Указываем владельца ЭтаФорма тогда у владельца при выборе будет вызываться обработка "ОбработкаВыбора"
КонецПроцедуры

&НаКлиенте
Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора)
	//ВыбранноеЗначение это Подразделение а ИсточникВыбора это форма Справочник.ПодразделенияОрганизаций.ФормаВыбора
	Сообщить(ВыбранноеЗначение);
КонецПроцедуры

Показать
3. VZyryanov 16.10.18 08:24 Сейчас в теме
Вариант 1
Создать реквизит и элемент Подразделение в форме. Вводить подразделение в этот элемент.

Вариант 2
&НаКлиенте
Процедура ВыбратьПодразделение(Команда)
	ОткрытьФорму("Справочник.ПодразделенияОрганизаций.Форма.ФормаВыбораКФОснПодр",,ЭтаФорма,,,,
		Новый ОписаниеОповещения("ДобавитьПодразделениеНаКлиенте",ЭтотОбъект),РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецПроцедуры

&НаКлиенте
Процедура ВыбратьПодразделениеНаКлиенте(Результат,ДополнительныеРеквизиты) Экспорт
	Если Результат=Неопределено Тогда
		Возврат;
	КонецЕсли;
	Подразделение=Результат;
	//...
КонецПроцедуры
Показать
4. srub 84 16.10.18 11:57 Сейчас в теме
(3)
&НаКлиенте
Процедура ВыбратьПодразделениеНаКлиенте(Результат,ДополнительныеРеквизиты) Экспорт
Если Результат=Неопределено Тогда
Возврат;
КонецЕсли;
Подразделение=Результат;
//...
КонецПроцедуры


Спасибо Вам большое, все сработало!))))
Оставьте свое сообщение

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