|
Запрос список складов в одну строку | ☑ | ||
---|---|---|---|---|
0
VOI
21.02.13
✎
14:52
|
Есть два источника
Документ "Заявка" и Документ "Заказ" Заявка связана с заказом ... у одной заявки может быть мого заказов. Мне нужно вывести два столбца: "Скалад Заявка" и "Склад Заказ" Необходимы поля запроса: СкладЗаявка - это склад из шапки Документа "Заявка" СкладЗаказ - это список складов в одной ячейке (названий) на уровне одной заявки Исходная ситуация: Скзад Заявка |- Склад Заказ № 1 |- Склад Заказ № 2 |- Склад Заказ № 3 Что нужно: Склад Заказ | Склад Заказ №1 , Склад Заказ №2, Склад Заказ №3| |
|||
1
Wobland
21.02.13
✎
14:53
|
ясно
|
|||
2
VOI
21.02.13
✎
15:06
|
Пример выдуманый чтобы неописывать основную задачу. Может кто встречался с такого рода задачкой? Наставте на путь истинны... Нехватает одно этого винтика к моему отчету.
|
|||
3
VOI
21.02.13
✎
15:07
|
(0) + необходимо плучить список складов (из примера) в одной ячейке, т.е текстовым представлением.
|
|||
4
Wobland
21.02.13
✎
15:08
|
(3) ну и собирай свою строку. спорим, не убедишь, что именно в запросе надо?
|
|||
5
Maxus43
21.02.13
✎
15:09
|
в СКД легко, в запросе посложней
|
|||
6
Wobland
21.02.13
✎
15:10
|
(5) ну-ка, ну-ка. как в запросе? слыхал я краем уха про какие-то диалекты sql...
|
|||
7
VOI
21.02.13
✎
15:12
|
(4) - да именно в запросе. Дело в том что сам отчет я докуручиваю, начинал его другой программер. Используется построитель отчетов. А с построителем сильно ненаиграешся, покрайней мере неразгонишся))
|
|||
8
Maxus43
21.02.13
✎
15:15
|
в запросе - если знать количество складов то можно. Или динамически текст запроса составлять
|
|||
9
Wobland
21.02.13
✎
15:15
|
(8) весь цимес в том, что в каждой ожидаемой строке количество разное
|
|||
10
Wobland
21.02.13
✎
15:16
|
(7) у построителя можно текст забрать. а я его не люблю и не умею. собирай потом
|
|||
11
Maxus43
21.02.13
✎
15:16
|
(9) можно исходить из макисмального количества, в ущерб красоте получим результат
|
|||
12
Maxus43
21.02.13
✎
15:18
|
короче я за СКД. Или за пост обработку результата
|
|||
13
Нуф-Нуф
21.02.13
✎
15:19
|
а что мешает получить в скд?
|
|||
14
VOI
21.02.13
✎
15:20
|
(13) - (7)
|
|||
15
Maxus43
21.02.13
✎
15:21
|
(14) запихни его запрос в СКД, красивей будет
|
|||
16
VOI
21.02.13
✎
15:25
|
(15) Эххх да вот уже задумываюсь.
|
|||
17
GANR
21.02.13
✎
15:35
|
В запросе-то? Я бы пихнул в СКД, и если надо В ТЗ/дерево выгрузил результат. Ну да ладно:
1. Пронумеровать склад / заказы внутри группы (додумайтесь сами) склад / заявка Книга знаний: v8: Нумерация строк в запросе 2. Сгруппировать по склад / заявка 3. Взять агрегатные функции МАКСИМУМ(ВЫБОР КОГДА НомерПП = 1 ТОГДА СкдлаЗаказ.Наиенование ИНАЧЕ "" КОНЕЦ) МАКСИМУМ(ВЫБОР КОГДА НомерПП = 2 ТОГДА СкдлаЗаказ.Наиенование ИНАЧЕ "" КОНЕЦ) ... МАКСИМУМ(ВЫБОР КОГДА НомерПП = N ТОГДА СкдлаЗаказ.Наиенование ИНАЧЕ "" КОНЕЦ) 4. Сложить п.3 через запятую Что-нибудь понятно? |
|||
18
GANR
21.02.13
✎
15:36
|
Но в (17) есть ограничение (8)
|
|||
19
GANR
21.02.13
✎
15:37
|
А в MS SQL для (17) есть PIVOT
|
|||
20
VOI
21.02.13
✎
15:44
|
(17) Спасибо, буду пробывать )
|
|||
21
GANR
21.02.13
✎
15:47
|
(20) Но лучше, как советуют (12)(13) и (17). И, кстати, вполне вероятно, что тебе будет проще на СКД написать с нуля этот отчет.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |