![]() |
|
Подскажите с отчетом... | ☑ | ||
---|---|---|---|---|
0
hasan-rusel
08.04.13
✎
10:48
|
О, великие умы волшебного форума !
Помогите начинающим! Есть макет: http://s020.radikal.ru/i703/1304/3c/062cdc5611c5.jpg Неработающий код) Таблица = Новый ТабличныйДокумент ; Макет = ПолучитьМакет("Макет"); // ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); // Таблица.Вывести(ОбластьШапка); ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); СекцияШапка = Макет.ПолучитьОбласть("Шапка|Колонка1"); СекцияСтрока1 = Макет.ПолучитьОбласть("Строка|Колонка1"); СекцияИтого = Макет.ПолучитьОбласть("СтрокаИтого|Колонка1"); СекцияШапка1 = Макет.ПолучитьОбласть("Шапка|Колонка"); СекцияСтрока = Макет.ПолучитьОбласть("Строка|Колонка"); СекцияИтого1 = Макет.ПолучитьОбласть("СтрокаИтого|Колонка"); Таблица.НачатьАвтогруппировкуКолонок(); СекцияШапка.Параметры.Подразделение = Подразделение; СекцияШапка.Параметры.Дата1 = Формат(НачПериода,"ДФ=dd.MM.yyyy"); СекцияШапка.Параметры.Дата2 = Формат(КонПериода,"ДФ=dd.MM.yyyy"); СекцияШапка.Параметры.УВ1 = "100.00"; Таблица.Вывести(СекцияШапка); Запрос = Новый Запрос; Запрос.Текст ="ВЫБРАТЬ | ХозрасчетныйДвиженияССубконто.СубконтоДт2 КАК СубконтоДт2, | ХозрасчетныйДвиженияССубконто.Сумма, | ХозрасчетныйДвиженияССубконто.СчетКт КАК СчетКт, | ХозрасчетныйДвиженияССубконто.Период, | ХозрасчетныйДвиженияССубконто.ПодразделениеКт.Ссылка КАК ПодразделениеКтСсылка, | ХозрасчетныйДвиженияССубконто.СуммаНУДт, | ХозрасчетныйДвиженияССубконто.СуммаНУКт, | ХозрасчетныйДвиженияССубконто.СуммаПРДт, | ХозрасчетныйДвиженияССубконто.СуммаПРКт, | ХозрасчетныйДвиженияССубконто.СуммаВРДт, | ХозрасчетныйДвиженияССубконто.СуммаВРКт |ИЗ | РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто( | &НачПериода, | &КонПериода, | СчетДт = &Счет | И ВЫБОР | КОГДА &Подразделение = ЗНАЧЕНИЕ(Справочник.ПодразделенияОрганизаций.ПустаяСсылка) | ТОГДА ИСТИНА | ИНАЧЕ ПодразделениеДт.Ссылка = &Подразделение | КОНЕЦ, | , | ) КАК ХозрасчетныйДвиженияССубконто | |СГРУППИРОВАТЬ ПО | ХозрасчетныйДвиженияССубконто.СубконтоДт2, | ХозрасчетныйДвиженияССубконто.Сумма, | ХозрасчетныйДвиженияССубконто.СчетКт, | ХозрасчетныйДвиженияССубконто.Период, | ХозрасчетныйДвиженияССубконто.ПодразделениеКт.Ссылка, | ХозрасчетныйДвиженияССубконто.СуммаНУДт, | ХозрасчетныйДвиженияССубконто.СуммаНУКт, | ХозрасчетныйДвиженияССубконто.СуммаПРДт, | ХозрасчетныйДвиженияССубконто.СуммаПРКт, | ХозрасчетныйДвиженияССубконто.СуммаВРДт, | ХозрасчетныйДвиженияССубконто.СуммаВРКт | |УПОРЯДОЧИТЬ ПО | СубконтоДт2 |ИТОГИ ПО | СубконтоДт2"; Запрос.УстановитьПараметр("Счет", Счет); Запрос.УстановитьПараметр("Подразделение", Подразделение); Запрос.УстановитьПараметр("НачПериода", НачалоДня(НачПериода)); Запрос.УстановитьПараметр("КонПериода", КонецДня(КонПериода)); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); ////////ЦИКЛ ПО 1-4 КОЛОНКАМ ВыборкаСубконто = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаСубконто.Следующий() Цикл Выборка = ВыборкаСубконто.Выбрать(); Пока Выборка.Следующий() Цикл АБУ1 = АБУ1 + Выборка.Сумма; АНУ1 = АНУ1 + Выборка.СуммаНУДт; АПР1=АПР1+Выборка.СуммаПРДт; АВР1=АВР1+Выборка.СуммаВРДт; АК1=АБУ1-(АНУ1+АПР1+АВР1); ИБУ1=ИБУ1+Выборка.Сумма; ИНУ1=ИНУ1+Выборка.СуммаНУДт; ИПР1=ИПР1+Выборка.СуммаПРДт; ИВР1=ИВР1+Выборка.СуммаВРДт; ИК1=ИК1+АК1; Если Выборка.СчетКт.Код <> "20" и Выборка.СчетКт.Код <> "20.01" и Выборка.СчетКт.Код <> "20.02" и Выборка.СчетКт.Код <> "23" и Выборка.СчетКт.Код <> "23.01" и Выборка.СчетКт.Код <> "23.02" тогда //КонецЕсли; АБУ2 = АБУ2 + Выборка.Сумма; АНУ2 = АНУ2 + Выборка.СуммаНУДт; АПР2=АПР2+Выборка.СуммаПРДт; АВР2=АВР2+Выборка.СуммаВРДт; АК2=АБУ2-(АНУ2+АПР2+АВР2); ИБУ2=ИБУ2+Выборка.Сумма; ИНУ2=ИНУ2+Выборка.СуммаНУДт; ИПР2=ИПР2+Выборка.СуммаПРДт; ИВР2=ИВР2+Выборка.СуммаВРДт; ИК2=ИК2+АК2; ИначеЕсли Выборка.СчетКт.Код = "20" или Выборка.СчетКт.Код = "20.01" или Выборка.СчетКт.Код = "20.02" тогда Если Выборка.ПодразделениеКтСсылка <> ПД тогда АБУ3 = АБУ3 + Выборка.Сумма; АНУ3 = АНУ3 + Выборка.СуммаНУДт; АПР3=АПР3+Выборка.СуммаПРДт; АВР3=АВР3+Выборка.СуммаВРДт; АК3=АБУ3-(АНУ3+АПР3+АВР3); ПД = Выборка.ПодразделениеКтСсылка; Таблица.Присоединить(СекцияШапка1); Таблица.Присоединить(СекцияСтрока); КонецЕсли; КонецЕсли; // Секция1.Параметры.УВ2 = Формат(ИБУ2/ИБУ1,"ЧДЦ=2; ЧС=-2"); СекцияСтрока1.Параметры.Субконто = Выборка.СубконтоДт2.Наименование; СекцияСтрока1.Параметры.АБУ1=АБУ1; СекцияСтрока1.Параметры.АБУ2=АБУ2; СекцияСтрока1.Параметры.АНУ1=АНУ1; СекцияСтрока1.Параметры.АНУ2=АНУ2; СекцияСтрока1.Параметры.АПР1=АПР1; СекцияСтрока1.Параметры.АПР2=АПР2; СекцияСтрока1.Параметры.АВР1=АВР1; СекцияСтрока1.Параметры.АВР2=АВР2; СекцияСтрока1.Параметры.АК1=АК1; СекцияСтрока1.Параметры.АК2=АК2; СекцияСтрока.Параметры.АБУ3=АБУ3; СекцияСтрока.Параметры.АНУ3=АНУ3; СекцияСтрока.Параметры.АПР3=АПР3; СекцияСтрока.Параметры.АВР3=АВР3; СекцияСтрока.Параметры.АК3=АК3; СекцияШапка1.Параметры.ПД = ПД; КонецЦикла; Таблица.Вывести(СекцияСтрока1); // Таблица.Присоединить(СекцияШапка1); // Таблица.Присоединить(СекцияСтрока); ПриОткрытии(); // Субконто = Выборка.СубконтоДт2.Наименование; //КонецЦикла; СекцияИтого.Параметры.ИБУ1 = ИБУ1; СекцияИтого.Параметры.ИНУ1 = ИНУ1; СекцияИтого.Параметры.ИПР1 = ИПР1; СекцияИтого.Параметры.ИВР1 = ИВР1; СекцияИтого.Параметры.ИК1 = ИК1; СекцияИтого.Параметры.ИБУ2 = ИБУ2; СекцияИтого.Параметры.ИНУ2 = ИНУ2; СекцияИтого.Параметры.ИПР2 = ИПР2; СекцияИтого.Параметры.ИВР2 = ИВР2; СекцияИтого.Параметры.ИК2 = ИК2; КонецЦикла; Таблица.Вывести(СекцияИтого); Код по первым 4м колонкам работает нормально, т.е. собирает итоги всего в 3ю колонку и выводит и в 4 колонку выводит все что не вошло по 20 и 23 счету. А вот дальше не знаю как быть... Нужно чтобы в СекцияСтрока собирались итоги по определенному субконто и определенному подразделению. Если новое подразделение то добавляется новая колонка и т.д. (субконто соответственно должно тоже совпадать) PS) Вот к такому виду нужно придти... http://s47.radikal.ru/i115/1304/97/629e8249f7c2.jpg Заранее спасибо за помощь !!!!!!! |
|||
1
hasan-rusel
08.04.13
✎
12:11
|
Неужели никто не может помочь ? :((
|
|||
2
hasan-rusel
09.04.13
✎
05:47
|
уточню....
конфигурация БП 2.0 Нужно собрать итоги по одной статье затрат, например "Амотризация ОС" по определенному подразделению, например "Мех.служба" потом присоединяем к соответвующей статье затрат и и т.д. по определенному подразделению, потом другое подразделение - новая колонка... и т.д. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |