Типовой функционал модификации конфигурации линейки ERP-решений (УТ 11, КА 2 и ERP 2)

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

Особенно сложно вносить «независимые» от обновлений модификации в формы объектов конфигурации.

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

В линейку конфигураций ERP-решений входят:

·      1С: Управление торговлей 11 (УТ 11),

·      1С: Комплексная автоматизация 2 (КА 2),

·      1С: ERP Управление предприятием 2 (ERP 2).

В этот функционал входит блок общих модулей:

  • МодификацияКонфигурацииВызовСервераПереопределяемый
  • МодификацияКонфигурацииКлиентПереопределяемый
  • МодификацияКонфигурацииКлиентСерверПереопределяемый
  • МодификацияКонфигурацииПереопределяемый

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

В этих модулях находятся переопределяемые процедуры, вызываемые из обработчиков форм, таких как:

  • «ПриСозданииНаСервере»,
  • «ПриЧтенииНаСервере»,
  • «ПередЗаписьюНаСервере»,
  • «ПослеЗаписиНаСервере»,
  • «ПослеЗаписи»,
  • при изменении реквизитов табличной части, таких как «Номенклатура» и «Характеристика»,
  • при выборе команды, которая добавлена программно,
  • а также события по подсистеме «Рассылки и оповещения клиентам».

В модулях форм объектов разработчики 1С вставили следующий код для поддержки функционала модификации конфигурации:

  • В процедуре «ПриСозданииНаСервере»

МодификацияКонфигурацииПереопределяемый.ПриСозданииНаСервере(ЭтаФорма, СтандартнаяОбработка, Отказ);

  • В процедуре «ПриЧтенииНаСервере»

МодификацияКонфигурацииПереопределяемый.ПриЧтенииНаСервере(ЭтаФорма, ТекущийОбъект);

  • В процедуре «ПередЗаписьюНаСервере»

МодификацияКонфигурацииПереопределяемый.ПередЗаписьюНаСервере(ЭтаФорма, Отказ, ТекущийОбъект, ПараметрыЗаписи);

  • В процедуре «ПослеЗаписиНаСервере»

МодификацияКонфигурацииПереопределяемый.ПослеЗаписиНаСервере(ЭтаФорма, ТекущийОбъект, ПараметрыЗаписи);

  • В процедуре «ПослеЗаписи»

МодификацияКонфигурацииКлиентПереопределяемый.ПослеЗаписи(ЭтаФорма, ПараметрыЗаписи);

В процедурах «ПриСозданииНаСервере»  и  «ПриЧтенииНаСервере» может быть вызов процедур функционала модификации не «напрямую», а через процедуры общего модуля «СобытияФорм»:

  • СобытияФорм.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка);
  • СобытияФорм.ПриЧтенииНаСервере(Форма, ТекущийОбъект);

в которых прописан вызов соответствующих процедур функционала модификации конфигураций.

 В процедуре «ВыполнитьПереопределяемуюКоманду» в общем модуле «СобытияФормКлиент» расположен вызов процедуры:

МодификацияКонфигурацииКлиентПереопределяемый.ВыполнитьПереопределяемуюКоманду(Форма, Команда, ДополнительныеПараметры);

 

Программный код модификации конфигурации прописывается в соответствующих процедурах обработки событий, описанных выше.

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

Если Форма.ИмяФормы = «Справочник.Номенклатура.Форма.ФормаЭлемента»

и для команды:

Если Команда.Имя= «ПРОСТО_Команда» Тогда

Подробное описание «программного» изменения формы – это тема для отдельной статьи.

Кратко опишу возможные изменения форм объектов с использованием функционала модификации конфигурации:

  1. Изменение свойств типовых элементов формы.
  2. Вывод на форме новых элементов по данным объекта (реквизитов и табличных частей, добавленных в типовую конфигурацию).
  3. Добавление новых реквизитов формы.
  4. Добавление обработчиков событий для новых элементов формы.
  5. Добавление и переопределение обработчиков событий типовых элементов формы.
  6. Замена на форме типовых элементов на «свои».
  7. Добавление и переопределение обработчиков событий самой формы.

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

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

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

Т.е. все добавленные процедуры и функции будут находиться в одной области и при обновлении релиза конфигурации их будет легко перенести.

Ограничения использования этого функционала:

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

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

Comments

So empty here ... leave a comment!

Добавить комментарий

Sidebar