Передать ДокументОбъект на сервер для проведения #721188


#0 by zzerro
На форме документа есть кнопка, которая открывает обработку, которая в свою очередь формирует пакет документов на основании открытого документа. Есть необходимость перенести проведение сгенерированных документов в привилигированный общий модуль, но вот возникает проблема в том, что и текущий документ, из формы которого открыта обработка нужно тоже провести. В общем есть необходимость передать объект документа на сервер. Пробовал так: В обработке: МассивДокументов.Добавить(Новый Структура("Документ",ПоместитьВоВременноеХранилище(ОбъектРТУ,Новый УникальныйИдентификатор))); где ОбъектРТУ - это ДокументОбъект (т.е. это объект открытого документа) В общем модуле:     Для каждого ПараметрыПроведения из МассивДокументов Цикл При этом адрес во временном хранилище верный, однако объект из этого адреса не получен, тип значения = Неопределено. Почему так или как можно это обойти?
#1 by ДенисЧ
ссылку передавай
#2 by zzerro
Используется Обычное приложение, толстый клиент, обычные формы, платформа 8.2.17 Ссылку не хорошо, т.к. открыта форма документа и получится, что в открытой форме один экземпляр объекта, а проводить будем другой экземпляр объекта, т.е. по сути другой объект. В итоге будет рассогласование данных.
#3 by Defender aka LINN
Перечитай после проведения. Тоже мне проблема
#4 by SeiOkami
, первое, что в голову пришло. Можно данные текущего открытого документа запихнуть в структуру, а ту уже передать (или поместить во временное хранилище). А в модуле уже сделать ЗаполнитьЗначенияСвойств и провести документ.
#5 by SeiOkami
, потеряются данные введённые пользователем, насколько я понял
#6 by SeiOkami
+ 1. При вызове обработки сохраняются изменения в тек. документе 2. форма документа закрывается 3. происходит выполнение обработки и перепроведение нашего документа 4. открывается форма нашего уже проведенного документа
#7 by Maxus43
подписку обычно делают, и ничо не потеряется
#8 by Maxus43
и где тут "не могу передать ссылку т.к. открыта форма"?
#9 by SeiOkami
, у тебя открыта форма документа. Ты на нём что-то поменял. Нажал кнопку обработки, которая где-то там в модуле по ссылке получила объект нашего документа и провела. А затем данные на форме перечитались. И все наши изменения потеряны
#10 by SeiOkami
, какой-то странный вопрос. Не понял к чему он.
#11 by zzerro
Не понял, как перечитать данные формы?
#12 by Maxus43
я понял, не ты автор то))
#13 by Fedor-1971
Запиши тек.состояние документа перед вызовом формы обработки и передай ей ссылку на текущий документ и всех делов.
#14 by Maxus43
что мешает сохранить документ и уже потом передать ссылку, чтоб "ничего не потерять"?
#15 by Kalambur
"но вот возникает проблема в том, что и текущий документ, из формы которого открыта обработка нужно тоже провести" где логика? проводи сначала потом формируется пакет, а если юзер закроет форму, тогда что?
#16 by zzerro
Важна последовательность проведения документов. И текущий документ из которого формируется пакет не первый в списке. Перед формированием пакета документ конечно записывается, но в обработке у него дополнительные реквизиты заполняются. В общем все равно получается, что объект который в форме и полученный по ссылке могут отличаться.
#17 by zzerro
В общем получается, что т.к. объект не передается на сервер даже через ПоместитьВоВременноеХранилище, придется передавать ссылку и потом открывать форму заново.
#18 by vde69
зачем документ перепроводить? можно тупо движения записать и все...
#19 by zzerro
Ну уж нет, спасибо... делать свою обработку проведения у РТиУ в УПП мне как то не хочется.
#20 by zzerro
К тому же он не перепроводится, а просто проводится, из непроведенного состояния.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С