Основы. Поиск элемента в справочнике

Поиск элемента:
СпрСотр = СоздатьОбъект(“Справочник.Сотрудники”);
Если СпрСотр.НайтиЭлемент(ВыбрСотр)=1 Тогда
....//элемент становится текущим
....СпрСотр.Родитель = грпРаботающие;
....СпрСотр.Записать();
КонецЕсли;

Поиск по коду
Если СпрСотр.НайтиПоКоду(1) = 1 Тогда
....ЭлементИлиГруппа = СпрСотр.ТекущийЭлемент();
КонецЕсли;

Поиск по наименованию
Если СпрСотр.НайтиПоНаименованию(“Работающие”)=1 Тогда
....грпРаботающие = СпрСотр.ТекущийЭлемент();
КонецЕсли;
Режим = 1; // 1 – поиск внутри установленного подчинения (родителя) (по умолч.); 0 – поиск во всем справочнике
ФлагПоиска = 0; //1 – найти точное соответствие; 0 – найти наименование по первым символам (по умолчанию)
СпрСотр.ИспользоватьРодителя(грпРаботающие);
Если СпрСотр.НайтиПоНаименованию(“Ив”,Режим,ФлагПоиска)=1 Тогда
....ПервыйРаботающийИв = СпрСотр.ТекущийЭлемент();
КонецЕсли;

Поиск по реквизиту
ИмяРекв = “Год”; //у реквизита должен быть установлен флажок Сортировка в Конфигураторе
ФлагГлобПоиска = 1; // 1- искать во всем справочнике, 0 – искать в пределах подчинения
Если СпрСотр.НайтиПоРеквизиту(ИмяРекв,1980,ФлагГлобПоиска)=1 Тогда
.....НайденныйЭлемент = СпрСотр.ТекущийЭлемент();
КонецЕсли;

Поиск элемента в цикле
СпрСотр = СоздатьОбъект(“Справочник.Сотрудники”);
СпрСотр.ИспользоватьРодителя(грпРаботающие);
СпрСотр.ИспользоватьДату(РабочаяДата());
СпрСотр.ВыбратьЭлементы();
Пока СпрСотр.ПолучитьЭлемент()=1 Цикл
Если СпрСотр.Должность = длжПлотник Тогда
....Прервать; //нашли работающего плотника! выйти из цикла
КонецЕсли;
КонецЦикла;
<действия с найденным элементом>

| опубликовано: 23 Март 2009, 17:14

Комментирование этой статьи закрыто