8.х Многоуровневая СКД

Тема в разделе "Система компоновки данных (СКД)", создана пользователем Speaker1982, 18 фев 2016.

  1. TopicStarter Overlay
    Speaker1982
    Offline

    Speaker1982 Опытный в 1С

    Регистрация:
    12 май 2011
    Сообщения:
    223
    Симпатии:
    5
    Баллы:
    29
    Добрый день,
    подскажите, можно ли средствами одной СКД (без кода) и как сформировать многоуровневый отчет

    Дано: регистр сведений "Ингридиенты" с реквизитами:
    Блюдо - справочник "Блюда"
    Ингредиент - справочник "Блюда"
    Вес - число

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

    Задача: разбить блюдо по ингредиентам до самого конца используя только регистр сведений
  2. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.977
    Симпатии:
    397
    Баллы:
    104
    Надеюсь это опечатка здесь. Если у Вас в базе так, то пусть горит в аду тот, кто создал регистр с таким наименованием.

    Если таких "вложений" заведомо не известно, то только с помощью рекурсии, а ее в СКД не сделаешь, только писать рекурсивную функцию. А если Вы четко знаете, что Блюдо из ингредиента, и входящий в него ингредиент из каких-то ингредиентов, и все, то запросом это сделать легко.
  3. TopicStarter Overlay
    Speaker1982
    Offline

    Speaker1982 Опытный в 1С

    Регистрация:
    12 май 2011
    Сообщения:
    223
    Симпатии:
    5
    Баллы:
    29
    вложений разное количество, неизвестное...
    регистр так не называется, но за что ему гореть в аду?
    если ответите на этот вопрос - покажу сколько людей вы туда хотите направить)
  4. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.977
    Симпатии:
    397
    Баллы:
    104
    Тогда рекурсия. Это только кодом.
    Из-за орфографической ошибки в первом сообщении. Хорошо, что это опечатка здесь.
    Сколько?! Одного. Один человек создает регистр и присваивает ему имя. Это априори не могут делать больше одного человека.
    P.S. Просто часто сталкиваюсь с наплевательским отношением горе-программистов, которые, ладно бы по невнимательности, а не по наплевательскому отношению к своему ремеслу допускали опечатки в названиях метаданных. И потом, принимать и начинать обслуживать такую конфигурацию зла не хватает. И волей-неволей начинаешь проклинать этих людей. Хорошо, что у Вас не так...
  5. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.548
    Симпатии:
    716
    Баллы:
    204
    Думаю, объединение двух таблиц как результатов левых соединений регистра самим с собой хватит для решения задачи. Проверять нужно.....
  6. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.977
    Симпатии:
    397
    Баллы:
    104
    А если в блюдо входит ингредиент, в который входит ингредиент, в который входит ингредиент, в который входит ингредиент? То двух таблиц маловато. Можно, кстати, сделать это и запросом, только придется ограничить количество уровней вложенности. Т.е. грубо говоря, строго пять уровней. Если будет больше, то запрос их уже не увидит. Для этого можно проанализировать систему, спрогнозировать данные и выявить подобную вложенность.
  7. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Посмотрите как в УПП делается разузлование спецификаций по комплектующим по сути дело то же самая задача,
    есть спецификация, в ней номенклатура по спецификации там то же номенклатура по спецификации и т.д.и останавливается пока вид воспроизводства Не Покупка.
  8. TopicStarter Overlay
    Speaker1982
    Offline

    Speaker1982 Опытный в 1С

    Регистрация:
    12 май 2011
    Сообщения:
    223
    Симпатии:
    5
    Баллы:
    29
    За орфографию, конечно же, прошу прощения - сам злюсь на это и тут допустил ошибку(
Похожие темы
  1. OlegA
    Ответов:
    4
    Просмотров:
    2.547
Загрузка...

Поделиться этой страницей