Имя: Пароль:
1C
1С v8
Сгруппировать строки в запросе
0 Родом из детства
 
03.03.21
11:58
Суть в следующем:
У контрагента имеется ТЧ с услугами, нужно получить следующую строку:
Контрагент - СписокУслуг(через пробел, или запятую)
И сделать это запросом...
Хотел сначала создать новое поле (Наименование услуги + " "), а потом сгруппировать по контрагенту, и это поле просуммировать, однако, строки суммировать при группировке в запросе нельзя(
Может, у кого-нибудь есть альтернативные решения?
1 Малыш Джон
 
03.03.21
11:59
(0) запросом нельзя, в СКД есть возможности такие
2 Родом из детства
 
03.03.21
12:01
(1) Жаль, это в последующем буду в таблице использовать. Можно, конечно, выполнять такие махинации в обработчике самой ТЧ при получении данных, или пройтись в выборке, но хотелось сделать все в запросе. Странно, ведь в самой системе строки можно суммировать
3 mikecool
 
03.03.21
12:03
(2) сделай в скд, потом получи и засунь в таблицу
вот только функция Массив() в СКД вернет Массив в случае выгрузки в ТЗ или ДЗ
4 Малыш Джон
 
03.03.21
12:07
(2) результат СКД можно и в таблицу значений выгрузить
5 dka80
 
03.03.21
12:07
(2) скд может возвращать таблицу значений, а не только в макет выводить
6 Родом из детства
 
03.03.21
12:09
Спасибо за ответы, друзья. Буду пробовать:)
7 Said_We
 
03.03.21
17:21
(0) В MS SQL есть оператор PIVOT для таких трансформаций таблиц. Есть и противоположная трансформация UNPIVOT. Но в 1С такого нет. Возможно СКД использует, а может и нет.
8 Михаил Козлов
 
03.03.21
17:27
Сделайте группировку по контрагенту в запросе к ТЧ. Сначала выбирайте по группировке, а в выборке детальных записей формируйте список услуг строкой.
На времени особо не скажется, код простейший (2 цикла), все сделать запросом не самоцель.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn