|
КА. Не могу передать и сохранить в реквизит формы внешней обработки параметры формы. | ☑ | ||
---|---|---|---|---|
0
LOLYBUF
29.06.21
✎
13:00
|
Ситуация такая: есть внешняя обработка заполнения, которую нужно открывать из документа. При заполнении документа открывается форма внешней обработки в которую нужно передать параметры, но параметры то передаются, но когда я пытаюсь сохранить какое-либо значение в реквизит, они куда-то пропадают. Не сохраняются ни в какую. Кто знает, как решить?
|
|||
1
apdate by
29.06.21
✎
13:26
|
а где значение должно сохраниться?
|
|||
2
LOLYBUF
29.06.21
✎
13:32
|
(1) В реквизите внешней формы
|
|||
3
LOLYBUF
29.06.21
✎
13:33
|
(2) В реквизите внешней обработки*
Усе путаться начал |
|||
4
apdate by
29.06.21
✎
14:07
|
нууу. я не знал что можно хранить данные в реквизите обработки (
а что если данные формы в файл поместить а при открытии обработки поднимать из файла но вот не знаю как идентифицировать то( я вообще честно говоря не понял задачи толком |
|||
5
LOLYBUF
29.06.21
✎
14:08
|
(4) Сейчас я попробую объяснить.
Есть документ через который должна открываться внешняя обработка заполнения, а точнее ее форма. Далее в форму нужно подтянуть ссылку на этот документ и после зполнения табличной части документа, по этой ссылке отредактировать документ. |
|||
6
Фрэнки
29.06.21
✎
15:47
|
Лень чего-то придумывать...
Есть обработка заполнения, так? Которая сидит в внешних обработках. Ты с ней пытаешься чего-то делать. Форму обработки открывает ВладелецФормы ДанныеОбъекта = ВладелецФормы.Объект; и дальше погнали обработку данных объекта. Или на самом деле все нетиповое? |
|||
7
LOLYBUF
29.06.21
✎
16:12
|
(6) Да, ты верно думаешь
|
|||
8
apdate by
30.06.21
✎
09:18
|
(5) теперь понял! думал Вы хотите куда то сохранить значение
В параметрах что то прилетает? В форме документа что то типа ПараметрыТовара = Новый Структура(); ПараметрыФормы = Новый Структура(); ИмяФормыЗапросаКоличества = "Обработка.РабочийСтол.Форма.ЗапросКоличества"; ОбработатьНоменклатуру_(ВыбраннаяСтрока,ПараметрыТовара,ПараметрыФормы); Если ЗапрашиватьКоличество Тогда ОткрытьФорму( ИмяФормыЗапросаКоличества, ПараметрыФормы, ЭтаФорма, , , , Новый ОписаниеОповещения("ДобавитьВПодбор", ЭтотОбъект, ПараметрыТовара), РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс); КонецЕсли; в форме обработки вешаете событие ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) далее читаете переменную Параметры.Ваш переданный документ (ссылка) далее в том методе в котором у Вас необходимо передать что либо из обработки в документ пишите ПараметрыТовара = Новый Структура; ПараметрыТовара.Вставить("Номенклатура", Номенклатура); ПараметрыТовара.Вставить("КоличествоУпаковок", КоличествоУпаковок); ПодобранныеТовары.Добавить(ПараметрыТовара); Результат = Новый Структура("ПодобранныеТовары", ПодобранныеТовары); Закрыть(Результат); короче формируете стуктуру и передаете ее обработно в документ методом Закрыть() далее в документе в методе &НаСервере Функция ДобавитьВПодбор(Результат, ДополнительныеПараметры) Если Результат <> Неопределено И СокрЛП(Результат) <> "Отмена" Тогда ДобавитьВПодбор(ДополнительныеПараметры.Номенклатура, Результат.ПодобранныеТовары[0].КоличествоУпаковок, ДополнительныеПараметры.Цена, ДополнительныеПараметры.Штрихкод, ДополнительныеПараметры.Остаток); КонецЕсли; ТекущийЭлемент = Элементы.СписокНоменклатура; КонецФункции читаете свой "Результат" |
|||
9
apdate by
30.06.21
✎
09:19
|
за синтаксис не пинайте сильно. сам еще зеленый в 1С :-)
|
|||
10
LOLYBUF
30.06.21
✎
11:51
|
(8) Такое не сработает. Параметры формы после открытия самой формы внешней обработки проглатывает все что в них передали изначально, поэтому их там не получится поймать.
|
|||
11
LOLYBUF
30.06.21
✎
11:51
|
Но я нашел вот такой вариант: https://infostart.ru/1c/articles/825702/
|
|||
12
apdate by
30.06.21
✎
13:46
|
(10) У меня работает!
|
|||
13
apdate by
30.06.21
✎
13:47
|
(11) то же верное решение
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |