|
Групировка результата запроса ТЧ документа | ☑ | ||
---|---|---|---|---|
0
D_Sergeevich
29.09.12
✎
17:55
|
Приветствую!
Имеется запрос ТЧ документа Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ВыдачаКредитаРеестрПлатежногоПоручения.ФамилияИмяОтчество, | ВыдачаКредитаРеестрПлатежногоПоручения.АдресПроживания, | ВыдачаКредитаРеестрПлатежногоПоручения.ДатаДоговора, | ВыдачаКредитаРеестрПлатежногоПоручения.НомерДоговора, | ВыдачаКредитаРеестрПлатежногоПоручения.НомерСчета, | ВыдачаКредитаРеестрПлатежногоПоручения.Сумма |ИЗ | Документ.ВыдачаКредита.РеестрПлатежногоПоручения КАК ВыдачаКредитаРеестрПлатежногоПоручения |ГДЕ | ВыдачаКредитаРеестрПлатежногоПоручения.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка", Ссылка); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Результат необходимо вывести на печать Пока Выборка.Следующий() Цикл ОблРеестр.Параметры.АдресПроживания = Выборка.АдресПроживания; ОблРеестр.Параметры.ФамилияИмяОтчество = Выборка.ФамилияИмяОтчество; ОблРеестр.Параметры.ДатаДоговора = Выборка.ДатаДоговора; ОблРеестр.Параметры.НомерДоговора = Выборка.НомерДоговора; ОблРеестр.Параметры.НомерСчета = Выборка.НомерСчета; ОблРеестр.Параметры.Сумма = Выборка.Сумма; ТабДок2.Вывести(ОблРеестр); КонецЦикла; Макет печати http://image.openlan.ru/images/92342071074660805892.png Результат печати http://image.openlan.ru/images/94514834831662478109.png Как видно из результата - никакой группировки. Как сделать так чтобы район не повторялся а группировался второй день бьюсь над этой задачей... Слободзейский район ФИО... Дата...и т.д. ФИО... Дата...и т.д. Григориопольский район ФИО... Дата...и т.д. |
|||
1
D_Sergeevich
29.09.12
✎
17:56
|
Как то не по русски сообщение вывелось..
Макет печати http://image.openlan.ru/images/92342071074660805892.png Результат печати http://image.openlan.ru/images/94514834831662478109.png |
|||
2
Solitar
29.09.12
✎
17:59
|
посмотри в гугле "ОбходРезультатаЗапроса по группировкам". у тебя кое чего не хватает в запросе.
|
|||
3
Solitar
29.09.12
✎
18:00
|
тут тебе вроде как итоги нужны.
|
|||
4
D_Sergeevich
29.09.12
✎
18:03
|
(2) я это пробовал, но чет у меня не получается. Я не очень пока селен в запросах. (только учусь)
|
|||
5
sttt
29.09.12
✎
18:49
|
может поможет http://ops.org.ua/P6/SelectQ.php
|
|||
6
D_Sergeevich
29.09.12
✎
18:58
|
Вроде как Итоги мне помогли. Все работает как мне надо. Правильно ли я сделал? чтоб потом косяки не вылезли когда будит большой список.
И адрес я вывел в отдельную область. Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ВыдачаКредитаРеестрПлатежногоПоручения.ФамилияИмяОтчество, | ВыдачаКредитаРеестрПлатежногоПоручения.АдресПроживания КАК АдресПроживания, | ВыдачаКредитаРеестрПлатежногоПоручения.ДатаДоговора, | ВыдачаКредитаРеестрПлатежногоПоручения.НомерДоговора, | ВыдачаКредитаРеестрПлатежногоПоручения.НомерСчета, | ВыдачаКредитаРеестрПлатежногоПоручения.Сумма |ИЗ | Документ.ВыдачаКредита.РеестрПлатежногоПоручения КАК ВыдачаКредитаРеестрПлатежногоПоручения |ГДЕ | ВыдачаКредитаРеестрПлатежногоПоручения.Ссылка = &Ссылка | |УПОРЯДОЧИТЬ ПО | АдресПроживания УБЫВ |ИТОГИ ПО | АдресПроживания"; Запрос.УстановитьПараметр("Ссылка", Ссылка); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл Если Выборка.Группировка() = "АдресПроживания" Тогда ОблАдрес.Параметры.АдресПроживания = Выборка.АдресПроживания; ТабДок2.Вывести(ОблАдрес); Иначе ОблРеестр.Параметры.ФамилияИмяОтчество = Выборка.ФамилияИмяОтчество; ОблРеестр.Параметры.ДатаДоговора = Выборка.ДатаДоговора; ОблРеестр.Параметры.НомерДоговора = Выборка.НомерДоговора; ОблРеестр.Параметры.НомерСчета = Выборка.НомерСчета; ОблРеестр.Параметры.Сумма = Выборка.Сумма; ТабДок2.Вывести(ОблРеестр); КонецЕсли; КонецЦикла; |
|||
7
D_Sergeevich
29.09.12
✎
19:12
|
Еще вопрос парни. Как сделать чтобы нумерация (№п/п) в каждой группе начиналась заного
Вот нынешний результат: http://image.openlan.ru/images/41087196876025605338.png |
|||
8
MishaD
29.09.12
✎
19:22
|
Сейчас 8-ки меня обзовут нехорошими словами, но я бы переменную-счетчик добавил бы в секцию Иначе.
Если Выборка.Группировка() = "АдресПроживания" Тогда ОблАдрес.Параметры.АдресПроживания = Выборка.АдресПроживания; ТабДок2.Вывести(ОблАдрес); сч=0; Иначе сч=сч+1; ОблРеестр.Параметры.номПП=сч; ОблРеестр.Параметры.ФамилияИмяОтчество = Выборка.ФамилияИмяОтчество; ОблРеестр.Параметры.ДатаДоговора = Выборка.ДатаДоговора; ОблРеестр.Параметры.НомерДоговора = Выборка.НомерДоговора; ОблРеестр.Параметры.НомерСчета = Выборка.НомерСчета; ОблРеестр.Параметры.Сумма = Выборка.Сумма; ТабДок2.Вывести(ОблРеестр); КонецЕсли; |
|||
9
D_Sergeevich
29.09.12
✎
19:36
|
(8) Благодарю! А чем этот вариант плох для 8-ки? все отлично работает.
|
|||
10
MishaD
29.09.12
✎
19:55
|
Блатные 8-ки такой отчетик делали бы на СКД. Там номер пункта в подгруппе один из стандартных параметров.
|
|||
11
mih_io
29.09.12
✎
20:07
|
выводить лучше так. как то красивше и понятнее
ВыборкаАдрес = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаАдрес.Следующий() Цикл //***** ОблАдрес.Параметры.АдресПроживания = ВыборкаАдрес .АдресПроживания; ТабДок2.Вывести(ОблАдрес); //***** Выборка = ВыборкаАдрес .Выбрать(); Пока Выборка.Следующий() Цикл ОблРеестр.Параметры.ФамилияИмяОтчество = Выборка.ФамилияИмяОтчество; ОблРеестр.Параметры.ДатаДоговора = Выборка.ДатаДоговора; ОблРеестр.Параметры.НомерДоговора = Выборка.НомерДоговора; ОблРеестр.Параметры.НомерСчета = Выборка.НомерСчета; ОблРеестр.Параметры.Сумма = Выборка.Сумма; ТабДок2.Вывести(ОблРеестр); КонецЦикла; КонецЦикла; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |