Обход материалов через БухИтоги. Как быть с группами?

  • Автор темы AlexeyP
  • Дата начала
Статус
Закрыто для дальнейших ответов.
A

AlexeyP

#1
У меня пара вопросов. Извините, если они будут глупыми, но я только начинаю изучать язык 1С.
Я делаю обработку, которая выводит остатки по материалам и, если они есть, создает документ Перемещение материалов.
У нас поквартально в бухгалтерии списываются материалы в больших количествах, вот я и подумал, почему бы не автоматизировать этот процесс...

Суть вопроса: когда идет обход полученных остатков по субконто (Пока БИ.ПолучитьСубконто()...), я сталкиваюсь с проблемой, когда элемент справочника группой.
Я выделил жирным в коде. Но как прога ведет себя - извлекуттся ли итоги по элементам, которые будут сидеть в группе?
Если будут извлечены данные только по элементам в корне справочника, то что мне нужно дописать, чтобы я получил результаты по всем материалам?
Или тут не играет роль уровень иерархии в справочнике?

Выкладываю код основной процедуры.

Процедура ВывестиОстатки()
БИ=СоздатьОбъект("БухгалтерскиеИтоги");
БИ.ИспользоватьСубконто(ВидыСубконто.Материалы, , 1);
БИ.ИспользоватьСубконто(ВидыСубконто.МестаХранения, ВыбСклад, 1);
БИ.ВыполнитьЗапрос(, ДатаДок, "10",,,,,4);
БИ.ВыбратьСубконто(1);
Пока БИ.ПолучитьСубконто(1) = 1 цикл
БИ.ВыбратьСубконто(2);
Пока БИ.ПолучитьСубконто(2) = 1 цикл
Если БИ.ЭтоГруппа() = 0 Тогда
ТЗ.НоваяСтрока();
ТЗ.Материал=БИ.ПредставлениеСубконто();
ТЗ.ЕдИзм=БИ.Субконто().ЕдиницаИзмерения;
ТЗ.Остаток=БИ.СКД("К");
ТЗ.Списать=ТЗ.Остаток;
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецПроцедуры



Да, и еще: если в справочнике материал помечен на удаление, по нему же не делжны извлекаться итоги?
 
H

Hryv

#2
Привязка идет не столько к справочнику, сколько к итогам

В твоем конкретном случае выберутся все элементы справочника, по которым есть количественные остатки и/или обороты по 10 счету
Не зависимо от иерархии справочника
При этом группы можно совсем отключить см. описание ИспользоватьСубконто()
 
A

AlexeyP

#3
Спасибо большое!
Обработку написал. Узнал много нового ;)
 
Статус
Закрыто для дальнейших ответов.