Имя: Пароль:
1C
1С v8
СКД, использование агрегатных функций в вычисляемых полях
0 servs
 
15.01.13
19:56
Есть запрос в котором список документов в шапке - контрагент. По кажому документу левым соединением добавляю контактных лиц по контрагенту, тем самым дублируя строки в результате запроса.

Выношу КонтактноеЛицо в ресурс, формула: СоединитьСтроки(Массив(КонтактноеЛицо), ", ")

При выводе в таблицу значений получил следующее:
Настройка вариант 1:
группировка(в одну стоку): Документ, КонтактноеЛицо,
детальных записей нет
Результат: в ТЗ выгружен только ресурс, других полей нет.

Настройка вариант 2:
группировка(в одну стоку): Документ, КонтактноеЛицо,
детальные записи есть
Результат: в ТЗ выгружаются все поля, но с дублированием строк из-за группировки.

Как выводить строки в ТЗ из СКД, без дублирования, не применяя метод свернуть у таблицы значений?

Как поменять запрос, чтобы потом можно было бы не использовать группировку в настройках СКД, а использовать СоединитьСтроки(Массив(КонтактноеЛицо), ", ") в вычисляемом поле?
1 Fragster
 
гуру
15.01.13
19:58
два набора данных
2 Fragster
 
гуру
15.01.13
19:58
не вычисляемое поле, а формула у ресурса с контактными лицами
3 servs
 
15.01.13
20:03
(1) не охота запрос разбивать

(2) по второму варианту решения, надо как-то получить результат в примерно таком виде:

ВЫБРАТЬ
   ЗаказПокупателя.Номер,
   ЗаказПокупателя.Товары.(
       НомерСтроки
   )
ИЗ
   Документ.ЗаказПокупателя КАК ЗаказПокупателя

А потом по полю таблицы значений применить агрегатную функцию в вычисляемом поле

только вместо таблицы Товары у меня временная таблица, соединение между временной таблицей и таблицей документов  по полю Контрагент
4 servs
 
15.01.13
20:13
мысли вслух: чтобы уйти от дублирования строк в ТЗ получаемых в результате группировки, необходимо отказаться от использования ресурса в СКД, тогда строку нужно суммировать в вычисляемом поле, но для этого нужно по другому формировать запрос
5 servs
 
15.01.13
20:14
В результате запроса тип поля с контактными лицами должен быть или Массив или Таблица значений.
6 servs
 
15.01.13
20:20
насколько я понимаю никак, это справедливо только для табличных частей документов.
7 servs
 
15.01.13
20:22
предложенный вариант, разделения на 2 набора данных, остается единственным, жаль.
8 Fragster
 
гуру
15.01.13
20:25
(7) у тебя дублирование строк не из-за группировки, а из-за соединения. если 2 набора данных, то умная СКД правильно всякие суммы считать будет, а если соединение - то нужно долго выеживаться с формулами
9 servs
 
15.01.13
20:31
(8) да, соединение я делал специально, чтобы в одной таблице получить все документы и все контактные лица по каждому документу. Группировкой пытался уйти от дублирования, искусственно созданного.

Спасибо, мысль понял.