5 Программные модули
Программный модуль представляет собой текст на встроенном языке 1С:Предприятия 8.0, расположенный в определенном месте конфигурации.
В соответствии с этим различают следующие виды программных модулей:
Общие модули
Общие модули принадлежат всей конфигурации в целом, но в отличие от модуля приложения их может быть несколько, например, модули РасчетНалогов, ОбработкаДокументов. Общие модули не могут содержать объявлений переменных, и в них нет раздела основной программы, таким образом, они состоят только из процедур и функций.
Модуль приложения
Это модуль, который относится ко всей конфигурации в целом и может быть только один. Модуль приложения является аналогом глобального модуля в версии 7.7. Он отве-
чает за пользовательскую сессию (сеанс) работы с 1С:Предприятием 8.0.
Модуль внешнего соединения
Если конфигурация запускается не в режиме клиентской сессии, а через СОМ-соединение, то вместо модуля приложения используется модуль внешнего соединения, который в конфигурации может быть только один.
Модули прикладных объектов
У некоторых прикладных объектов конфигурации могут быть собственные модули, например, модуль документа РасходнаяНакладная, модуль справочника Номенклатура. Не следует их путать с модулями форм этих объектов.
Модули форм
У каждой формы есть модуль, в котором определяется поведение формы и действия, выполняемые из нее, например, открытие других форм.
Разделы программного модуля
Любой программный модуль, за исключением общих модулей, состоит из следующих разделов:
• раздел объявления переменных,
• раздел процедур и функций,
• раздел основной программы.
Внимание! У общих модулей есть только раздел процедур и
функций.
В разделе объявления переменных определяются локальные переменные модуля и экспортируемые переменные, которые объявляются с ключевым словом Экспорт, например:
//экспортируемые переменные
Перем НачДата Экспорт;
Перем КонДата Экспорт;
Перем мПериодСтрокой; //локальная переменная модуля
//далее идут процедуры и функции
//а затем раздел основной программы
Раздел процедур и функций содержит тела процедур и функций, написанных разработчиком вручную или сформированных конструктором. Некоторые процедуры и функции могут быть объявлены с ключевым словом Экспорт, тогда они дополняют контекст объекта и становятся видимыми вне объекта.
Например, ниже приведен модуль документа:
Перем НачДата Экспорт;
Перем КонДата Экспорт;
Перем мПериодСтрокой;
Процедура Печать(ТабДок=Неопределено) Экспорт
//эта процедура будет доступна как метод объекта ДокументОбъект
КонецПроцедуры
Функция ПолучитьГруппировку(РезультатЗапроса, ИмяГруппировки)
//это локальная процедура модуля
КонецФункции
Процедуры и функции рекомендуется отделять комментарием с разделителем. В виде комментариев рекомендуется указывать назначение процедуры или функции, параметры и возвращаемое значение для функций.
В самом конце модуля, после всех процедур или функций, следует раздел основной программы, состоящий из выполняемых операторов. Эти операторы будут исполнены при инициализации модуля, например, для модуля справочника — при создании объекта типа СправочникОбъект, для модуля формы — при создании объекта Форма. Обычно в этом блоке операторов производится инициализация переменных модуля и заполнение полей начальными значениями.
Контекст
Контекст — очень важное понятие при программировании на любом языке. В 1С:Предприятии 8.0 контекст обозначает окружение модуля, т.е. какие ему будут доступны переменные, объекты, свойства, методы и события.
Можно выделить следующие виды контекстов, существующих в 1С:Предприятии 8.0:
Глобальный контекст, доступный во всех остальных контекстах, состоит из следующих частей:
• свойства, методы и события глобального контекста (например, свойство РабочаяДата),
• системные перечисления и системные наборы значений (например, КодВозвратаДиалога и Символы).
В контексте модуля приложения (или модуля внешнего соединения) доступны экспортируемые переменные, процедуры и функции общих модулей.
В контексте общего модуля доступны экспортируемые процедуры и функции других общих модулей. В этом контексте недоступны экспортируемые переменные, процедуры и функции модуля приложения.
В контексте модуля прикладного объекта есть доступ к реквизитам и табличным частям объекта, а также его методам и событиям. Например, в модуле документа РасходнаяНакладная доступны реквизиты документа и его табличные части, можно вызывать методы документа и обрабатывать события.
В контексте модуля формы доступны реквизиты формы, а также ее свойства, методы и события. Если у формы назначен основной реквизит, то в модуле формы становятся доступны свойства и методы прикладного объекта, используемого в качестве основного реквизита.
Необходимо помнить правила видимости экспортируемых переменных, процедур и функций различных модулей:
• В общем модуле недоступны экспортируемые переменные, процедуры и функции модуля приложения (модуля внешнего соединения).
• В модуле приложения (модуле внешнего соединения) доступны экспортируемые процедуры и функции общих модулей
• В общих модулях доступны экспортируемые процедуры и функции других общих модулей
• В модулях прикладных объектов и модулях форм доступны экспортируемые переменные, процедуры и функции модуля приложения (модуля внешнего соединения), а также экспортируемые процедуры и функции общих модулей.
• Если у формы назначен основной реквизит, то контекст модуля формы содержит дополнительные свойства и методы, связанные с основным реквизитом Например, в модуле формы элемента справочника Номенклатура доступны свойства и методы объекта «СправочникОбъект.Номенклатура».
Контекст может быть дополнен новыми свойствами и методами. Это происходит, если вы объявляете переменную, процедуру или функцию Если она объявлена с ключевым словом Экспорт, тогда она становится видна вне объекта, иначе она будет доступна только внутри этого модуля
- Методические указания
- 1 Основные виды объектов конфигурации
- 2 Свойства объектов конфигурации
- 3 Краткое описание объектов конфигурации
- 4 Технологические средства конфигурирования и администрирования системы
- 1С: Предприятие
- 5 Программные модули
- 6 Планы счетов и регистры бухгалтерии
- 5 Демонстрационный пример
- 1. Создание справочников и регистров
- 2. Создание документов
- 3. Создание отчетов
- 4. Создание интерфейса
- 5. Проверка работоспособности
- Индивидуальные задания к курсовому проектированию
- 1. Разработать План счетов:
- 2. Создать Журнал проводок:
- Методические указания