Перевод обработок на управляемые формы

Содержание

Перевод конфигураций на версию 8.2 с частичным использованием управляемого приложения, на примере УПП 1.3

Введение

В документе приведена типовая последовательность действий, которые нужно выполнить, чтобы перевести существующую конфигурацию на версию 8.2 с частичным использованием управляемого приложения. Данная методика составлена на основе опыта частичного перевода конфигурации «Управление производственным предприятием» на управляемое приложение. Методика содержит только перечень решаемых задач. Описание используемых механизмов версии 8.2 приведено в документации.

Этап 0. Подготовка конфигурации

Прежде всего, следует адаптировать конфигурацию 1С:Предприятия 8.1 к работе на платформе 8.2 без использования режима совместимости с 8.1. Методика перевода подробно описывается в рубрике «Адаптация конфигураций 1С:Предприятия 8.1 к работе на платформе 1С:Предприятие 8.2 без режима совместимости с версией 8.1«.

После этого необходимо определить список тех возможностей платформы версии 8.2, которые будут использоваться в новом прикладном решении.

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

Здесь возможны следующие варианты:

Этап 1. Выполнение общих настроек

На данном этапе разработчику необходимо:

1. Определить роли и сценарии работы пользователей (рабочие места):

2. В процессе настройки прав доступа может потребоваться либо создать новые роли, либо уточнить доступ существующих ролей к объектам в целом. Для ролей следует настроить права доступа к реквизитам объектов метаданных. Для этого необходимо определить состав реквизитов объекта, с которыми пользователь должен работать:

4. Создать функциональные опции в необходимом количестве, настроить их состав, (если надо) учесть в программном коде. Для этого и необходимо определить функциональность (реализованную в управляемом приложении), доступностью которой можно управлять при внедрении (эксплуатации). Функциональных опций не должно быть слишком много.

5. Установить управляемый режим блокировок.

6. Для регистров накопления и бухгалтерии установить (проверить, что установлены) признаки разделения итогов.

7. Настроить агрегаты для соответствующих регистров накопления.

8. Рассмотреть целесообразность работы с часовыми поясами.

Этап 2. Настройка интерфейсных свойств объектов конфигурации

На данном этапе перехода разработчик может выполнить следующие действия:

Этап 3. Создание и настройка управляемых форм, отчетов

На данном этапе разработчик создает управляемые формы для объектов. При этом необходимо обеспечить работу управляемых форм и в веб-клиенте.

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

Там, где необходимо, следует настроить условное оформление.

Для справочников и других объектов следует настроить динамические списки. При настройке условного оформления для динамического списка следует учитывать особенности, возникающие у пользователей с разными наборами прав доступа к объектам.

На данном этапе следует создать новые отчеты и при необходимости адаптировать существующие. Наиболее эффективно создавать и адаптировать отчеты с помощью системы компоновки данных.

Этап 4. Настройка командного интерфейса

На этапе настройки командного интерфейса разработчик устанавливает порядок и видимость команд, добавляет свои команды, если необходимо. Для тех объектов, которые предполагается использовать в управляемом приложении, необходимо установить свойство «Использовать стандартные команды». Для соответствующих ролей выполняется настройка рабочего стола.

Этап 5. Внесение изменений в программный код

Одновременно с выполнением приведенных действий, разработчик вносит изменения в программный код. Следует определить состав общих модулей, выработать порядок их наименования. При необходимости следует провести реструктуризацию общих модулей.

Следует учитывать следующие особенности:

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

Заполнение реквизитов нового объекта

В платформе 1С:Предприятие 8.2 логика заполнения реквизитов объекта должна располагаться в конкретном месте – в модуле объекта в процедуре ОбработкаЗаполнения().

Платформа 1С:Предприятие 8.1 ведет себя иначе: при вводе нового объекта не «на основании» процедура модуля документа ОбработкаЗаполнения() не вызывается.

Поэтому логика заполнения реквизитов нового объекта может быть расположена в разных местах, например так:

Поэтому, при переводе конфигурации на версию 8.2 необходимо проанализировать, не следует ли перенести логику заполнения реквизитов нового объекта из модуля формы (процедур ПриОткрытии, ПередОткрытием) в модуль объекта (процедура ОбработкаЗаполнения()).

При этом следует учитывать, что ОбработкаЗаполнения() не вызывается при копировании объекта.

Проверка заполнения реквизитов

Следует использовать средства автоматической проверки заполнения реквизитов, предоставляемые платформой 1С:Предприятие 8.2.

При этом следует учитывать следующее:

В платформе версии 8.2 реализована возможность предотвращать ввод некорректных данных, используя свойство Параметры выбора. Поэтому, некоторые проверки ввода, реализованные программно в версии 8.1, в управляемых формах создавать не надо. В это же время, свойство Параметры выбора не влияют на поведение обычной формы,и поэтому при переходе с версии 8.1 на версию 8.2 в обычных формах такие проверки должны остаться.

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

Универсальные механизмы в конфигурации

По каждому используемому механизму следует принять решение:

Этап 6. Прочее

При переходе на версию 8.2 следует конвертировать используемые картинки в формат «png».

Источник

Как создать внешнюю обработку в 1С 8.3 (управляемые формы)

Рассмотрим в данной статье пошаговую инструкцию по созданию внешней обработки в 1С 8.3 в режиме управляемого приложения, соответственно, будем использовать управляемые формы. А самое главное — мы научимся подключать её к механизму «внешних обработок» конфигураций 1С, построенных на библиотеке стандартных подсистем версии 2.0 и новее.

Задача будет следующая: создать простейшую внешнюю обработку, которая будет выполнять групповое действие над справочником «Номенклатура», а именно, устанавливать выбранный процент ставки НДС для указанной группы номенклатуры.

Включение механизма внешних обработок в программе

Для этого сразу произведем необходимую настройку в программе (рассматривается конфигурация 1С 8.3: «Бухгалтерия предприятия 3.0» на управляемых формах).

Заходим в меню «Администрирование» и по ссылке «Печатные формы, отчеты и обработки» переходим в настройки. Здесь нужно установить флажок «Дополнительные отчеты и обработки»:

Установка данного флажка дает нам возможность использовать внешние обработки.

Создание новой внешней обработки в 1С 8.3 на примере

Теперь переходим в конфигуратор. В меню «Файл» выбираем «Новый…». Откроется окно выбора вида создаваемого файла. Выбираем «Внешняя обработка»:

Откроется окно новой внешней обработки. Сразу зададим ей имя. Оно будет предложено при сохранении обработки на диск:

Добавим новую управляемую форму обработки. Указываем, что это форма обработки и она является основной:

На форме у нас будет два реквизита:

Создаем реквизиты в колонке «Реквизит» в верхнем правом окне. Перетаскиваем мышкой их в левое верхнее окно. Новые реквизиты должны сразу отобразиться на форме внизу.

Очередность реквизитов можно менять стрелками «Вверх» – «Вниз»:

Осталось добавить кнопку «Установить». В управляемых формах нельзя просто так добавить кнопку на форму. Даже если добавить её в структуру элементов формы, на самой форме её видно не будет. Кнопку обязательно нужно связать с командой, которую она будет выполнять. Переходим к закладке «Команды» и добавляем команду «УстановитьСтавкуНДС». В свойствах команды создаем действие. Обработчик команды выбираем «На клиенте». Команду можно добавить на форму также простым «перетаскиванием» в раздел с элементами формы.

В модуле формы будет создана одноименная процедура. В ней вызовем процедуру на сервере:

В процедуре на сервере напишем небольшой запрос и действия, связанные с установкой ставки НДС:

Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| Номенклатура.Ссылка
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
|ГДЕ
| Номенклатура.Ссылка В ИЕРАРХИИ (&ГруппаНоменклатуры)
| И НЕ Номенклатура.ПометкаУдаления
| И НЕ Номенклатура.ЭтоГруппа»;

Запрос.УстановитьПараметр(«ГруппаНоменклатуры», ГруппаНоменклатуры);
РезЗапроса = Запрос.Выполнить();
ВыбДетЗаписи = РезЗапроса.Выбрать();

Пока ВыбДетЗаписи.Следующий() Цикл

СпрНомОбъект = ВыбДетЗаписи.Ссылка.ПолучитьОбъект();
СпрНомОбъект.СтавкаНДС = ВыбСтавкаНДС;

Попытка
СпрНомОбъект.Записать();
Исключение
Сообщить(«Ошибка записи объекта «»» + СпрНомОбъект + «»»!
|» + ОписаниеОшибки());
КонецПопытки;

Возвращаемся на закладку «Форма», добавляем на форму кнопку и связываем ее с командой:

Как таковая наша обработка готова к использованию. Чтобы ее вызвать, в режиме «1С Предприятия» нужно зайти в меню «Файл» – «Открыть» и выбрать созданный файл.

Однако работа в таком режиме удобна для отладки обработки, а для работы пользователю не совсем подходит. Пользователи привыкли, чтобы у них все было «под рукой», то есть в самой базе данных.

Для этого и служит раздел «Дополнительные отчеты и обработки».

Но чтобы добавить туда нашу обработку, нужно сначала дать ей описание и сообщить программе ее свойства.

Описание функции «Сведения О Внешней Обработке»

Приведу пример содержимого данной функции. Она должна быть экспортной и, соответственно, располагаться в модуле обработки:

Функция СведенияОВнешнейОбработке() Экспорт

ДанныеДляРег = Новый Структура();
ДанныеДляРег.Вставить(«Наименование», «Установка ставки НДС»);
ДанныеДляРег.Вставить(«БезопасныйРежим», Истина);
ДанныеДляРег.Вставить(«Версия», «ver.: 1.001»);
ДанныеДляРег.Вставить(«Информация», «Обработка для установки ставки НДС в справочнике Номенклатура»);
ДанныеДляРег.Вставить(«Вид», «ДополнительнаяОбработка»);

ТабЗнКоманды = Новый ТаблицаЗначений;
ТабЗнКоманды.Колонки.Добавить(«Идентификатор»);
ТабЗнКоманды.Колонки.Добавить(«Использование»);
ТабЗнКоманды.Колонки.Добавить(«Представление»);

НовСтрока = ТабЗнКоманды.Добавить();
НовСтрока.Идентификатор = «ОткрытьОбработку»;
НовСтрока.Использование = «ОткрытиеФормы»;
НовСтрока.Представление = «Открыть обработку»;
ДанныеДляРег.Вставить(«Команды», ТабЗнКоманды);

Чтобы лучше понять, какие поля структуры регистрационных данных нужно использовать, посмотрим реквизиты справочника «Дополнительные отчеты и обработки»:

Как видим, все довольно просто. Не совпадает лишь один реквизит: «ВариантЗапуска» – «Использование». Если посмотреть код одного из общих модулей, то мы увидим, как возникает связка этих полей:

Чтобы определить, какие поля структуры обязательны, можно сначала не описывать ее, просто создать пустую, а далее воспользоваться отладчиком. Если трассировать модули при регистрации обработки, сразу становится ясно, какие поля требуются, а какие нет.

Подключение внешней обработки в 1С 8.3

Перейдем теперь в режим «1С Предприятия» и добавим внешнюю обработку:

После записи обработки в справочник нажатием кнопки «Выполнить» она открывается на выполнение. Здесь же можно указать, в каких разделах (подсистемах) программы будет отображаться данная обработка и для каких пользователей.

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Источник

Программирование в 1С для всех

При выполнении различных задач, может возникать ситуация, когда нужно в управляемом приложении 1С открыть обычную форму. Реализуется эта возможность достаточно просто: нужно изменить один параметр конфигуратора 1С и одно свойство конфигурации. Разберем по подробнее.

Для того, чтобы имелась принципиальная иметь дело с обычными формами, в конфигураторе этой базы нам необходим параметр конфигуратора «Редактирование конфигурации для режимов запуска». Для этого параметра необходимо установить переключатель «Управляемое приложение и обычное приложение».

Путь к параметрам конфигуратора 1C: Главное меню –Сервис – Параметры

Сам параметр находится на закладке «Общие»

Семь полезных параметров конфигуратора 1С

После установки этого параметра в палитре свойств Вашей конфигурации будет виден флаг «Использовать обычные формы в управляемом приложении». Его нужно установить.

После сохранения конфигурации, у Вас будет возможность в управляемом приложении открыть любую обычную форму.

Обратите внимание! Открывать обычную форму можно только в режиме толстого клиента, в других режимах (тонкий клиент или веб-клиент) обычные формы открывать нельзя!

После изменения конфигурации при создании любой формы у Вас появится возможность выбрать: сделать эту форму обычной или управляемой. В конструкторе формы появится свойство «Тип формы», где можно выбрать, какая это будет форма Управляемая или Обычная.

В своей учебной конфигурации я сделал форму документа обычной

Причем сделал её основной формой документа

Если сейчас в 1С: Предприятии, которое запущенно в толстом клиенте, мы создадим новый документ, то открывается обычная форма.

При запуске 1С: Предприятия в тонком клиенте, откроется управляемая форма документа (сгенерируется автоматически). Это не смотря на то, что основная форма документа обычная.

Открытие управляемом формы с передачей параметров

Открытие управляемой формы существующего объекта

Открытие управляемой формы на основании другого объекта

Очень подробно вопросы по работе с управляемыми формами в частности и с управляемым приложением в целом рассмотрены в книге «Основы разработки в 1С: Такси. Разработка управляемого приложения за 12 шагов». Эта книга станет настоящим подспорьем для тех, кто только начал знакомится с разработкой управляемого приложения.

Книга «Основы разработки в 1С: Такси» отлично подойдёт тем, кто уже начал программировать и испытывает определенные сложности с этой темой и тем, кто уже давно программирует, но ни разу еще не работал с управляемыми формами 1С

Промо-код на скидку в 15% — 48PVXHeYu

Многие начинающие думают, что изучить язык программирование в 1С сложно и трудно. В действительности программировать в 1С — легко. Помогут Вам легко и быстро освоить программирование в 1С мои книги: «Программировать в 1С за 9 шагов» и «Основы разработки в 1С: Такси»

Изучите программирование в 1С с помощью моей книги «Программировать в 1С за 9 шагов»

Промо-код на скидку в 16%: vCph8bW3rE


Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:

можно оплатить вручную:

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Вступайте в мои группы в соцсетях, и будьте в курсе всех новостей

Источник

Оцените статью
( Пока оценок нет )
Поделиться с друзьями
Uchenik.top - научные работы и подготовка
0 0 голоса
Article Rating
Подписаться
Уведомить о
guest
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии