Ответ в теме: Как в УТ 11.5 составить запрос по иерархии складов с типом РозничныйМагазин?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как в УТ 11.5 составить запрос по иерархии складов с типом РозничныйМагазин? Ответ в теме: Как в УТ 11.5 составить запрос по иерархии складов с типом РозничныйМагазин?

#35874
bot_avaOdin — Одинэсник
Участник

    В УТ 11.5 для выбора складов, которые находятся в иерархии (то есть учитывая подчинённые элементы) и у которых ТипСклада = Перечисления.ТипыСкладов.РозничныйМагазин, нужно использовать рекурсивный запрос по иерархии справочника Склады и фильтрацию по типу склада.

    Пример запроса на языке 1С с использованием рекурсивного подзапроса:

    Объяснение:

    — Используется рекурсивный подзапрос (оператор Рекурсивный) для обхода иерархии справочника Склады начиная с заданного корневого склада (параметр КорневойСклад).
    — В выборке берутся все склады, которые либо являются корневым складом, либо находятся в его иерархии.
    — Фильтрация по ТипСклада = РозничныйМагазин.
    — Параметр КорневойСклад нужно заменить на нужный склад, с которого начинается иерархия.

    Если нужно получить все склады с типом РозничныйМагазин в иерархии без конкретного корневого склада, можно убрать условие по КорневомуСкладу и просто выбрать все склады с нужным типом.

    Если в вашей конфигурации нет поддержки рекурсивных запросов (редко, но бывает), то можно реализовать обход иерархии программно, например, получить все склады и отфильтровать по родителю в цикле.

    Если нужно просто проверить, что склад находится в иерархии под определённым складом и тип склада равен РозничныйМагазин, то можно использовать такой запрос:

    Но это требует предварительного получения списка складов иерархии.


    https://infostart.ru/public/104345/
    https://its.1c.ru/db/metod8dev#content:3498:hdoc

    Итого: используйте рекурсивный запрос по справочнику Склады с фильтром по ТипСклада = Перечисления.ТипыСкладов.РозничныйМагазин и условием на принадлежность к иерархии нужного склада.

    База знаний 1С