Выбрав счета нам нужно их получать по очереди. Для этого функция с неповторимым названием ПолучитьСчет.
ПолучитьСчет
Получить из выборки следующий счет. Выборка должна быть предварительно открыта при помощи метода ВыбратьСчета.
Синтаксис:
ПолучитьСчет([<Режим>])
Англоязычный синоним:
GetAccount
Параметры:
<Режим> Необязательный параметр. Числовое выражение — признак выборки подчиненных счетов. Может принимать значения: 0 — не включать подчиненные счета; 1 — включать подчиненные счета. По умолчанию — 1.
Возвращаемое значение:
Число: 1 — следующий счет выбран успешно; 0 — следующий счет не выбран (отсутствует).
Описание:
Метод ПолучитьСчет выбирает очередной счет из выборки, содержащей счета из плана счетов. Перед применением метода ПолучитьСчет выборка должна быть открыта при помощи метода ВыбратьСчета. Счета извлекаются в порядке возрастания кода счета.
Метод ПолучитьСчет используется для организации цикла по счетам. Условием цикла может служить равенство 1 возвращаемого значения метода: цикл выполняется, пока метод ПолучитьСчет возвращает 1.
Метод возвращает 0, когда очередной счет не выбран. Это происходит, если при предыдущем применении метода был выбран последний счет выборки.
Вот мы ей и воспользуемся.
Процедура Сформировать() Т = СоздатьОбъект("Таблица"); Т.ИсходнаяТаблица("Таблица"); Итог = СоздатьОбъект("БухгалтерскиеИтоги"); Сч = СоздатьОбъект("Счет.Основной"); Сч.ВыбратьСчета(); Пока Сч.ПолучитьСчет() = 1 Цикл Т.ВывестиСекцию("Секция_1"); КонецЦикла; Т.ТолькоПросмотр(1); Т.Показать(); КонецПроцедуры
То есть пока получаем счета выводить секцию_1. Сколько счетов столько раз она и выведется. Мы же теперь можем воспользоваться объектом счет для вывода.
В каждом проходе цикла будет новый объект счет, а значит и сальдо дебетовое новое. Здесь конечно немного мутновато для восприятия. Нужно понимать, что после вызова ПолучитьCчет объект счет отражает не общее состояние счета, а выбранный счет. Запустим и посмотрим.