Поиск реквизита в определенной группе справочника
24.06.2008
15:51
#1
Необходимо найти в справочнике определенный реквизит, в заранее заданной группе, в других группах может быть такой же реквизит. Использую функцию "НайтиПоРеквизиту", если выставлять <ФлагГлобальногоПоиска> в 1 то поиск идет по всему справочнику, в результате получаю реквизит из ненужной группы, если 0 то ничего не ищется.
Перед "НайтиПоРеквизиту" ставлю "ИспользоватьРодителя", не помогает.
Что нужно сделать чтобы "НайтиПоРеквизиту" искала в нужной группе, для чегото же дан этой функции параметр <ФлагГлобальногоПоиска>?
Перед "НайтиПоРеквизиту" ставлю "ИспользоватьРодителя", не помогает.
Что нужно сделать чтобы "НайтиПоРеквизиту" искала в нужной группе, для чегото же дан этой функции параметр <ФлагГлобальногоПоиска>?
25.06.2008
08:44
#3
Запрос это конечно замечательно, но зачем, когда можно обойтись 1-2 строчками 
Ведь функция, судя по описанию, делает то что нужно, единственное в чем нужно разобраться это как заставить её
искать в нужной группе справочника.
Ведь функция, судя по описанию, делает то что нужно, единственное в чем нужно разобраться это как заставить её
искать в нужной группе справочника.
26.06.2008
00:10
#5
> За это время уже как раз можно было написать запрос...
Или "разобраться, как ее заставить"
Или "разобраться, как ее заставить"
26.06.2008
07:12
#6
Это конечно же похвально, что Семенов Д.А. может написать запрос для замены любой встроенной функции, тут дело то в том, чтобы разобраться зачем функции такой параметр, как поиск в нутри подчинения, и как его задействовать.
27.06.2008
08:12
#7
"Из Справки 1С
НайтиПоРеквизиту(>,,);
Синтаксис:
НайтиПоРеквизиту(<ИмяРеквизита>,<Значение>,<ФлагГлобальногоПоиска>)
Назначение:
Найти элемент справочника по значению реквизита.
Возвращает: 1 - если действие выполнено;
0 - если действие не выполнено (элемент не найден).
Параметры:
<ИмяРеквизита> - строка с наименованием реквизита;
<Значение> - значение реквизита для поиска;
<ФлагГлобальногоПоиска> - флаг поиска:
0 - поиск выполняется в пределах подчинения справочника,
1 - поиск выполняется по всему справочнику.
Замечание:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Метод можно использовать только для реквизитов с установленным признаком ''Сортировка''.!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Метод можно использовать только для объектов, созданных функцией СоздатьОбъект.
//В качестве родителя должена быть передана ссылка на группу справочника
Спр = СоздатьОбъект("Справочник.ИмяСправочника");
Спр.ИспользоватьРодителя(Родитель);
Спр.НайтиПоРеквизиту("ИмяРеквизита",Значение,0) = 1 Тогда
Значение - должно быть того же типа, что и реквизит, естественно:)"
НайтиПоРеквизиту(>,,);
Синтаксис:
НайтиПоРеквизиту(<ИмяРеквизита>,<Значение>,<ФлагГлобальногоПоиска>)
Назначение:
Найти элемент справочника по значению реквизита.
Возвращает: 1 - если действие выполнено;
0 - если действие не выполнено (элемент не найден).
Параметры:
<ИмяРеквизита> - строка с наименованием реквизита;
<Значение> - значение реквизита для поиска;
<ФлагГлобальногоПоиска> - флаг поиска:
0 - поиск выполняется в пределах подчинения справочника,
1 - поиск выполняется по всему справочнику.
Замечание:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Метод можно использовать только для реквизитов с установленным признаком ''Сортировка''.!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Метод можно использовать только для объектов, созданных функцией СоздатьОбъект.
//В качестве родителя должена быть передана ссылка на группу справочника
Спр = СоздатьОбъект("Справочник.ИмяСправочника");
Спр.ИспользоватьРодителя(Родитель);
Спр.НайтиПоРеквизиту("ИмяРеквизита",Значение,0) = 1 Тогда
Значение - должно быть того же типа, что и реквизит, естественно:)"
Читают тему
(гостей: 1)