Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Виды программных модулей.Выражения и операторы.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
321.02 Кб
Скачать

Лекция №7. Виды программных модулей. Выражения и операторы. Процедуры и функции

  1. Программный модуль.

  2. Виды программных модулей.

  3. Структура программного модуля.

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

  5. Передача локального контекста программного модуля в качестве параметра.

  6. Выражения и операторы.

  7. Процедуры и функции.

  1. Программный модуль

Программный модуль — это «контейнер» для размещения текстов процедур и функций, вызываемых системой во время исполнения задачи в определенные моменты работы, поэтому программный модуль не имеет формальных границ своего описания, например «Начало модуля» — «Конец модуля».

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

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

  1. Виды программных модулей

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

  • Глобальный модуль

  • Модуль Формы списка справочника

  • Модуль Формы группы справочника

  • Модуль Формы элемента справочника

  • Модуль документа

  • Модуль Формы документа

  • Модуль Формы журнала документов

  • Модуль Формы журнала расчетов

  • Модуль Формы списка счетов

  • Модуль Формы счета

  • Модуль Формы журнала операций

  • Модуль Формы операции

  • Модуль Формы журнала проводок

  • Модуль Формы отчета

  • Модуль Формы обработки

  • Модуль вида расчета

  1. Структура программного модуля

Структуру программного модуля можно разделить на следующие разделы:

  • Раздел определения переменных размещается от начала текста модуля до первого оператора Процедура или оператора Функция или любого исполняемого оператора. В этом разделе могут находиться только операторы объявления переменных Перем.

  • Раздел процедур и функций размещается от первого оператора Процедура или оператора Функция до любого исполняемого оператора вне тела описания процедур или функций.

  • Раздел основной программы размещается от первого исполняемого оператора вне тела процедур или функций до конца модуля. В этом разделе могут находиться только исполняемые операторы. Раздел основной программы исполняется в момент запуска модуля на выполнение. Обычно в разделе основной программы имеет смысл размещать операторы инициализации переменных какими-либо конкретными значениями, которые необходимо провести до первого вызова любой из процедур или функций модуля.

В конкретном программном модуле любой из разделов может отсутствовать.

Например

// Определение переменных модуля

перем а; // Объявляем переменную модуля обработки

// Процедуры и функции модуля

процедура Выполнить( ) // Выполнить - имя процедуры

перем б; // Локальная переменная процедуры Выполнить

Сообщить("а = " + а); // Выводим значение переменной а в окно сообщений

б = 4.2; // Определяем значение локальной переменной б

Сообщить("Сумма а и б равна " + (а + б));

конецПроцедуры // Выполнить

// Основная программа модуля

а = 5.1; // Определяем значение переменной модуля

Например

// Процедуры и функции модуля

процедура Выполнить( )

б = 4.2; // Определяем значение локальной переменной б

Сообщить("б = " + б);

конецПроцедуры // Выполнить

// Основная программа модуля

ОчиститьОкноСообщений( ); // Очищаем окно сообщений

а = 5.1; // Определяем значение локальной переменной а

Сообщить("а = " + а);

// Процедура Выполнить будет вызвана из основной программы

Выполнить(); // Конец основной программы

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

Например

функция ВычислитьУ(х) // х - формальный параметр функции ВычислитьУ

у = 2 * Лог(х); // Лог - встроенная функция

// Вернем в выражение, из которого вызывается функция ВычислитьУ, значение у

возврат у;

конецФункции // ВычислитьУ

процедура Выполнить()

б = ВычислитьУ(3.0); // Функция ВычислитьУ вернет 21 Ln(3)

ОчиститьОкноСообщений(); // Очищаем окно сообщений

Сообщить("б = " + б);

конецПроцедуры // Выполнить