Виды программных модулей в системе 1С: Предприятие




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

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

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

На рис. 3.1 показан пример программного модуля. Сразу видно, что в нем описаны процедуры, например, начало описания предопределенной процедуры ПриОткрытии(), также с первого взгляда заметны элементы работы с объектами (обращение к методам через точку). Стоит обратить внимание на закладки внизу окна, при их помощи можно выбирать режим работы с документом; работа с формой, программным модулем формы или таблицами.

Рисунок 3.1 – Пример программного модуля

 

Каждый программный модуль связан с остальной частью конфигурации задачи. Эта связь называется контекстом выполнения модуля. Контекст – это совокупность программных объектов и величин, доступных для использования (иначе говоря, «видимых») при исполнении модуля.

Принято различать два контекста:

- глобальный контекст задачи;

- локальный контекст выполнения конкретного модуля.

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

Глобальный контекст составляют:

- значения системных атрибутов, общесистемные процедуры и функции;

- значения заданных в Конфигураторе констант, перечислений, регистров, видов расчета, групп видов расчета;

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

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

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

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

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

Таблица 3.1 – Виды программных модулей 1С: Предприятие

Наименование модуля Расположение Запуск
Глобальный модуль Метаданные ® Глобальный модуль Запускается при начале работы всей прикладной задачи
Модуль формы списка справочника Метаданные ® Справочник ® Форма списка Запускается при открытии формы списка справочника
Модуль формы группы справочника Метаданные ® Справочник ® Форма группы Запускается при открытии формы группы справочника

Продолжение таблицы 3.1

  Наименование модуля Расположение Запуск
  Модуль формы элемента справочника Метаданные ® Справочник ® Форма Запускается при открытии формы элемента справочника
  Модуль формы документа Метаданные ® Документ ®Форма Запускается при открытии формы документа
  Модуль документа Метаданные ® Документ ® Модуль документа Запускается при проведении документа, при удалении проведенного документа из журнала, при снятии проведения, при выполнении архивации записей журнала расчетов, порожденных этим документом
  Модуль формы журнала документов Метаданные ® Журнал документов ® Форма Запускается при открытии формы журнала документов
Модуль формы журнала расчетов Метаданные ® Журнал расчетов ® Форма Запускается при вызове формы журнала расчетов  
Модуль формы списка счетов (плана счетов) Метаданные ® План счетов Запускается при вызове формы списка счетов  
Модуль формы счета Метаданные ® Планы счетов ® Форма счета Запускается при открытии формы счета  
Модуль формы журнала операций Метаданные ® Журнал операций ® Форма Запускается при вызове формы журнала операций  
Модуль формы операции Метаданные ® Операция Запускается при вызове формы журнала операций  
Модуль формы журнала проводок Метаданные ® Журнал проводок ® Форма Запускается, при вызове формы журнала проводок  
Модуль формы отчета Метаданные ® Отчет ® Форма Запускается при открытии диалоговой формы подготовки отчета  
Модуль формы обработки Метаданные ® Обработка ® Форма Запускается при открытии диалоговой формы обработки  
Модуль вида расчета Метаданные ® Вид расчета ® Модуль вида расчета Запускается при расчете соответствующих записей журнала расчетов  
             

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

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

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




Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-02-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: