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

Что такое программный модуль?

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

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

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

Контекст выполнения программного модуля

Каждый программный модуль связан с остальной частью конфигурации задачи. Эта связь называется контекстом выполнения модуля. Следует различать два вида контекста:

  • глобальный контекст задачи;
  • локальный контекст выполнения конкретного модуля.

Глобальный контекст образуется:

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

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

Локальный контекст модуля образуется тем конкретным местом конфигурации задачи, для которого использован программный модуль. Локальный контекст виден только конкретному программному модулю и определяет для модуля набор непосредственно доступных модулю значений агрегатных типов данных, их атрибутов и методов (см. "Виды программных модулей"). Однако, контекст модуля можно передать как объект в виде параметра при вызове процедур и функций (см. "Передача локального контекста программного модуля в качестве параметра"). Кроме того, контекст модуля определяет тот набор методов, которые доступны только в данном контексте (см. "Атрибуты и методы контекста Модуля формы", "Методы контекста Модуля формы элемента справочника" и т. п.). Локальный контекст предназначен для того, чтобы дать возможность управлять частными аспектами поведения задачи, присущими данному модулю.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.