Вход | Регистрация

1С:Предприятие ::

Метки: 

СКД: Как вывести некое значение на уровне иерархии?

Я
   Gorr
 
25.12.17 - 19:06
День добрый!
Первый набор данных состоит из элементов-листьев. Структура отчета состоит из группировки с иерархией.
Второй набор данных содержит как элементы-листья первого набора, так и элементы-группы получающиеся в результате построения СКД иерархии при формировании отчета.
связь наборов данных осуществляется по элементам первого и второго наборов.
В результате работы отчета не присоединяются данные второго набора по элементам-группам достроенные иерархией СКД от первого набора.
Как обеспечить присоединение данных второго набора как элементам-листьям, так и к элементам-группам?
 
  Рекламное место пустует
   mistеr
 
1 - 25.12.17 - 19:43
Объединить вместо связи?
   kittystark
 
2 - 25.12.17 - 23:51
во втором наборе надо избавиться от групп и грамотно прописать ресурс, возможно даже 2 раза:

для элементов можно задать одно выражение ресурса, для групп совершенно другое
   Gorr
 
3 - 26.12.17 - 12:18
1. Наверняка специалисты давно поняли что, речь идет об иерархии элементов.

(1) Если предлагается в результат запроса добавить неконцевые элементы, то получим эффект задвоения. Первый раз элементы-группы из СКД при формировании иерархии, второй раз из результата запроса. Причем те, что вернет запрос будут отображены как конечные элементы в отчете.
(2) второй набор (левое соединение) возвращает именно значения для групп выстроенных иерархией СКД. Которые нужно вывести напротив каждой группы. Вот как этого добится и есть вопрос данной темы.
   kittystark
 
4 - 26.12.17 - 12:40
в первом наборе не номенклатура часом?

и ваще, давай свои запросы
   Gorr
 
5 - 26.12.17 - 12:44
(4) разве в номенклатуре иерархия групп и элементов?
   Gorr
 
6 - 26.12.17 - 12:46
в качестве источника можете представить структуру предприятия например. но это не важно для решения.
   Buster007
 
7 - 26.12.17 - 12:51
а если плоский список вывести без использования иерархии, то элементы, которые в иерархии не выводятся, присутствуют?
   kittystark
 
8 - 26.12.17 - 12:57
(5) да
   Gorr
 
9 - 26.12.17 - 13:03
(7) Повторяю условие: первый набор данных содержит концевые элементы только. второй набор данных содержит значения как для элементов групп, так и концевых элементов. Если отключить иерархию, получим что? Правильно - список конечных элементов с присоединенными значениями из второго набора. Иерархии в отчете в этом случае не будет, как не будет и элементов-груп.
   kittystark
 
10 - 26.12.17 - 13:04
сделай ручками demo-табличку и кинь скрин с разъяснениями того что хочется получить...

тяжело бороздить по просторам чужой мысли
 
 
   Gorr
 
11 - 26.12.17 - 13:15
Нужно получить отчет:

-Элемент-Группа1     Значение1     
-  Элемент-Группа2   Значение2
-    Элемент-Группа3 NULL
       Элемент-Лист1 Значение3
       Элемент-Лист2 NULL
       Элемент-Лист3 Значение4
       Элемент-Лист4 Значение5
       Элемент-Лист5 NULL

Результат запроса первого набора данных:
Элемент-Лист1
Элемент-Лист2
Элемент-Лист3
Элемент-Лист4
Элемент-Лист5

Результат запроса второго набора данных:
Элемент-Группа1 Значение1
Элемент-Группа2 Значение2
Элемент-Лист1   Значение3
Элемент-Лист3   Значение4
Элемент-Лист4   Значение5
   Gorr
 
12 - 26.12.17 - 13:19
готов уточнить более детально
   kittystark
 
13 - 26.12.17 - 13:49
супер

значения 1,2  как-то "аналитически" связаны со значениями 3..5 ?

Элемент-Группа3 NULL - это сильно
   mistеr
 
14 - 26.12.17 - 13:58
Дело в том, что на этапе соединения наборов данных в первом наборе еще нет иерархии, нет групп, поэтому связать такие элементы не получится.

Предположу, что нужно материализовать всю иерархию в первом наборе, а потом соединять. Например, сделать запрос с итогами, выгрузить в ТЗ/ДЗ, её пихнуть в СКД как набор-объект.
   kittystark
 
15 - 26.12.17 - 14:03
(14) в (3) первый ответ правильно гласит о задвоении
   Gorr
 
16 - 26.12.17 - 14:10
(14) я и сам понимаю, что на этапе соединения наборов иерархических элементов еще нет.
Тут скорее всего ответ - НИКАК либо как-то с ресурсами помудрить или как-то влезть в формирование иерархии. Быть может вычислимые поля или пользовательские поля как-то нужно правильно использовать.
   kittystark
 
17 - 26.12.17 - 14:10
я лично знаю 2 точно работающих варианта, третий надо думать:

1. "через-опу" в приКомпоновкеРезультата в цикле вывода определять какое поле сейчас выводится, и на ходу подменять значение, которое получать, например отдельным запросом

2. те же, только вид сбоку - прописать в глобальном модуле функцию, которая будет возвращать нужный результат, в ресурсе прописать вызов этой функции

3. в ресурсе прописать выражение "Групповая обработка"
   Gorr
 
18 - 26.12.17 - 14:18
Я вижу более красивый вариант на одном наборе: выборка элементов и элементов групп со всеми значениями. Соединение набора с самим собой по родителю. Структура: выборка детальных записей.
НО, это не ответ на вопрос)
Ответ - НИКАК.
   kittystark
 
19 - 26.12.17 - 14:58
(18) это смотря на какой вопрос отвечать )))
в теме  - "Как вывести некое значение на уровне иерархии?"


Список тем форума
  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует