Из модуля попасть в процедуры формы

1. user87385463 03.11.23 13:58 Сейчас в теме
Всем привет.
Нужно из модуля (при заполнении документа) перейти в форму ( там есть нужные процедуры, их много друг в друге, поэтому не хочу в модуль тащить). Можно ли это сделать?

Суть такая что, при изменении номенклатуры в тч происходит куча действий по заполнению групп затрат(это документ произв.без заказа).
Если я его просто заполняю, он не дает провести (хотя он полностью заполнен), ругается что в тч не заполнены группы затрат.
Если номенклатуру перезаполняю ей же, всё остается прежним при этом, но видимо, что-то скрытое заполняется.
Так вот, хочу чтобы после заполнения всего документа ( в том числе номенклатур заходил в процедуру при измении ном).

Иначе не вижу уже варианта, не пойму что еще заполнить (реквизитов в конфигураторе не вижу пустых).
Подскажите, мб кто-то сталкивался?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 81 03.11.23 14:21 Сейчас в теме
(1)
Можно ли это сделать?

В стопицотый раз: нет
там есть нужные процедуры, их много друг в друге, поэтому не хочу в модуль тащить)

придется.
3. user1880116 03.11.23 14:39 Сейчас в теме
(1)
не хочу в модуль тащить
хочу чтобы
... владычицей морскою.
Кроилово традиционно ведет к попадалову. Программируй честно и правильно.
4. Sashares 33 03.11.23 14:56 Сейчас в теме
(1)Была недавно тема на форуме.
Суть - добавляете в расширении на форму документа экспортную клиентскую процедуру, которая будет вызывать нужные процедуры формы документа.

Заполняете документы на сервере, записываете.
На клиенте для каждого документа получаете форму - вызываете добавленную экспортную процедуру, чтобы дозаполнить нужные данные. Записываете еще раз.

Но это конечно тот еще костыль.
5. schweigen 03.11.23 15:10 Сейчас в теме
(1) ну тут весь вопрос, можешь ли ты в модуле формы напротив этой процедуры дописать Экспорт, или нет. Если можешь - да, можно поиграть в дровосека. Если не можешь - можно вытащить её в расширение, написать Экспорт там и тоже играть в дровосека )

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

////////////////////////////////////
// Модуль объекта документа
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка)
	
	//Здесь ДанныеЗаполнения - это переданная структура ЗначенияЗаполнения	
	
КонецПроцедуры
Показать
Оставьте свое сообщение

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