Довідковий матеріал

Використання модуля об'єкта, модуля менеджера об'єкта та спільних модулів

1. Модуль об'єкта призначений для реалізації поведінки окремого екземпляра об'єкта (СправочникОбъект, ДокументОбъект тощо). У модулі об'єкта розміщуються процедури та функції, які працюють із даними об'єкта (ЭтотОбъект і змінні модуля об'єкта), зокрема коли його ще не записано до інформаційної бази.

Методична рекомендація (корисна порада)

1. Модуль об'єкта призначений для реалізації поведінки окремого екземпляра об'єкта (СправочникОбъект, ДокументОбъект тощо). У модулі об'єкта розміщуються процедури та функції, які працюють із даними об'єкта (ЭтотОбъект і змінні модуля об'єкта), зокрема коли його ще не записано до інформаційної бази.

Наприклад, у модулі об'єкта можуть розміщуватися:

  • обробники подій об'єкта
  • процедури заповнення екземпляра об'єкта.

Слід мати на увазі, що для виклику експортних процедур і функцій модуля об'єкта з інших модулів може знадобитися попередньо отримати сам екземпляр об'єкта з інформаційної бази за допомогою методу ПолучитьОбъект. При цьому відбувається завантаження об'єкта з бази повністю, разом із його табличними частинами, що є досить ресурсомістким.

Див. також: Читання окремих реквізитів об'єкта з бази даних

2. Модуль менеджера об'єкта призначений для розміщення «статичної» функціональності, яка логічно нерозривно пов'язана з об'єктом метаданих, але не залежить від стану конкретного екземпляра об'єкта даних. Це можуть бути процедури та функції:

  • які належать не до одного, а одразу до деякої сукупності об'єктів. Наприклад, це функції для виведення на друк списку об'єктів; функції, що повертають інформацію, спільну для всіх екземплярів об'єкта метаданих; процедури оновлення даних інформаційної бази, які пов'язані з об'єктом метаданих; тощо.
  • які працюють з об'єктом, записаним в ІБ. У таких функціях вхідним параметром є посилання на об'єкт. Наприклад, це функції для отримання друкованої форми за посиланням на об'єкт, процедури формування рухів за посиланням на об'єкт тощо.

Для виконання функцій модуля менеджера об'єкта не повинен бути потрібний екземпляр об'єкта даних (СправочникОбъект, ДокументОбъект тощо).

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

Записатися телефоном