Иллюстрированный самоучитель по языку системы 1С:Предприятие

Контекст работы с документами

В синтаксисе языка доступ к атрибутам, а также вызов методов документов зависит от контекста выполнения программного модуля.

Если конкретный документ входит (согласно локального контекста) в набор непосредственно доступных модулю значений агрегатных типов данных (см. "Виды программных модулей"), то доступ к атрибуту, вызов метода для этого документа – просто имя этого атрибута, метода с указанием необходимых параметров.

Пример:

В форме редактирования документа "Накладная" мы имеем непосредственный доступ к текущему документу (накладной). Значит, чтобы изменить номер накладной, запишем:

НомерДок = "12345678";

В форме редактирования документа "Приказ на зачисление" мы имеем непосредственный доступ к реквизитам этого документа. Значит, чтобы записать имя нового сотрудника, пишем:

ФИО = "Иванов И.И.";

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

Пример:

Допустим, у документа "Счет" есть реквизит "Накладная", который имеет тип "Документ.РасхНакл". Номер накладной можно получить следующим образом:

НомерРасхНакл=Документ.Счет.Накладная.НомерДок;

Допустим, значение реквизита "Приказ" справочника "ПриказыНаДоплату" имеет тип "Документ.ПриказНаДоплату". Тогда номер приказа можно получить следующим образом:

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

// ...

Номер = Спр.Приказ.НомерДок;

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

При создании ссылки на объект типа "Документ" при помощи функции СоздатьОбъект в качестве имени документа может выступать ключевое слово Документ или полное имя вида документа.

Полное имя вида документа записывается следующим образом:

Документ.<Имя_Документа>

…где <Имя_Документа> – имя вида документа, как он объявлен в конфигураторе.

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

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.