Поиск по коду в иерархическом подчиненном справочнике #402303


#0 by suneagle
Что имеем: - Подчиненный иерархический справочник. Серии кодов в пределах подчинения. Возникла ситуация, когда коды пересеклись, но у разных владельцев. Как найти по коду у конкретного владельца? Какой код выдает первое попавшееся значение, без учета владельца, и к сожалению не то что нужно.
#1 by Нуф-Нуф
Синтаксис: НайтиПоКоду(<Код>,<ФлагПоиска>) Назначение: Найти элемент справочника по коду. Возвращает: 1 - если действие выполнено; 0 - если действие не выполнено (элемент не найден). Параметры: <Код> - выражение со значением искомого кода, <ФлагПоиска> - флаг поиска (необязателен):  0 - поиск во всем справочнике вне зависимости от родителя;  1 - поиск внутри установленного подчинения (родителя);  2 - поиск по полному коду через разделитель. Значение по умолчанию:  0 - если код уникален во всем справочнике;  2 - если код уникален только в группе. Замечание: Метод  можно использовать только для объектов, созданных функцией СоздатьОбъект.
#2 by suneagle
<Флаг поиска> регулирует поиск в зависимости от родителя, но не владельца. У меня же иерархия папок довольно сложная, не мной организованная. Уверен что такое можно запросом найти, но как то по таким мелочам запрос гонять не хочется...
#3 by Нуф-Нуф
а ты попробуй с флагом 1
#4 by FanatToNight
Вариант: Если СпрВидыСубконто.НайтиПоНаименованию("КОСГУ") > 0 Тогда
#5 by Привратник
С флагом можно, но тогда придется находить все папки и искать в каждой отдельно. Это такой ляпсус 1С - флаг учитывает подчинение и родителю и владельцу и нельзя сделать так, чтобы подчинение владельцу учитывалось, а родителю нет. Поэтому в подчиненных справочниках лучше не использовать иерархию по родителю или делать так, чтобы папки-родители были легко известны.
#6 by suneagle
Я так и подумал... В принципе у того владельца по которому я ищу, есть возможность вычислить родительские папки, но такая иерархия только у него, и соответственно пропадает необходимость заморачиваться с владельцем :)
#7 by orefkov
select id [Элемент $Справочник.Подчиненный] from $Справочник.Подчиненный where code=:ВыбКод and parentext=:ВыбВладелец
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С