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

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

Англоязычный синоним ключевого слова Документ – Document.

Замечание
Следует обратить особое внимание, что переменная типа "Документ", созданная функцией СоздатьОбъект – это ссылка на список документов в отличие от переменных содержащих само значение объекта (например, переменной может быть присвоено значение реквизита справочника, который имеет тип "Документ"). Использование ссылки на список документов, созданной при помощи функции СоздатьОбъект существенно отличается от работы со значением типа "Документ". Только при работе со ссылкой на список документов разрешено изменять позицию (найти-выбрать…) текущего элемента в списке (т. е. осуществлять позиционирование по списку документов), создавать новые, изменять и удалять существующие документы. С другой стороны, ссылка на список документов не содержит собственно значения конкретного документа, которое можно присвоить чему-либо. Однако, его всегда можно получить, используя функцию ТекущийДокумент
.

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

Пример:

*

Док = СоздатьОбъект("Документ");

Док1 = СоздатьОбъект("Документ.БольничныйЛист");

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

ДокЗ = СоздатьОбъект("Документ.ПриказПоОтпуску");

Док4 = СоздатьОбъект("Документ.ПрихНакладн");

Док5 = СоздатьОбъект("Документ.Списание");

*

// В модуле формы документа

// меняем номер обрабатываемого документа

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

*

// В других модулях имена атрибутов, процедур и функций документов

// записываются через точку после имени переменной

// со значением типа "Документ".

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

// создаем новый документ

Док.Новый();

Док.ОбщийРазмер = 12000000;

// меняем номер Документа

Док.НомерДок = "12345";

// меняем дату документа

Док.ДатаДок = '14.04.96';

// создаем новую строку в спецификации документа

Док.НоваяСтрока();

Док.Сотр = СпрСотрудн.ТекущийЭлемент();

Док.Процент = 15;

// ...

// записываем документ

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