gifts2017

Отличия в управляемом приложении при создании нового документа без сохранения объекта

Опубликовал Александр Ч (sss123) в раздел Обработки - Обработка документов

В обычном приложении «1С:Предприятие 8», если необходимо создать новый документ и без сохранения открыть его форму, мы просто создавали объект, наполняли его данными и открывали форму объекта. В управляемом приложении «1С:Предприятие 8» есть существенные отличия, которые я попытаюсь описать.

Как было в обычном приложении:

Создали объект, заполнили данными, не сохраняя открыли форму. Все просто.

В управляемом приложении немного сложенее.

Во-первых, обработчик команды метод клиентский, значит, мы не можем создать новый документ.

Во-вторых, архитектура управляемого приложения предполагает другой способ создания нового элемента. А именно:

1. На сервере мы готовим структуру с данными для создания объекта на основании

2. На клиенте создаем форму, передав ей структуру для заполнения.

Выглядит это примерно так:

Тоже не сложно, если бы не несколько проблем.

Самое неприятное, что для каждого вида документов проблемы могут быть разные, все зависит от того как реализовано событие ОбработкаЗаполнения у конкретного документа. Опишу те, с которыми я столкнулся.

При создании документа ОперацияБух все отлично, но не заполняется дата документа. Это связяно с тем, что у стандартного реквизита "Дата" не указано "Заполнять из данных заполнения".

 

Решить проблему можно двумя способами. 

Можно изменить это свойство, но для этого конфигурацию надо снять с поддержки.

Второй способ заключается в том, что в клиентском методе мы заменим вызов процедуры ОткрытьФорму на следующую конструкцию: 

 Собственно, подобным образом решаются и другие проблемы возникающие при создании новых документов.

Например, при создании документа КорректировкаДолга не заполняются табличные части документа.

Решить проблему поможет подобная конструкция: 

В файлах находится обработка, демонстрирующая все вышесказанное на примере конфигураций Бухгалтерия предприятие 2.0 и 3.0.

Обработка является примером создания документов без сохранения нового объекта в управляемом и неуправляемом приложении. 

Скачать файлы

Наименование Файл Версия Размер
ПримерСозданиеОперации.epf 1
.epf 19,74Kb
05.05.16
1
.epf 19,74Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Антонио (Fragster) 05.05.16 18:03
Рекомендую почитать раздел синтакс помощника "Расширение управляемой формы для документа" и методическую информацию по параметрам формы из этого раздела.
2. Алексей Драчков (Bassgood) 05.05.16 22:48
(0) Метод "ОткрытьФорму" и так возвращает открытую форму, поэтому использовать метод "ПолучитьФорму" не имеет смысла, при описанном здесь способе открытия формы происходит два контекстных вызова сервера (каждым из методов), вместо возможного одного.
3. Николай Беляев (freez1301) 06.05.16 16:06
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа