7.7 Проверка наличия группы в группе справочника

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Black Cat, 17 янв 2011.

  1. TopicStarter Overlay
    Black Cat
    Offline

    Black Cat Опытный в 1С

    Регистрация:
    18 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Есть иерархический многоуровневый справочник Номенклатура. Нужно узнать, есть ли в группе еще подгруппы низшего уровня. Как это сделать программно ?
  2. TopicStarter Overlay
    Black Cat
    Offline

    Black Cat Опытный в 1С

    Регистрация:
    18 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    мне нужно получить все группы, не имеющие в себе подгруппы.
  3. WaRDeR
    Offline

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

    Регистрация:
    23 ноя 2006
    Сообщения:
    3.263
    Симпатии:
    14
    Баллы:
    29
    В чем конкретно загвоздка?
    1. Перебираешь элементы с учетом иерархии
    2. Проверяешь каждый элемент, является ли он группой
    3. Найдя первый элемент прерываешь цикл
  4. TopicStarter Overlay
    Black Cat
    Offline

    Black Cat Опытный в 1С

    Регистрация:
    18 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Я тоже так думал, но: у меня выборка идет как цикл в цикле. Если я ставлю во вложенном цикле оператор Прервать, то он выкидывает в конец внешнего цикла. Как это обойти. Через метку ?
  5. WaRDeR
    Offline

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

    Регистрация:
    23 ноя 2006
    Сообщения:
    3.263
    Симпатии:
    14
    Баллы:
    29
    делай несколькими переборами:
    первым выбираешь группы - заносишь в список
    потом перебираешь группы в списке, и внутри каждой делаешь проверку

    Хотя если покумекать, можно попробовать через запрос, используя функцию счетчик с условием когда.

    Еще интересный вариант - одним перебором заполнять 2 списка. В один список заносишь сам элемент, если он группа, во второй его родителя.
    Потом из первого списка исключаешь второй, и аллляяя у тебя нужный результат.

    ЗЫ все зависит от конкретной задачи и конкретной ИБ (и ее наполнения). Возможно найдутся более приемлемые варианты, а это первое, что пришло в голову.

    Брось это... любой алгоритм можно построить без безусловного перехода. Пусть он иногда и выглядит не так красиво как с этими переходами, но всегда логичнее.
  6. TopicStarter Overlay
    Black Cat
    Offline

    Black Cat Опытный в 1С

    Регистрация:
    18 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Задача такая: получить все группы из справочника Номенклатура ТиС 933 не имеющие в своем составе подгруппы.
    Спасибо. Буду пробовать
  7. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Используй ЭтоГруппа и Родитель

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