Заметки из Зазеркалья

20.04.2018

Развитие механизма расширений конфигурации

Данная статья является анонсом новой функциональности.
Не рекомендуется использовать содержание данной статьи для освоения новой функциональности.
Полное описание новой функциональности будет приведено в документации к соответствующей версии.
Полный список изменений в новой версии приводится в файле v8Update.htm.

Реализовано в версии 8.3.13.1513.

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

Расширение данных для специальных прикладных задач

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

  • Учёт движения средств – регистры накопления;
  • Бухгалтерский учёт – регистры бухгалтерии, планы видов счетов и планы видов характеристик;
  • Расчёт зарплаты – регистры расчета и планы видов расчета.

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

Кроме этого перечисленным собственным регистрам вы можете назначать в качестве регистратора как собственные, так и заимствованные документы.

Для собственных регистров накопления есть одно ограничение - в них не поддерживается механизм агрегатов.

Новые возможности расширения планов обмена

Мы увеличили возможности расширения планов обмена.

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

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

Для изменения состава заимствованного плана обмена у вас есть теперь новые возможности:

  • Вы можете включить в его состав те объекты расширяемой конфигурации, которых в нём ещё нет. Раньше вы могли добавлять в его состав только собственные объекты;
  • Тем объектам, которые есть в его составе, вы можете изменить значение свойства Авторегистрация. Это свойство отвечает за то, каким образом будут регистрироваться изменения данных объекта: автоматически платформой или с помощью алгоритма, написанного разработчиком;
  • Объекты расширяемой конфигурации вы можете проверить на то, входят они в этот план обмена, или нет. Раньше вы могли проверять таким образом только собственные объекты.

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

Предупреждения при удалении расширений с данными

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

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

Теперь мы решили, что кроме этого нужно несколько «усложнить» и сам процесс удаления расширений. Но не всех расширений, а только тех, у которых есть «собственные» данные:

  • В конфигураторе вы не сможете удалить такое расширение, пока оно активно (будет показано предупреждение). Сначала необходимо расширение деактивировать.

001.png

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

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

002.png

Кроме этого во встроенный язык мы добавили проверку того, что расширение влияет на структуры данных (объект РасширениеКонфигурации, метод ИзменяетСтруктуруДанных()).

Рассказать друзьям: