Внутрішній устрій версіонірованія об'єктів УПП 1

призначення

У типовій конфігурації "Управління виробничим підприємством" версії 1.3 є функціонал версіонірованія об'єктів, що дозволяє відслідковувати зміну довідників і документів в часі. Зміни відслідковуються як для реквізитів, так і для табличних частин.

Внутрішній устрій версіонірованія об'єктів УПП 1

Як ми бачимо, в двох версіях документа відрізняються тільки дата. Далі внутрішній устрій універсального механізму версіонірованія об'єктів.

Внутрішній пристрій

Виконаємо короткий опис механізми версіонірованія. Розглянуті об'єкти входять до підсистеми "Версіонування об'єктів".

Внутрішній устрій версіонірованія об'єктів УПП 1

Почнемо з налаштувань і закінчимо таблицой зберігання версій.

Всі настройки виконуються за допомогою наступних об'єктів:

  1. Константа "Використовувати Версіонування об'єктів"
  2. Реєстр. відомостей "Налаштування версіонірованія об'єктів"
  3. Перерахування "Варіанти версіонірованія об'єктів"

Константа має логічний тип. Якщо вона відключена, то незалежно від налаштувань версіонірованія для окремих об'єктів - Версіонування не виконуватиметься. У регістрі відомостей "Налаштування версіонірованія об'єктів" виконується настройка для окремих видів довідників і документів. Є три види настройки для версіонірованія для об'єкта, задані в відповідному перерахування. Для довідників варіант "Версіоніровать при проведенні" не доступний.

Внутрішній устрій версіонірованія об'єктів УПП 1

Вимірювання "Тип об'єкта" має строковий тип, в якому зберігається ім'я об'єкта метаданих, для якого встановлюється варіант версіонірованія.

У режимі 1С: Підприємство настройки версіонірованія об'єктів включаються через форми редагування налаштувань програми:

Внутрішній устрій версіонірованія об'єктів УПП 1

Натиснувши на кнопку "Налаштування версіонірованія об'єктів" ви потрапите в форму редагування регістра відомостей для установки параметрів для кожного окремого об'єкта:

Внутрішній устрій версіонірованія об'єктів УПП 1

Всі вищеописані об'єкти і складають основу для настройки версіонірованія об'єктів в УПП 1.3. Розглянемо як ці настройки використовуються в подальшому.

Використання налаштувань

Надалі під час запису довідників і документів виконується перевірка включення версіонірованія для записуваного об'єкта. У разі, якщо Версіонування включено, то виконується збереження версії в регістрі "Версії об'єктів". В рамках цієї статті ми не будемо розглядати зберігання версій об'єктів в базі. Це питання буде розглянуто в наступній статті.

Зараз звернемо увагу на підписку на події "ВерсіонірованіеОб'ектов_ПріЗапісіОб'екта". Подія підписки виконується для будь-яких об'єктів довідників і документів. Оброблювач підписки містить наступний алгоритм:

Нас цікавить лише функція "Об'ектВерсіоніруется", яка визначає необхідність запису версії для записуваного об'єкта. Ось лістинг цієї функції:

Спочатку перевіряється чи включена константа використання версіонірованія об'єктів. Після цього отримуємо варіант версіонірованія для поточного об'єкта, який ми налаштовували в регістрі відомостей "Налаштування версіонірованія об'єктів". Лістинг цієї функції:

замість висновку

Вище ми розглянули внутрішній устрій налаштувань версіонірованія об'єктів в конфігурації "Управління виробничим підприємством" версії 1.3. У наступній статті ми детально розглянемо спосіб зберігання версій об'єктів в базі даних, а також роботу з ними.

Схожі статті