Дубли при выводе иерархии элементов в СКД. Решение с работающим отбором в СКД.

1. AnderWonder 27 06.01.16 12:26 Сейчас в теме
Существует известная проблема платформы, описанная в публикации:
http://infostart.ru/public/298791/
Помимо решения в указанной публикации, есть и другие. Но во всех случаюх нарушается нормальное функционирование отборов в СКД. Т.е. при использовании отбора по реквизитам элементов в отчет выводятся не корректные данные или не выводятся вообще.
Необходимо решение проблемы с нормально работающими отборами.
SergeySol-82; +1 Ответить
Вознаграждение за ответ
Показать полностью
Найденные решения
9. 32ops 191 11.01.16 16:19 Сейчас в теме
(8) Возможно поможет (не проверял - нет рядом 1ски) сначала применить отборы и получить результат в ВТ (закладка компоновка данных-условия). А затем применить условие из (7).
antonio_i; +1 Ответить
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. Armando 1399 07.01.16 16:10 Сейчас в теме
(1) AnderWonder, приложил схему на примере спр Подразделений. Попробуй.
Прикрепленные файлы:
Иерархия.xml
alexey-simf; +1 Ответить
3. 32ops 191 07.01.16 18:24 Сейчас в теме
(1) Чем не устраивает добавление в Условие НЕ ЭтоГруппа? Если нужно выводить реквизиты справочника, можно в настройки две группировки: Ссылка (только иерархия), детальные записи. Проблемы будут, если отбор нужен по реквизитам групп, по реквизитам элементов должно отбираться нормально.
5. AnderWonder 27 11.01.16 12:28 Сейчас в теме
(3) 32ops, в справочнике иерархия элементов. Реквизит ЭтоГруппа отсутствует.
(4) crabzzy, внимательно читайте вопрос, указанное решение ломает отборы СКД.
(2) Armando, попробовал, проблема решается частично. Отбор почему-то не работает для некоторых элементов (у которых нет потомков), хотя для других отрабатывает корректно. Попробую ещё поэкспериментировать с этим способом.
6. 32ops 191 11.01.16 13:28 Сейчас в теме
(5) Сделал справочник с иерархией элементов. В отчете на СКД условие "ГДЕ Тест.Родитель <> ЗНАЧЕНИЕ(Справочник.Тест.ПустаяСсылка)". Отборы не сбиваются
alexey-simf; +1 Ответить
11. Gesperid 2 14.06.17 11:20 Сейчас в теме
(5) Продемонстрируй как (4) ломает отборы. Никак не получается сломать.
12. Gesperid 2 14.06.17 13:44 Сейчас в теме
(11)
Никак не получается сломать.

Отбой, получилось :)
7. 32ops 191 11.01.16 13:36 Сейчас в теме
(5) Ой, условие неправильное. Вот так наверное подойдет.
"ГДЕ НЕ Тест.Ссылка В (ВЫБРАТЬ Тест.Родитель ИЗ Справочник.Тест КАК Тест)"
8. AnderWonder 27 11.01.16 13:54 Сейчас в теме
(7) 32ops, это аналог решения (2). В результате в выборку не попадают элементы, которые являются родителями. Соответственно, условие отбора не применяется к ним и они не попадают в отчет, даже если подходят под условие отбора.
9. 32ops 191 11.01.16 16:19 Сейчас в теме
(8) Возможно поможет (не проверял - нет рядом 1ски) сначала применить отборы и получить результат в ВТ (закладка компоновка данных-условия). А затем применить условие из (7).
antonio_i; +1 Ответить
10. AnderWonder 27 12.01.16 10:27 Сейчас в теме
(9) 32ops, да таким образом удалось решить задачу.
15. romulanin 21.05.19 10:50 Сейчас в теме
18. MaCCapAkIII 14.09.23 14:53 Сейчас в теме
(9)Таким образом удалось решить проблему, но только частично. Если родитель дублируется, так как сам является необходимым в результате значением - он отрезается, и вместе с ним все связанные поля. То есть если с этим значением шло дополнительное поле - оно исключается. Подскажите пожалуйста как можно добавить исключенное СКД поле в родителя?
В приложении - дубли с заполненным полем "Описание изменений" и результат без дублей, но с пустым полем "Описание изменений", так как это теперь родитель а не нижнее значение в иерархии.

