Имя: Пароль:
1C
1C 7.7
v7: Установка значения в табличную часть документа из внешней обработки
0 brenli
 
20.01.20
14:10
Всем добра.
Каким образом можно установить значение табличной части открытого документа из внешней обработки чтобы после закрытия внешней обработки установленное поле заполнилось выбранным значением?
1 brenli
 
20.01.20
14:11
Через FormEx слышал делают. Каким образом? Форму передают как параметр и в контексте внешней обработки ее заполняют?
2 Builder
 
20.01.20
14:11
Внешняя обработка откуда будет вызвана? Из самого документа?
3 brenli
 
20.01.20
14:13
(2) Да.
По логике должна вызываться при событии ПриОкончанииРедактированияСтроки , и у данной строки нужно заполнить ячейку
4 Builder
 
20.01.20
14:18
(3) Через Контекст не работает? В типовых в глобальных процедурах вроде так сделано. Или через внешний отчет что-то не так работает? Не помню уже....
5 Builder
 
20.01.20
14:19
(3) Можно еще через Подбор попробовать сделать.
6 brenli
 
20.01.20
14:19
(4) Имеешь ввиду работу с переданным контекстом? Сейчас попробую
7 Калиостро
 
20.01.20
14:21
(0) Если есть типовые, посмотри в ТиС как сделан выбор партии в документе РеализацияТМЦ (процедура ПриНачалеРедактированияСтроки).
8 Злопчинский
 
20.01.20
14:26
передаешь на ВПФ параметром контекст открытого документа
конт=глВзятьКонтекст(Контекст);
ОткрытьФормуМодально("Отчет",конт,тутпутьобработки);

в ВПФ ПриОткрытии() получаешь
МояФорма = Форма.Параметр;

дальше работаешь с МояФорма.
МояФорма.ВыбратьСтроки();
Пока МояФорма.ПолучитьСтроку()=1 Цикл
//лдолдолдод
КонецЦикла;

При закрытии формы ВПФ сделать
МояФорма.Форма.Обновить(0);
9 brenli
 
20.01.20
14:28
Спасибо господа. Через контекст отлично получилось
Всем благ, здоровья, денег, и море ништяков
10 Злопчинский
 
20.01.20
14:35
бросай клюшки! переходи на прогрессивного снеговика!
11 brenli
 
20.01.20
14:46
(10) Не могу пока совсем от них отказаться ((
Вообще мне они уже надоели и неинтересны. Но враз всех не перевести. Постепенно перевожу на снеговика - пиля "старых клюшек"
12 Злопчинский
 
20.01.20
14:53
(11) то есть в переводе на русский "я жадный"
;-)
13 Cthulhu
 
20.01.20
16:55
хинт:
1) во внешнюю обработку можно передать контекст формы, из которой эта внешняя обработка была открыта (переменная модуля - пусть это будет КонтВызова, например, устанавливается из Форма.Параметр в ПриОткрытии)
2) в форме, из которой открываеться внешняя обработка, можно на морду положить реквизиты, а в модуле прописать процедуру (типа "Процедура ЗаполнитьШтоНадоПоРеквизитамНаМорде() ...") - которая начинается с конструкции Форма.ОбработкаОжидания("",0), а после этой конструкции вносит по реквизитам п.1. нужные изменения
3) ну и во внешней обработке в нужном месте (по некоей педальке "выполнить") - можно сначала прямым присваиванием через контекст п.1:
- установить нужные значения нужным реквизитам формы-инициатора (КонтВызова.РеквизитНаМорде = тошонадо)
- и - самое веселое - КонтВызова.Форма.ОбработкаОжидания("ЗаполнитьШтоНадоПоРеквизитамНаМорде"
14 Злопчинский
 
20.01.20
16:56
(13) нихрена не понял про обраоткуожидания - что витоге будет-то?
15 Cthulhu
 
20.01.20
16:58
(14): в вызвавшей(!) форме через 1 секунду автоматически выполнится процедура модуля формы, которую указали.
16 Злопчинский
 
20.01.20
17:02
(15) а при чем здесь вызыВАЕМАЯ форма?
вдобавок при обработке ожидания с фокусом проблемы
17 Cthulhu
 
20.01.20
17:57
(14): матри сюдой, Серёг.
1) раскладываем на морду (в невидимый слой) реквизиты, по которым можно заполнить строку документа (плюс - указать опционально номер заполняемой строки, -1 значит новую)
2) прописываем в модуле формы процедуру - см.(13.2), которая по значениям етих реквизитов заполняет (если надо - предварительно добавив)
3) в открытой форме (перед закрытием по кнопке типа "выполнить"):
- КонтекстВызова.СлужебныйРеквизитНаМорде = НужноеЗначениеДляЗаполненияСтроки .... сколько надо и каких надо
- КонтекстВызова.Форма.ОбработкаОжидания("ПроцедураКотораяУмеетДелатьп2смвыше",1) - она через секунду запустится и по установленных из внешней обработки реквизитам (п.1) формирует (заполняет) строку таблицы документа.

(16): иобушки-воробушки. ну извини, брателло, что прочитал - на то и отвечаю. ну или тупо не понял что тебе пособачиться а не ответ надо.
удачи.
18 Злопчинский
 
21.01.20
02:28
Вот нихера не понял зачем это все. Передали контекст. В ВПФ контекст уже спозиционирован на нужную строку. Поменяли что надо и закрыли ВПФ.
.
???
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.