Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Автоматизация документооборота на предприятии.docx
Скачиваний:
2
Добавлен:
15.08.2019
Размер:
95.86 Кб
Скачать

Предварительное описание процедур и функций

В тексте программного модуля допускается предварительное описание про­цедур и функций без их определения.

Пример:

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

Процедура А(Парам1, Парам2) Далее

Процедура Б()

Перем АА, ББ;

...

А(АА, ББ);

...

КонецПроцедуры

Процедура А(Парам1, Парам2)

...

КонецПроцедуры

В приведенном фрагменте видно, что обращение к процедуре А (из проце­дуры Б) предшествует по тексту ее фактическому определению, но перед про­цедурой Б имеется предварительное описание процедуры А.

Процедура А(Парам1, Парам2) Далее

На то, что это предварительное описание указывает наличие ключевого сло­ва Далее (англоязычный синоним — Forward), которое замещает в случае предварительного описания тело процедуры и ключевое слово КонецПроцедуры. Предварительное описание процедуры/функции может со­держаться в любом месте текста модуля, где допускается фактическое опреде­ление процедуры или функции, а сам заголовок процедуры/функции должен в точности соответствовать заголовку в фактическом определении, включая на­личие, если необходимо, ключевого слова Экспорт и имен формальных пара­метров.

Передача параметров

По умолчанию параметры методов, процедур и функций передаются по ссылке, то есть изменение внутри процедуры или функции значения формаль­ного параметра ведет к изменению значения соответствующего фактического параметра. При передаче параметра по значению изменение значения формаль­ного параметра никак не влияет на фактический параметр вызова процедуры. Для указания того, что тот или иной параметр следует передавать по значению, следует в исходном тексте процедуры или функции перед именем параметра записать ключевое слово Знач (англоязычный синоним — Val).

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

Если параметру не задано значения по умолчанию, то при вызове процеду­ры его можно опускать в списке передаваемых фактических параметров, но разделительную запятую надо ставить.

Если параметр при вызове процедуры опущен, то он принимает либо уста­новленное по умолчанию значение (если оно есть) либо принимает «пустое» значение (значение неопределенного типа).

Если при вызове метода, процедуры или функции параметры не передаются (пустой список параметров), то, тем не менее, круглые скобки обязательно тре­буется ставить.

Системные процедуры и функции

Системные процедуры и функции доступны в любом программном модуле конфигурации. Доступ к системным процедурам и функциям в текстах про­граммных модулей непосредственный, т. е. просто имя процедуры или функции (без предварительной ссылки на какой-либо объект).

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

Математические функции

Окр

Округлить число.

Синтаксис:

Окр(<Число1>, [<Число2>], [<Спосо6>])

Англоязычный синоним:

Round

Параметры:

<Число1>

Числовое выражение, значение которого надо округлить.

<Число2>

Необязательный параметр. Числовое выражение, значение которого — формат округления (число знаков дробной части (если <Число2> отрицательно, то округляется до соответствующего количества знаков целой части). Значе­ние этого параметра по умолчанию — 0.

<Способ>

Необязательный параметр. Числовое выражение — способ округления: 0 — если при округлении 1.5 = 1; 1 — если при округлении 1.5 = 2. Значение по умолчанию — 0.

Возвращаемое значение:

Числовое значение результата округления.

Описание:

Функция Окр возвращает числовое значение результата округления <Число1> до <Число2> знаков дробной части (если <Число2> отрицательно, то округляется до соответствующего количества знаков целой части). Параметр <Число2> может быть опущен, при этом принимается, что <Число2> = 0.

Пример:

ОкруглЦена = Окр(ЦЕНА, -2);

Цел

Получить целую часть числа.

Синтаксис:

Цел(<Число>)

Англоязычный синоним:

Int

Параметры:

<Число>

Числовое выражение.

Возвращаемое значение:

Числовое значение целой части переданного в качестве параметра числа.

Описание:

Функция Цел возвращает целую часть переданного в качестве параметра числа, полностью отсекая дробную часть.

Пример:

МожноКупить = Цел(Наличность/Цена);

Мин

Определить минимальное значение.

Синтаксис:

Мин(<Элемент1>, ..., <ЭлементN>)

Англоязычный синоним:

Min

Параметры:

<Элемент1>, ..., <ЭлементN>

Список выражений базовых типов данных.

Возвращаемое значение:

Значение минимального элемента из списка <Элемент1>, ..., <ЭлементN>

Описание:

Функция Мин определяет минимальное значение из списка <Элемент1>, ..., <ЭлементN>.

Тот или иной семантический вариант функции определяется по типу дан­ных первого параметра. В случае несовпадения типа второго и последующих параметров с требуемым, их значения преобразуются к требуемому типу в со­ответствии с правилами преобразования типов. Если тип первого операнда не соответствует ни одному из допустимых типов, то в зависимости от ситуации может производиться преобразование типов или возбуждаться состояние ошибки исполнения.

Пример:

МинимЦена = Мин(Цена1, Цена2, ЦенаЗ);

Макс

Определить максимальное значение.

Синтаксис:

Макс(<Элемент1>, ..., <ЭлементN>)

Англоязычный синоним:

Мах

Параметры:

<Элемент1>, ..., <ЭлементN> Список выражений базовых типов данных.

Возвращаемое значение:

Значение максимального элемента из списка <Элемент1>, ..., <ЭлементN>

Описание:

Функция Макс определяет максимальное значение из списка <Элемент1>, ..., <ЭлементN>.

Тот или иной семантический вариант функции определяется по типу дан­ных первого параметра. В случае несовпадения типа второго и последующих параметров с требуемым, их значения преобразуются к требуемому типу в со­ответствии с правилами преобразования типов. Если тип первого операнда не соответствует ни одному из допустимых типов, то в зависимости от ситуации может производиться преобразование типов или возбуждаться состояние ошибки исполнения.

Пример:

МаксимЦена = Макс(Цена1, Цена2, ЦенаЗ);

Лог10

Вычислить десятичный логарифм числа.

Синтаксис:

Лог10(<Число>)

Англоязычный синоним:

Log10

Параметры:

<Число>

Числовое выражение.

Возвращаемое значение:

Числовое значение результата вычисления десятичного логарифма.

Описание:

Функция Лог10 вычисляет и возвращает десятичный логарифм числа. При отрицательном или нулевом значении параметра возвращаемое значение — 0.

Пример:

Шкала = Лог10(Частота);

Лог

Вычислить натуральный логарифм числа.

Синтаксис:

Лог(<Число>)

Англоязычный синоним:

Ln

Параметры:

<Число>

Числовое выражение.

Возвращаемое значение:

Числовое значение результата вычисления натурального логарифма.

Описание:

Функция Лог вычисляет и возвращает натуральный логарифм числа. При отрицательном или нулевом значении параметра возвращаемое значение — 0.

Пример:

Шкала = Лог(Частота);