Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1C_pr77_Lang1.doc
Скачиваний:
12
Добавлен:
20.11.2019
Размер:
2.43 Mб
Скачать

Специальные процедуры и функции СоздатьОбъект

Создает объект агрегатного типа данных и возвращает ссылку на не­го.

Синтаксис:

СоздатъО6ъект(<ИмяАгрегатногоТипа>)

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

CreateObject

Параметры:

<ИмяАгрегатногоТипа>

Строковое выражение, значение которого содержит имя агрегатного типа данных, объ­явленного в конфигураторе.

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

Ссылка на созданный объект агрегатного типа данных.

Описание:

Функция СоздатьОбъект создает объект агрегатного типа данных и воз­вращает ссылку на него. Данная функция обычно используется одновременно с неявным определением переменной и присвоением ей ссылки на объект агре­гатного типа данных.

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

Пример:

Спр = СоздатьОбъект("Справочник.Сотрудники");

Спр.НайтиПоКоду("029");

СтатусВозврата

Установить/определить статуса возврата предопределенной процеду­ры.

Синтаксис:

СтатусВозврата([<Статус>])

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

ReturnStatus

Параметры:

<Статус>

Необязательный параметр. Числовое выражение. Если задано значение 1, то устанавливается статус возврата — Выполнить Действие. Если задано зна­чение 0, то устанавливается статус возврата — Отменить Действие. Если параметр опущен, то статус возврата предопределенной процедуры не меняется.

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

Число 1 — если статус возврата — Выполнить Действие;

Число 0 — если статус возврата — Отменить Действие.

Описание:

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

Значение статуса возврата предопределенной процедуры используется сис­темой при завершении отработки любой предопределенной процедуры, чтобы определить, выполнять ли системно событие, которое вызвало данную предо­пределенную процедуру.

Замечание: Начальное значение статуса возврата предопределенной процеду­ры равно 1 (Выполнить Действие), которое устанавливается системой при вызове предопределенной процедуры.

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

Если параметр <Статус> задан явно, то после выполнения данной функ­ции статус возврата установится в заданное значение. Пример:

* Если в предопределенной процедуре ПриЗаписи установить статус возвра­та — 0 (например, если неверно заполнены реквизиты), то документ не бу­дет записываться.

Процедура ПриЗаписи()

Если Клиент.Выбран() = 0 Тогда

Предупреждение("Запись отменена! Не задан клиент!");

СтатусВозврата(0);

КонецЕсли;

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

* Если в предопределенной процедуре ВводНаОсновании установить статус возврата — 0, то ввод нового документа будет отменен и форма нового до­кумента не откроется.

Процедура ВводНаОсновании(ДокОснование)

Автор = Пользователь;

ДокВид = ДокОснование.Вид();

Если (ДокВид = "Счет") ИЛИ (ДокВид = "Счет_фактура")

ИЛИ (ДокВид = "РасходнаяКредит") ИЛИ (ДокВид = РасходнаяРеализ") Тогда

Автор = Пользователь;

ДокВид = ДокОснование.Вид();

Фирма = ДокОснование.Фирма;

Клиент = ДокОснование.Клиент;

Основание = ДокВид + " № " + ДокОснование.НомерДок;

Сумма = ДокОснование.Итог("Сумма");

НДС = ДокОснование.Итог("НДС");

Иначе

Предупреждение("Недопустимый вид документа основания!");

СтатусВозврата(0);

КонецЕсли;

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

См. также: «Системные предопределенные процедуры»

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]