Обход иерархии справочника 2

Максим1C 7 1

Иерархия добавим в массив

Функция ПолучитьВерхнегоРодителяНоменклатуры(мНом)
	
	ЗапросПодразделения = Новый Запрос; 
		ЗапросПодразделения.Текст = 
			"ВЫБРАТЬ
			|   Номенклатура.Ссылка КАК Ссылка
			|ИЗ
			|    Справочник.Номенклатура КАК Номенклатура
			|ГДЕ
			|    Номенклатура.Ссылка = &Ссылка
			|ИТОГИ ПО
			|    Ссылка ТОЛЬКО ИЕРАРХИЯ";
		ЗапросПодразделения.УстановитьПараметр("Ссылка",мНом);

		Выборка = ЗапросПодразделения.Выполнить().Выбрать();
		МассивРодителей = Новый Массив;
		Пока Выборка.Следующий() Цикл 
			
			Если Выборка.Ссылка.ЭтоГруппа Тогда
				МассивРодителей.Добавить(Выборка.Ссылка);
			КонецЕсли;	
		КонецЦикла;	
Возврат МассивРодителей
1
{23} Ожидается EndFunction

Комментарии

babys
#1, 15 марта 2017 10:25

Нахрена весь этот гиморой?
ВЫБРАТЬ
ДоговорыКонтрагентов.Ссылка КАК Ссылка
ИЗ
Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
ГДЕ
НЕ ДоговорыКонтрагентов.ПометкаУдаления
И ДоговорыКонтрагентов.ЭтоГруппа
И ДоговорыКонтрагентов.Родитель = ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
Пользуйся 😃


См. также

ЗаполнитьИерархиюВерсий (БСП)

Запись документа XML иерархия

ОбходФайловРазмер (БСП)

Выгрузка Запроса в XML документ, в виде дерева(В Виде иерархии)

ОбновитьСоставыГруппПользователей (БСП)

Функция возвращает иерархию типов свойств для ТипОбъектаXDTO

Таблица значений

ЭтоСправочникФайлы (БСП)

Модератору