Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Чем заменить "ИТОГИ ПО ИЕРАРХИЯ" ?
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
Slon747
Есть такой запрос:
ВЫБРАТЬ
    Номенклатура.Ссылка КАК Ссылка,
    Номенклатура.Наименование,
    Номенклатура.ЭтоГруппа
ИЗ
    Справочник.Номенклатура КАК Номенклатура
ГДЕ
    Номенклатура.Ссылка В(&МассивНоменклатуры)
ИТОГИ ПО
    Ссылка ИЕРАРХИЯ


Выдает иерархическое дерево:
-Каталог1
--Каталог2
---Товар1

Но мне нужно вывести товары не по иерархии номенклатуры, а по иерархии реквизита номенклатуры.
Т.е. у каждого элемента номенклатуры установлен реквизит "ИнтернетГруппа" (иерархический справочник "ИнтернетСтруктура").
Хочу получить такое дерево:
-ИнтернетГруппа1
--ИнтернетГруппа2
---Товар1

Как можно такое реализовать?
alex1c
Slon747 @ Сегодня, 12:50 необходимо зарегистрироваться для просмотра ссылки ,
Подивіться як виводяться працівники по підрозділам.
Slon747
Цитата(alex1c @ 29.12.23, 14:19) необходимо зарегистрироваться для просмотра ссылки
Подивіться як виводяться працівники по підрозділам.


А де дивитись?
nik389
Slon747 @ Сегодня, 13:50 необходимо зарегистрироваться для просмотра ссылки ,
так само як і зараз робите
замість
ИТОГИ ПО
    Ссылка ИЕРАРХИЯ


ИТОГИ ПО
    ВашРеквизит ИЕРАРХИЯ
Slon747
nik389 @ Сегодня, 16:01 необходимо зарегистрироваться для просмотра ссылки ,
Я так пробував.
Тоді посилання групи (мій реквізит) виводиться лише для елемента номенклатури

Тобто тепер так:
ВЫБРАТЬ
    Номенклатура.Ссылка КАК Ссылка
ИЗ
    Справочник.Номенклатура КАК Номенклатура
ГДЕ
    Номенклатура.Ссылка В(&МассивНоменклатуры)
ИТОГИ ПО
    Номенклатура.ИнтернетГруппа ИЕРАРХИЯ


Результат:
ИнтернетГруппа     |    Ссылка
------------------------------------------------------
ИнтернетГруппа1    |
   ИнтернетГруппа2 |
                   | Товар1
nik389
Slon747 @ Сегодня, 17:35 необходимо зарегистрироваться для просмотра ссылки ,
звісно для елемента, ви ж виборку робите по довіднику Номенклатури
якщо вам треба, щоб у виборці були усі елементи з ИнтернетГруп, тоді робіть виборку по тому довіднику та поєднайте з довідником номенлатури
Slon747
Цитата(nik389 @ 29.12.23, 17:35) необходимо зарегистрироваться для просмотра ссылки
якщо вам треба, щоб у виборці були усі елементи з ИнтернетГруп, тоді робіть виборку по тому довіднику та поєднайте з довідником номенлатури

Мені потрібні не всі елементи ИнтернетГруп. Потрібно вивести єлементи номенклатури з іерархіею по реквізиту ИнтернетГруп
alex1c
Slon747 @ Сегодня, 16:35 необходимо зарегистрироваться для просмотра ссылки ,

ось приклад:
ВЫБРАТЬ
    РаботникиСрезПоследних.Подразделение КАК Подразделение,
    РаботникиСрезПоследних.ФизЛицо
ИЗ
    РегистрСведений.Работники.СрезПоследних КАК РаботникиСрезПоследних


в компоновкі вибираєте перше групування по підрозділу, друге по по фізОсобі, виходить те що вам потрібно.
замініть в моєму запиті на свій, все норм.
Slon747
alex1c @ Сегодня, 17:58 необходимо зарегистрироваться для просмотра ссылки ,
Дякую.
Згрупував так:
ИТОГИ ПО
    Номенклатура.ИнтернетГруппа ИЕРАРХИЯ,
    Ссылка

Дійсно, в консолі запитів все гарно.
Але мені потрібен не звіт, а дерево, яке треба передати в процедуру.
А в дереві у мене зовсім не так, як хоче процедура.
Гадаю, буду будувати логіку щоб після отримання результату перебирати дерево.
Slon747
В общем, дальнейшее изучение типовой логики показало то, что сами элементы в дереве нафиг не нужны:
    Для Каждого СтрокаДерева Из ДеревоГрупп Цикл
        
        Если НЕ СтрокаДерева.ЭтоГруппа Тогда
            Продолжить;
        КонецЕсли;


В запросе (Обмен с WEB - сайтом) они были только ради получения иерархии групп с отбором по элементам.
Так что мне не нужно было тратить уйму времени, а достаточно было внимательно изучить, что потом происходит с результатом запроса и написать свой запрос выборки нового спроавочника с иерархией.
Всем спасибо )
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.