Получение полного пути к товару через запрос 1С
Сделал себе в качестве памятки. Запрос должен выглядеть так:
ВЫБРАТЬ
Т.Ссылка.Наименование КАК Наименование,
ВЫБОР КОГДА ЕСТЬNULL(Т.Ссылка.Родитель.Родитель.Родитель.Родитель.Родитель, ЗНачение(Справочник.Номенклатура.ПустаяСсылка)) = ЗНачение(Справочник.Номенклатура.ПустаяСсылка) ТОГДА "" ИНАЧЕ Т.Ссылка.Родитель.Родитель.Родитель.Родитель.Родитель.Наименование + "\" КОНЕЦ +
ВЫБОР КОГДА ЕСТЬNULL(Т.Ссылка.Родитель.Родитель.Родитель.Родитель, ЗНачение(Справочник.Номенклатура.ПустаяСсылка)) = ЗНачение(Справочник.Номенклатура.ПустаяСсылка) ТОГДА "" ИНАЧЕ Т.Ссылка.Родитель.Родитель.Родитель.Родитель.Наименование + "\" КОНЕЦ +
ВЫБОР КОГДА ЕСТЬNULL(Т.Ссылка.Родитель.Родитель.Родитель, ЗНачение(Справочник.Номенклатура.ПустаяСсылка)) = ЗНачение(Справочник.Номенклатура.ПустаяСсылка) ТОГДА "" ИНАЧЕ Т.Ссылка.Родитель.Родитель.Родитель.Наименование + "\" КОНЕЦ +
ВЫБОР КОГДА ЕСТЬNULL(Т.Ссылка.Родитель.Родитель, ЗНачение(Справочник.Номенклатура.ПустаяСсылка)) = ЗНачение(Справочник.Номенклатура.ПустаяСсылка) ТОГДА "" ИНАЧЕ Т.Ссылка.Родитель.Родитель.Наименование + "\" КОНЕЦ +
ВЫБОР КОГДА ЕСТЬNULL(Т.Ссылка.Родитель, ЗНачение(Справочник.Номенклатура.ПустаяСсылка)) = ЗНачение(Справочник.Номенклатура.ПустаяСсылка) ТОГДА "" ИНАЧЕ Т.Ссылка.Родитель.Наименование КОНЕЦ
КАК ПолныйПуть
ИЗ Справочник.Номенклатура КАК Т ГДЕ НЕ Т.ЭтоГруппа
Без обработки NULL корректно не работает.
Результата на типовой УНФ выглядит так:

Мне понадобилось для переноса из старой базы УПП в новую УНФ, моя обработка загрузки номенклатуры умеет подгружать папки по полному пути.
UPD: добавил готовый кусок для вставки в запрос в коде модуля:
| ВЫБОР КОГДА ЕСТЬNULL(Т.Ссылка.Родитель.Родитель.Родитель.Родитель.Родитель, ЗНачение(Справочник.Номенклатура.ПустаяСсылка)) = ЗНачение(Справочник.Номенклатура.ПустаяСсылка) ТОГДА """" ИНАЧЕ Т.Ссылка.Родитель.Родитель.Родитель.Родитель.Родитель.Наименование + ""\"" КОНЕЦ +
| ВЫБОР КОГДА ЕСТЬNULL(Т.Ссылка.Родитель.Родитель.Родитель.Родитель, ЗНачение(Справочник.Номенклатура.ПустаяСсылка)) = ЗНачение(Справочник.Номенклатура.ПустаяСсылка) ТОГДА """" ИНАЧЕ Т.Ссылка.Родитель.Родитель.Родитель.Родитель.Наименование + ""\"" КОНЕЦ +
| ВЫБОР КОГДА ЕСТЬNULL(Т.Ссылка.Родитель.Родитель.Родитель, ЗНачение(Справочник.Номенклатура.ПустаяСсылка)) = ЗНачение(Справочник.Номенклатура.ПустаяСсылка) ТОГДА """" ИНАЧЕ Т.Ссылка.Родитель.Родитель.Родитель.Наименование + ""\"" КОНЕЦ +
| ВЫБОР КОГДА ЕСТЬNULL(Т.Ссылка.Родитель.Родитель, ЗНачение(Справочник.Номенклатура.ПустаяСсылка)) = ЗНачение(Справочник.Номенклатура.ПустаяСсылка) ТОГДА """" ИНАЧЕ Т.Ссылка.Родитель.Родитель.Наименование + ""\"" КОНЕЦ +
| ВЫБОР КОГДА ЕСТЬNULL(Т.Ссылка.Родитель, ЗНачение(Справочник.Номенклатура.ПустаяСсылка)) = ЗНачение(Справочник.Номенклатура.ПустаяСсылка) ТОГДА """" ИНАЧЕ Т.Ссылка.Родитель.Наименование КОНЕЦ
| КАК ПолныйПуть