8.х каким методом в запросе обратиться к родителю номенклатуры

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Ленок87, 27 апр 2012.

  1. TopicStarter Overlay
    Ленок87
    Offline

    Ленок87 Опытный в 1С

    Регистрация:
    7 фев 2012
    Сообщения:
    261
    Симпатии:
    0
    Баллы:
    26
    Можно ли каким-либо методом в запросе обратиться к родителю номенклатуры , который самый первый (т.е. в справочнике номенклатура есть группа1 в ней еще группа2 а вот в ней данная номенклатура ->можно ли по этой номенклатуре обратиться к группе1)
  2. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.735
    Симпатии:
    508
    Баллы:
    204
    Можно попробовать Выбрать в Иерархии, и потом уже программно анализировать результат запроса.
  3. Azamat
    Offline

    Azamat Опытный в 1С

    Регистрация:
    29 июл 2011
    Сообщения:
    271
    Симпатии:
    0
    Баллы:
    26
    Можно, например так:
    Код:
    "ВЫБРАТЬ
    | Номенклатура.Родитель.Родитель
    |ИЗ
    | Справочник.Номенклатура КАК Номенклатура"
  4. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    ниче вычислять ненадо! пустая номенклатура - родитель корневого элемента. ;)))
  5. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    количество уровней вложенности известно?

    ЗЫ. если не в запросе, то можно использовать функцию ПринадлежитЭлементу(). боюсь в запросе с произвольным уровнем вложенности этого не сделать..
  6. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.735
    Симпатии:
    508
    Баллы:
    204
    У выборки есть еще такой метод Уровень(), можно за него как-то зацепиться.
  7. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    о че наваял на коленке для 4-х уровней. можно получить доступ к родительскому элементу через Уровень1... изврат конечно, зато через запрос. ;)



    Код:
    ВЫБРАТЬ
    Номенклатура.Ссылка КАК Уровень1
    ПОМЕСТИТЬ Таблица1
    ИЗ
    Справочник.Номенклатура КАК Номенклатура
    ГДЕ
    Номенклатура.Родитель = &Родитель
    ;
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    Таблица1.Уровень1,
    Номенклатура.Ссылка КАК Уровень2
    ПОМЕСТИТЬ Таблица2
    ИЗ
    Таблица1 КАК Таблица1
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
    ПО Таблица1.Уровень1 = Номенклатура.Родитель
    ;
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    Таблица2.Уровень1,
    Таблица2.Уровень2,
    Номенклатура.Ссылка КАК Уровень3
    ПОМЕСТИТЬ Таблица3
    ИЗ
    Таблица2 КАК Таблица2
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
    ПО Таблица2.Уровень2 = Номенклатура.Родитель
    ;
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    Таблица3.Уровень1,
    Таблица3.Уровень2,
    Таблица3.Уровень3,
    Номенклатура.Ссылка КАК Уровень4
    ИЗ
    Таблица3 КАК Таблица3
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
    ПО Таблица3.Уровень3 = Номенклатура.Родитель

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