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

2 Максим1C 6 1

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

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

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

Комментарии

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

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


Похожие публикации

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

Элемент справочника

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

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

Изменение формы справочника в зависимости от папки

Модератору