Ввод на основании 1С 8.2

Новая тема
Показывать по 10 20 40 сообщений
Необходимо программно создать документ реализации на основании заказа и заполнить его, т. е. передать данные в соответствующий параметр процедуры "ОбработкаЗаполнения". В данном случае я использую метод документа "Заполнить()" . Все это происходит на сервере.
Но далее мне нужно откоыть это еще НЕЗАПИСАННЫЙ документ на клиенте. Не очень понимаю, как это сделать.
То, что документ не записан - это ключевое условие.
Форму открывайте.
Форму можно открыть на клиенте, а как передать заполненный документ на клиент.
"Код на сервере такой

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

А что дальше делать - не знаю."
Сервер - это общее, Клиент - это частное (которых много). Вы хотите из общего открыть что-то частное?
Все делается наоборот - клиент создает документ, вызывает заполнение (а оно работает на сервере) и "открывает форму"
Данная процедура и вызывается из другой клиентской процедуры, но клиент же документ создать не может, поэтому процедура и происходит на сервере. Если бы документ был записан я бы мог передать на клиент ссылку, но в случае незаписанного дока я не знаю, что нужно передавать.
"Может в 8.2 что-то координально изменилось, а в 8.1 весь ваш код должен бы работать на Клиенте + ФормаРеализации.Отрыть();
И между прочим:
> ФормаРеализации=ДокументРеализация.ПолучитьФорму("Документ.РеализацияТоваровУслуг.ФормаОбъекта");
на сервере выполняться не будет."
Ещё как изменилось. Метод "ПолучитьФорму()" на сервере ошибку не выдает, выполняется. Правда, и толку пока от данного мтода немного.
"Странно: в хелпе написано:
Доступность:
Толстый  клиент.
Ну если выполняется тогда попробуйте написать еще и строчку:
ФормаРеализации.Открыть();"
А вот на метод "Открыть()" ругается, что данный метод не обнаружен. Это я пробовал с самого начала. Пытался еще играться с ДанныеФормыВЗначение() и ЗначениеВДанныеФормы(), но неудачно.
Читают тему
(гостей: 1)

Быстрый переход