|
Как сгруппировать данные по такому запросу? | ☑ | ||
---|---|---|---|---|
0
SherifSP
27.02.14
✎
19:08
|
У одного контрагента может быть несколько видов номенклатуры с разными характеристиками, как мне в итоге получить все в одну строку, делаю отчет на скд с помощью макета, но у меня столько строк, сколько видов номенклатуры находится у контрагента. Нужно так: Контрагент,ТорговаяТочка,Номенклатура + характеристика. Пробовал по всякому, решил что нужно все обрабатывать в запросе и уже выводить готовые данные, только как не понимаю, подскажите плз
Текст запроса ВЫБРАТЬ МаршрутныйЛистТорговогоПредставителяМаршрут.Ссылка КАК МаршрутныйЛист, МаршрутныйЛистТорговогоПредставителяМаршрут.Контрагент КАК Контрагент, МаршрутныйЛистТорговогоПредставителяМаршрут.ТорговаяТочка КАК ТорговаяТочка, ТоварыПереданныеОстатки.Номенклатура КАК Номенклатура, ТоварыПереданныеОстатки.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, ТоварыПереданныеОстатки.КоличествоОстаток КАК КоличествоОстаток, ТоварыПереданныеОстатки.СуммаВзаиморасчетовОстаток КАК СтоимостьОстаток, МаршрутныйЛистТорговогоПредставителяМаршрут.Ссылка.Номер ИЗ Документ.МаршрутныйЛистТорговогоПредставителя.Маршрут КАК МаршрутныйЛистТорговогоПредставителяМаршрут ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыПереданные.Остатки КАК ТоварыПереданныеОстатки ПО МаршрутныйЛистТорговогоПредставителяМаршрут.ТорговаяТочка = ТоварыПереданныеОстатки.ТорговаяТочка И МаршрутныйЛистТорговогоПредставителяМаршрут.Контрагент = ТоварыПереданныеОстатки.Контрагент |
|||
1
vicof
27.02.14
✎
19:13
|
Ну чо, сортируй по всем полям, затем в цикле соединяй строчки в одну.
Если СКД - там есть СоединитьСтроки(), как-то так |
|||
2
SherifSP
27.02.14
✎
19:21
|
(1) А где их в скд соединять?
|
|||
3
vicof
27.02.14
✎
19:25
|
(2) Фукнции скд в справке глянь
|
|||
4
SherifSP
28.02.14
✎
14:48
|
Не получилось( Может кто дельный совет дать?
|
|||
5
SherifSP
28.02.14
✎
15:01
|
Ап
|
|||
6
Maxus43
28.02.14
✎
15:04
|
не совсем понял, тебе надо поле Характеристика слить в одну строку, через запятую например?
|
|||
7
SherifSP
28.02.14
✎
18:13
|
(6) Да
|
|||
8
SherifSP
28.02.14
✎
18:13
|
(6) Подскажи как это сделать
|
|||
9
Aleksandr N
28.02.14
✎
18:20
|
(8) Обходишь запрос и присоединяешь. Наверно, как то так.
|
|||
10
Aleksandr N
28.02.14
✎
18:23
|
(9) Только еще в запросе нужны итоги по контрагенту.
|
|||
11
SherifSP
28.02.14
✎
18:39
|
а пример?)
|
|||
12
SherifSP
28.02.14
✎
19:24
|
Еще раз ап
|
|||
13
Aleksandr N
28.02.14
✎
19:25
|
(12) Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ | РеализацияТоваровУслуг.Контрагент КАК Контрагент, | РеализацияТоваровУслугТовары.Номенклатура |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ПО РеализацияТоваровУслугТовары.Ссылка = РеализацияТоваровУслуг.Ссылка | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслуг.Контрагент, | РеализацияТоваровУслугТовары.Номенклатура |ИТОГИ ПО | Контрагент"; Результат = Запрос.Выполнить(); ТекстНоменклатуры = ""; Дерево = Результат.Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); Для Каждого Контрагент Из Дерево.Строки Цикл Для Каждого Номенклатура Из Контрагент.Строки Цикл ТекстНоменклатуры = ТекстНоменклатуры + ", " + Номенклатура.Номенклатура; КонецЦикла; КонецЦикла; |
|||
14
Aleksandr N
28.02.14
✎
19:26
|
(13) Только таблицы другие
|
|||
15
SherifSP
28.02.14
✎
19:34
|
(14) Не так я хотел
|
|||
16
Aleksandr N
28.02.14
✎
19:34
|
(15) Как ты хотел?
|
|||
17
SherifSP
28.02.14
✎
19:35
|
Нужно без цикла номенклатуру сумировать
|
|||
18
SherifSP
28.02.14
✎
19:35
|
все в запросе
|
|||
19
Aleksandr N
28.02.14
✎
19:36
|
(18) В запросе нельзя строки суммировать
|
|||
20
SherifSP
28.02.14
✎
19:45
|
У меня есть поле контрагент и номенклатура, если у контрагента будит 2 вида номенклатуры, их нужно показать как 1 вид но 2 наименования
|
|||
21
Aleksandr N
28.02.14
✎
20:00
|
(20) Ты действительно думаешь, что запрос может соединить строки из разных полей?
|
|||
22
Aleksandr N
28.02.14
✎
20:05
|
(21) Точнее строки из колонки.
|
|||
23
Allexe
28.02.14
✎
20:19
|
(20) Выводи каждое наименование в отдельной колонке, а потом соедини
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |