|
|
v7: Первый отчет в 1с 7.7 - СЕКЦИИ |
☑ |
|
0
OlesOles
05.06.15
✎
11:17
|
Здравствуйте, наваял отчет, но не могу побороть секции. Подскажите пожалуйста.
//*******************************************
// Процедура генерации запроса Сформировать.
//
Процедура Сформировать()
Перем Запрос, ТекстЗапроса, Таб;
//Создание объекта типа Запрос
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|Контрагент = Документ.РасходнаяНакладная.Контрагент;
|Регион = Документ.РасходнаяНакладная.Контрагент.Регион;
|ТМЦ = Документ.РасходнаяНакладная.ТМЦ;
|Кво = Документ.РасходнаяНакладная.Кво;
|СуммаСНДС = Документ.РасходнаяНакладная.СуммаСНДС;
|ДатаДок = Документ.РасходнаяНакладная.ДатаДок;
|НомерДок = Документ.РасходнаяНакладная.НомерДок;
|Функция КвоСумма = Сумма(Кво);
|Функция СуммаСНДССумма = Сумма(СуммаСНДС);
|Группировка ДатаДок без групп;
|Группировка НомерДок без групп;
|Группировка ТМЦ без групп;
|Группировка Кво без групп;
|Группировка СуммаСНДС без групп;
|Группировка Контрагент без групп;
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
// Подготовка к заполнению выходных форм данными запроса
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Сформировать");
// Заполнение полей "Заголовок"
Таб.ВывестиСекцию("Заголовок");
Состояние("Заполнение выходной таблицы...");
Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
Пока Запрос.Группировка(1) = 1 Цикл
// Заполнение полей ДатаДок
Таб.ВывестиСекцию("ДатаДок");
Пока Запрос.Группировка(2) = 1 Цикл
// Заполнение полей НомерДок
Таб.ВывестиСекцию("НомерДок");
Пока Запрос.Группировка(3) = 1 Цикл
// Заполнение полей ТМЦ
Таб.ВывестиСекцию("ТМЦ");
Пока Запрос.Группировка(4) = 1 Цикл
// Заполнение полей Кво
Таб.ВывестиСекцию("Кво");
Пока Запрос.Группировка(5) = 1 Цикл
// Заполнение полей СуммаСНДС
Таб.ВывестиСекцию("СуммаСНДС");
Пока Запрос.Группировка(6) = 1 Цикл
// Заполнение полей Контрагент
Таб.ВывестиСекцию("Контрагент");
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
// Заполнение полей "Итого"
Таб.ВывестиСекцию("Итого");
// Вывод заполненной формы
Таб.ТолькоПросмотр(1);
Таб.Показать("Сформировать", "");
КонецПроцедуры
|
|
|
1
Ёпрст
гуру
05.06.15
✎
11:18
|
Подсказываю - беги оттуда!
|
|
|
2
Ёпрст
гуру
05.06.15
✎
11:19
|
>> |Группировка Кво без групп;
>>> |Группировка СуммаСНДС без групп;
вот это очень забавно, да..
|
|
|
3
bolder
05.06.15
✎
11:22
|
(0) группировки Документ тебе хватит.
|
|
|
4
OlesOles
05.06.15
✎
11:45
|
(3)
//*******************************************
// Процедура генерации запроса Сформировать.
//
Процедура Сформировать()
Перем Запрос, ТекстЗапроса, Таб;
//Создание объекта типа Запрос
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|Контрагент = Документ.РасходнаяНакладная.Контрагент;
|Регион = Документ.РасходнаяНакладная.Контрагент.Регион;
|ТМЦ = Документ.РасходнаяНакладная.ТМЦ;
|Кво = Документ.РасходнаяНакладная.Кво;
|СуммаСНДС = Документ.РасходнаяНакладная.СуммаСНДС;
|ДатаДок = Документ.РасходнаяНакладная.ДатаДок;
|НомерДок = Документ.РасходнаяНакладная.НомерДок;
|Функция КвоСумма = Сумма(Кво);
|Функция СуммаСНДССумма = Сумма(СуммаСНДС);
|Группировка Документ;
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
// Подготовка к заполнению выходных форм данными запроса
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Сформировать");
// Заполнение полей "Заголовок"
Таб.ВывестиСекцию("Заголовок");
Состояние("Заполнение выходной таблицы...");
Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
Пока Запрос.Группировка(1) = 1 Цикл
// Заполнение полей Документ
Таб.ВывестиСекцию("Документ");
КонецЦикла;
// Заполнение полей "Итого"
Таб.ВывестиСекцию("Итого");
// Вывод заполненной формы
Таб.ТолькоПросмотр(1);
Таб.Показать("Сформировать", "");
КонецПроцедуры
Не хватает как минимум ТМЦ и контрагента:)
|
|
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший