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

05.05.16

Разработка - Механизмы платформы 1С

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
ПримерСозданиеОперации.epf
.epf 19,74Kb
3
3 Скачать (1 SM) Купить за 1 850 руб.

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

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

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

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

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

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

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

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

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

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

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

 

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

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

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

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

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

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

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

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

Управляемое приложение создание нового УФ ОткрытьФорму

См. также

Механизмы платформы 1С Работа с интерфейсом Программист Стажер Платформа 1С v8.3 Бесплатно (free)

Про ООП в 1С и о том, как сделать свой код более кратким и выразительным при помощи использования текучего интерфейса (fluent interface).

03.02.2025    6366    bayselonarrend    126    

59

Механизмы платформы 1С Программист Платформа 1С v8.3 Бесплатно (free)

В платформе 8.3.27 появилась возможность использовать WebSocket-клиент. Давайте посмотрим, как это все устроено и чем оно нам полезно.

14.01.2025    8295    dsdred    60    

104

Механизмы платформы 1С Программист Стажер Платформа 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Эта небольшая статья - некоторого рода шпаргалка по файловым потокам: как и зачем с ними работать, какие преимущества это дает.

23.06.2024    12069    bayselonarrend    21    

162

Механизмы платформы 1С Программист Стажер Платформа 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Пример использования «Сервисов интеграции» без подключения к Шине и без обменов.

13.03.2024    8077    dsdred    18    

82

Механизмы платформы 1С Программист Стажер Платформа 1С v8.3 Бесплатно (free)

Все мы используем массивы в своем коде. Это один из первых объектов, который дают ученикам при прохождении обучения программированию. Но умеем ли мы ими пользоваться? В этой статье я хочу показать все методы массива, а также некоторые фишки в работе с массивами.

24.01.2024    28369    YA_418728146    33    

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