Объекты встроенного языка для работы с документами:
*Заливкой выделен объект манипулирования данными
Узнай больше!
Про основные виды объектов встроенного языка можно прочитать в главе "Виды объектов встроенного языка, предназначенные для работы с данными прикладных объектов конфигурации" на странице 551. [577]
// Документы
//Пример: вывести все типы ссылок на документы, существующие в конфигурации
Массив = Документы.ТипВсеСсылки().Типы();
Для Каждого ОчереднойТип Из Массив Цикл
Сообщить(ОчереднойТип);
КонецЦикла;
// .<имя документа>
// [<имя документа>]
// Для Каждого ... Из ... Цикл ... КонецЦикла;
//Пример: Открыть форму нового документа ОказаниеУслуги для интерактивного
//заполнения
Форма = Документы["ОказаниеУслуги"].ПолучитьФормуНовогоДокумента();
Форма.Открыть();
//Пример: Открыть формы списка всех документов, существующих в
// конфигурации
Для Каждого ОчереднойДокумент Из Документы Цикл
Форма = ОчереднойДокумент.ПолучитьФормуСписка();
Форма.Открыть();
КонецЦикла; [578]
// НайтиПоНомеру()
// НайтиПоРеквизиту()
// ПустаяСсылка()
//Пример: Проверить, проведен ли документ ПриходнаяНакладная с номером 3
Если Документы.ПриходнаяНакладная.НайтиПоНомеру(3).Проведен Тогда
Сообщить("Документ с номером 3 проведен");
КонецЕсли;
//Пример: Проверить, что во всех документах ПриходнаяНакладная заполнен
//реквизит Склад
ПустаяСсылкаСклада = Справочники.Склады.ПустаяСсылка();
Если Не Документы.ПриходнаяНакладная.НайтиПоРеквизиту("Склад", ПустаяСсылкаСклада).Пустая() Тогда
Сообщить("Есть документы, у которых не заполнен реквизит Склад");
КонецЕсли;
// Выбрать()
//Пример: Выбрать все документы ПриходнаяНакладная за текущий месяц
Выборка = Документы.ПриходнаяНакладная.Выбрать(НачалоМесяца(ТекущаяДата()),КонецМесяца(ТекущаяДата()));
Пока Выборка.Следующий() Цикл
Сообщить(Выборка);
КонецЦикла;
НовыйДокумент = Документы.ПриходнаяНакладная.СоздатьДокумент();
НовыйДокумент.Дата = ТекущаяДата();
НовыйДокумент.Склад = Справочники.Склады.Основной;
//Заполнить табличную часть
НоваяСтрокаТабличнойЧасти = НовыйДокумент.Материалы.Добавить();
НоваяСтрокаТабличнойЧасти.Материал = Справочники.Номенклатура.НайтиПоКоду(6);
НоваяСтрокаТабличнойЧасти.Количество = 10;
НоваяСтрокаТабличнойЧасти.Цена = 22.5;
НоваяСтрокаТабличнойЧасти.Сумма = 225;
НовыйДокумент.Записать(); [579]
Если Не ПроверитьЗаполнениеРеквизитов(ЭтотОбъект.Ссылка) Тогда
Сообщить("Реквизиты документа не заполнены!");
КонецЕсли;
// Скопировать()
НенужныйДокумент = Документы.ОказаниеУслуги.НайтиПоНомеру(13).ПолучитьОбъект();
НенужныйДокумент.УстановитьПометкуУдаления(Истина);
//текущий месяц
СписокНакладных = Новый СписокЗначений;
Выборка = Документы.ПриходнаяНакладная.Выбрать(НачалоМесяца(ТекущаяДата()),КонецМесяца(ТекущаяДата()));
Пока Выборка.Следующий() Цикл
СписокНакладных.Добавить(Выборка.Ссылка);
КонецЦикла; [580]
Выборка = Документы.ПриходнаяНакладная.Выбрать();
Пока Выборка.Следующий() Цикл
Выборка.ПолучитьОбъект().Удалить();
КонецЦикла;