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

05.05.16

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

 

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

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

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

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

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

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

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

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

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

См. также

Поинтегрируем: сервисы интеграции – новый стандарт или просто коннектор?

Обмен между базами 1C Администрирование СУБД Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

В платформе 8.3.17 появился замечательный механизм «Сервисы интеграции». Многие считают, что это просто коннектор 1С:Шины. Так ли это?

11.03.2024    4534    dsdred    53    

72

Как готовить и есть массивы

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

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

24.01.2024    5295    YA_418728146    25    

63

Планы обмена VS История данных

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

Вы все еще регистрируете изменения только на Планах обмена и Регистрах сведений?

11.12.2023    6410    dsdred    36    

112

1С-ная магия

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

Язык программирования 1С содержит много нюансов и особенностей, которые могут приводить к неожиданным для разработчика результатам. Сталкиваясь с ними, программист начинает лучше понимать логику платформы, а значит, быстрее выявлять ошибки и видеть потенциальные узкие места своего кода там, где позже можно было бы ещё долго медитировать с отладчиком в поисках источника проблемы. Мы рассмотрим разные примеры поведения кода 1С. Разберём результаты выполнения и ответим на вопросы «Почему?», «Как же так?» и «Зачем нам это знать?». 

06.10.2023    18475    SeiOkami    46    

118

Дефрагментация и реиндексация после перехода на платформу 8.3.22

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

Начиная с версии платформы 8.3.22 1С снимает стандартные блокировки БД на уровне страниц. Делаем рабочий скрипт, как раньше.

14.09.2023    12088    human_new    27    

74

Валидация JSON через XDTO (включая массивы)

WEB-интеграция Универсальные функции Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

При работе с интеграциями рано или поздно придется столкнуться с получением JSON файлов. И, конечно же, жизнь заставит проверять файлы перед тем, как записывать данные в БД.

28.08.2023    8824    YA_418728146    6    

141

Внешние компоненты Native API на языке Rust - Просто!

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

Внешние компоненты для 1С можно разработывать очень просто, пользуясь всеми преимуществами языка Rust - от безопасности и кроссплатформенности до удобного менеджера библиотек.

20.08.2023    6279    sebekerga    54    

94

Все скопируем и вставим! (Буфер обмена в 1С 8.3.24)

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

Рассмотрим новую возможность 8.3.24 и как её можно эффективно использовать

27.06.2023    15986    SeiOkami    31    

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