|
Не заполняется ТЧ документа внешней обработкой заполнения ТЧ | ☑ | ||
---|---|---|---|---|
0
dka80
13.04.18
✎
08:53
|
Добрый день.
Вот таким кодом во внешней обработки заполнения ТЧ пытаюсь заполнить документ: Процедура ПослеВводаЗначения(ВыбЗнач, Параметры) Экспорт Если ВыбЗнач<>Неопределено Тогда Для каждого Элемент из ОбъектыНазначения Цикл ФормаОбъекта = ПолучитьФорму(ПолучитьПолноеИмяДокумента(Элемент)+".Форма.ФормаДокумента", Новый Структура("Ключ", Элемент)); Если ФормаОбъекта = Неопределено Тогда Сообщить("Не удалось заполнить документ!"); Возврат; КонецЕсли; ОбъектСсылки = ФормаОбъекта.Объект; ЗаполнитьПоТерритории(ОбъектСсылки, ВыбЗнач); ФормаОбъекта.ОбновитьОтображениеДанных(); КопироватьДанныеФормы(ОбъектСсылки, ФормаОбъекта.Объект); ФормаОбъекта.Модифицированность = Истина; КонецЦикла; КонецЕсли; КонецПроцедуры &НаСервере Процедура ЗаполнитьПоТерритории(ОбъектСсылки, Территория) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | КадроваяИсторияСотрудниковСрезПоследних.Сотрудник КАК Сотрудник, | КадроваяИсторияСотрудниковСрезПоследних.ФизическоеЛицо КАК ФизическоеЛицо |ИЗ | РегистрСведений.КадроваяИсторияСотрудников.СрезПоследних КАК КадроваяИсторияСотрудниковСрезПоследних | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ТерриторииСотрудников.СрезПоследних КАК ТерриторииСотрудниковСрезПоследних | ПО КадроваяИсторияСотрудниковСрезПоследних.Сотрудник = ТерриторииСотрудниковСрезПоследних.Сотрудник |ГДЕ | КадроваяИсторияСотрудниковСрезПоследних.ВидСобытия <> ЗНАЧЕНИЕ(Перечисление.ВидыКадровыхСобытий.Увольнение) | И ТерриторииСотрудниковСрезПоследних.Территория = &Территория | |УПОРЯДОЧИТЬ ПО | Сотрудник |АВТОУПОРЯДОЧИВАНИЕ"; Запрос.УстановитьПараметр("Территория", Территория); тз = Запрос.Выполнить().Выгрузить(); ОбъектСсылки.Сотрудники.Загрузить(тз); Для Каждого Строка Из ОбъектСсылки.Сотрудники Цикл Сообщить(Строка.Сотрудник); КонецЦикла; КонецПроцедуры В цикле сообщить выводятся сотрудники. Но на форме документа ничего не появляется. Что я делаю не так? |
|||
1
Cyberhawk
13.04.18
✎
08:55
|
Смешной - ты форму получаешь, но она не та
|
|||
2
dka80
13.04.18
✎
08:56
|
Пояснишь, почему не та?
|
|||
3
Cyberhawk
13.04.18
✎
08:57
|
Вопрос поставлен неверно. Это ты объясни, с чего ты взял / рассчитываешь, что будет та
|
|||
4
mehfk
13.04.18
✎
09:00
|
Пятнично.
|
|||
5
dubraver
13.04.18
✎
09:01
|
Загружай в объект.
ВладелецФормы.Объект.ТЧ.Загрузить(тз); |
|||
6
dka80
13.04.18
✎
09:01
|
Потому, что имя формы Документ.ОтпускБезСохраненияОплатыСписком.Форма.ФормаДокумента
|
|||
7
dka80
13.04.18
✎
09:08
|
(5) не помогло
|
|||
8
dubraver
13.04.18
✎
09:29
|
По шаблону попробуйте.
Я написал несколько обработок по заполнению. Проблем не было. http://dubraver.ru/?page_id=151 |
|||
9
dka80
13.04.18
✎
09:34
|
Разобрался.
Отдельное спасибо (1) и (5). Действительно форму получал того объекта, но не уже открытую. Заменил ФормаОбъекта = ПолучитьФорму(ПолучитьПолноеИмяДокумента(Элемент)+".Форма.ФормаДокумента", Новый Структура("Ключ", Элемент)); на ФормаОбъекта = ВладелецФормы; и получилось |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |