Имя: Пароль:
1C
1С v8
УФ. Вызвать событие формы документа из вне
0 егаис
 
11.09.17
17:56
УФ уже в печенках. После создания и записи документов программно необходимо вызвать событие в форме документа (заполняются табличные части).
Как это сделать?

Объект.Записать();
Форма = Объект.ПолучитьФорму("формадокумента");
Форма.ВызватьПроцедуруФормыНаКлиенте не работает
1 Господин ПЖ
 
11.09.17
17:58
на клиента можно только вернуться
2 егаис
 
11.09.17
18:26
ок, подскажите тогда с таким вопросом
Перемещение = Объект "Документ.КадровыйПеревод"

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



Вот тут возникает затык
ЗарплатаКадрыРасширенный.РедактированиеСоставаНачисленийДействующиеНачисленияВРеквизит(ИсключаемыйРегистратор, ТаблицаСотрудников, ЭтаФорма, ОписаниеТаблицыВидовРасчета, 1, Перемещение.ДатаНачала, Перемещение.ДатаОкончания);

Что передать в качестве ЭтаФорма??
НАписал Перемещение.ПолучитьФорму("ФормаДокумента") ругается  что-то с интерактивным открытием.
3 егаис
 
11.09.17
19:43
up
4 Cyberhawk
 
11.09.17
19:53
"После создания и записи документов программно необходимо вызвать событие в форме документа" // В серверном коде пиши маркер в данные ИБ (константу / регистр сведений). На клиенте обработчиком ожидания дергай это место, при наличии там маркера - профит.
На 8.3.11 систему взаимодействия можешь потыкать.
Еще если платформа не мобильная и серверный код запускает тот же сеанс, в котором надо ожидание на клиенте сделать, то через ФЗ (и сообщения пользователю) прокатит.
5 Fram
 
11.09.17
20:06
(0) просто из любопытства.. а что делает процедура? Почему ты решил этот код в модуль формы затолкать?
6 егаис
 
11.09.17
20:13
(5) перенос из 77 по ОЛЕ. Заполняет ТЧ Начисления документа "Кадровый перевод" при изменении оклада.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший