Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы1С_ч1.docx
Скачиваний:
46
Добавлен:
25.11.2019
Размер:
143.51 Кб
Скачать
  1. Глобальный модуль. Расположение и назначение глобального модуля и общих таблиц. Глобальные переменные, способы их определения и использования. Глобальный модуль

  • Расположение и назначение глобального модуля и общих таблиц

  • Глобальные переменные, способы их определения и использования

Расположение и назначение глобального модуля и общих таблиц

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

Функция глРасчетАмортизацииОС(ОС, ДатаРасчета, РассчитыватьДанныеПоНалоговомуУчету = 1) Экспорт

Глобальный модуль (а также общие таблицы) доступны в «Конфигураторе» в окне «Конфигурация». Для его открытия нужно выбрать пункт «Глобальный модуль» меню «Действия».

Глобальные переменные, способы их определения и использования

У любого модуля существуют так называемые глобальные переменные. Глобальные переменные модуля — это переменные, объявленные до объявления процедур и функций этого модуля. Глобальной переменной системы становится любая глобальная переменная глобального модуля, объявленная с ключевым словом «Экспорт». Пример:

Перем глТаблицаСчетов Экспорт;

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

  1. Операторы и выражения во встроенном языке системы 1с:Предприятие 8.0

Операторы и выражения

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

Арифметические операции:

  1. Сложение. Операция определена для числовых значений, а также для операндов типа «Дата» в следующем сочетании: «Дата»+Число (Число интерпретируется как количество дней).

  2. Вычитание. Операция определена для числовых значений, а также для операндов типа «Дата» в следующих сочетаниях:

  • «Дата» - Число

  • «Дата» - «Дата» (результат - количество дней)

  1. Умножение. Операция определена только для числовых выражений.

  2. Деление (для числовых значений)

  3. Деление по модулю (остаток от целочисленного деления - %) – для числовых значений, если операнды являются дробными, то они предварительно округляются.

Например, вес = нетто % штуки. Если нетто=15 штуки=2, то вес=1.

Логические операции. (результат булево значение)

  1. Сравнение. Определены только для однотипных операндов, причем для агрегатных типов данных лишь 2 из них: «=», «неравно».

Например, Справочник1.Код >Справочник2.Код

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

Например, (Кредит<0) или (Остаток=0)

  1. Строковые операции – для строкового типа и констант. В языке имеется единственное «чисто» строковая операция – объединение строк (конкатенация). Знак «+».

Например. «Отчет» + «за указанный период», результат: «Отчет за указанный период».

Если один из операндов является строкой, а второй нет, то он преобразовывается в строку.

Сравнение строк производится посимвольно: если код очередного символа первой строки больше, то она считается больше независимо от длины строки. И лишь при совпадении первых символов строк больше считается та, которая длиннее.

Операторы.

Все операторы делятся на следующие группы:

  1. Операторы объявления переменной

  2. Операторы присваивания

  3. Управляющие операторы (оператор условного выполнения, операторы цикла, операторы перехода(перейти), операторы обработки исключительной ситуации(попытка))

  4. Операторы описания процедуры/функции

  5. Операторы вызова процедуры/функции

  6. Операторы вызова метода объекта

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

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

Контекстом выполнения называется совокупность всех доступных при выполнении переменных, объектов, процедур, функций и методов.

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

Глобальный контекст — это контекст, доступный всем процедурам и функциям системы. Он образуется множеством глобальных переменных, процедур и функций, а также рядом объектов и методов конфигурации (например, «Перечисление», «ПланыСчетов», «РазделительСтрок», «НачалоПериодаБИ» и т.д.)

Локальный контекст — множество переменных, объектов, процедур, функций и методов, доступных в дополнению к глобальному контексту в данном модуле всем процедурам и функциям данного модуля.

Любая процедура или функция глобального модуля может стать частью глобального контекста, если в ее определении будет ключевое слово «Экспорт». Если это слово опущено, то процедура глобального модуля будет являться только частью локального контекста глобального модуля и будет доступна только процедурам и функциям глобального модуля.

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

// Глобальный модуль Процедура глЗаполнитьНаименование (Конт) Экспорт Конт.Наименование = "Наименование из глобального модуля"; КонецПроцедуры // Модуль формы элемента какого-либо справочника // В диалоге справочника имеется поле "Наименование" // Произведем вызов процедуры глобального модуля // глЗаполнитьНаименование, передав ей контекст // нашего модуля. Используя этот контекст процедура // сможет получить доступ к полю "Наименование" глЗаполнитьНаименование (Контекст);

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