Upd. То есть по факту у меня запрос в СКД сначала отсекает записи, где родитель равен объекту, и только потом выводит результат с условием компоновки. Выходит значение "Описание изменений" для группировки "ТестоваяТЧ1" мне даже взять негде в текущей реализации. Не могу придумать как это обойти.
Прикрепленные файлы:
4. amaksimov 07.01.16 20:53 Сейчас в теме
(1) AnderWonder, в статье указана ссылка на Partners форум:
https://partners.v8.1c.ru/forum/topic/1035968
там хорошо описано как сделать (для версий платформы >= 8.2.14)

Максим Лейбович (1С, Москва) пишет (на примере справочника Номенклатура):

Можно отфильтровывать записи группировки, в которых значение в иерархической записи совпадает со значением самой записи.
1. Добавить пользовательское поле Родитель с выражением ВычислитьВыражение("Номенклатура", "", "Иерархия") и таким же выражением итога.
2. В группировку по иерархии добавляется группа условий ИЛИ с применением «После группировки или для иерархии».
В группу условий добавляется условие Номенклатура Не равно Родитель
В группу условий добавляется условие Уровень в группе Равно 1
3. Вложен пример схемы СКД от Максима Лейбович во вложении.
Прикрепленные файлы:
Временная схема.xml
kabantus; STivO; ya_anton; user1459868; SergeySol-82; BoBaH; burni4; Синицын; Hla; dreamerr7; wing; simich; moonlight27; SITR-utyos; vudu; +15 Ответить
13. SITR-utyos 1419 30.05.18 11:46 Сейчас в теме
(4) почему-то, когда создаешь поле в Вычисляемых полях и добавляешь его в ресурсы - платформа падает при компоновке.
С пользовательским полем - все ОК
14. toypaul 63 08.02.19 12:04 Сейчас в теме
у меня на платформе 8.3.8.2197 получилось сделать через вычисляемое поле. ничего не падает
16. manserg 104 13.04.20 15:12 Сейчас в теме
Коллеги, нужна помощь!
Уже уйму времени убил на попытки вывести произвольную иерархию комплектов номенклатуры с остатками.
Конфигурация каркасная, у справочника номенклатура есть табличная часть "СоставКомплекта" где собственно перечислен состав, но при этом там могут быть и другие комплекты, т.е. структура многоуровневая.
Так же есть простейший регистр остатков товаров с измерениями склад и номенклатура и ресурсом количество.

Собираю все нужные данные в следующих таблицах значений:
"ТаблицаОстатков":
"ТаблицаСостава": https://yadi.sk/i/OFD724Ho60pLqA

Поля Комплект и Элемент служат для построения иерархии и строят путем конкатенации кодов справочников начиная с первого родителя.

В СКД сделаны следующие настройки:
источник ТаблицаСостава: https://yadi.sk/i/g6lfdMgvdc6oPw
источник ТаблицаОстатков: https://yadi.sk/i/_F4kEJ-7aR_ImQ
настройка связей: https://yadi.sk/i/HlOnCOBsBBbxLQ
настройка отчета: https://yadi.sk/i/m3v0TRS0MtpX0g

Однако вместо ожидаемой иерархии получаю плоскую таблицу: https://yadi.sk/i/dSvfTPyZneFuZw

Что я делаю не так и как правильно построить произвольную иерархию с условием что в остатках по которым она должна строиться могут быть как элементы(без состава) так и многоуровневые комплекты?

P.S. Пытался формировать через ссылки элементов номенклатуры, но столкнулся с тем, что при наличии допустим остатка комплекта "Секция левая" и "Шкаф "Виктория"" который в себе содержит "Секция левая" получается задвоение строк в такой иерархии: https://yadi.sk/i/mDyua_FYqnh3Pg
Победить такое поведение по пытался построением сложных ключей элементов и их родителей чтобы они четко связывались без дублей, но иерархия вообще перестала строится (
17. user970589 10 04.07.22 23:06 Сейчас в теме
тоже бился над этой блин "фичей" от 1с. в консоли все прекрасно, при выводе построенного автоматом отчета по нему по две строки на рыло.
заходим в поля группировки, на редактирование и вместо пустого поля выбираем конкретное. все. дубли исчезают.
Прикрепленные файлы:
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)