- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
ВыборкаПоПроектам = ВзаиморасчетыСКонтрагентами.ПолучитьЗаполженностьКонтрагентовНаДату(МассивОрганизаций, КонецДня(ДатаОтчета), Истина, Истина, Истина);
Если ВыборкаПоПроектам <> Неопределено Тогда
ТаблицаВзаиморасчетов = Новый ТаблицаЗначений;
ДополнитьТаблицуКолонками(ТаблицаВзаиморасчетов);
Пока ВыборкаПоПроектам.Следующий() Цикл /// Проект
Если ВыборкаПоПроектам.СуммаОстаток <> 0 Тогда
ВыборкаПоКонтрагентам = ВыборкаПоПроектам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаПоКонтрагентам.Следующий() Цикл /// Контрагент
Если ВыборкаПоКонтрагентам.СуммаОстаток <> 0 Тогда
ВыборкаПоПлательщикам = ВыборкаПоКонтрагентам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаПоПлательщикам.Следующий() Цикл // плательщик
Если (ВыборкаПоПлательщикам.СуммаОстаток <> 0) Тогда
ВыборкаПоДоговорам = ВыборкаПоПлательщикам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаПоДоговорам.Следующий() Цикл // договор
Если ВыборкаПоДоговорам.СуммаОстаток <> 0 Тогда
ВыборкаПоДокументам = ВыборкаПоДоговорам.Выбрать();
Пока ВыборкаПоДокументам.Следующий() Цикл // документ
СтрокаВзаиморасчетов = ТаблицаВзаиморасчетов.Добавить();
ЗаполнитьЗначенияСвойств(СтрокаВзаиморасчетов, ВыборкаПоДокументам);
А потом вот такая таблица помещается в СКД, на неё накладывается отбор... и даже по 1 контрагенту отчёт формируется минут 5. Научили дурака Богу молиться...
SkyHunter 01.12.2015 02:13 # 0
guest 08.12.2015 04:06 # 0
skigf 10.12.2015 16:52 # 0