0

Справочник
Метод НайтиПоКоду()

Ищет элемент справочника по коду \ полному коду

Синтаксис

Метод НайтиПоКоду() имеет следующий синтаксис:

число НайтиПоКоду(Код, [Режим])

А также альтернативный англоязычный синтаксис:

number FindByCode(Code, [Mode])

Параметры

Описание параметров метода НайтиПоКоду():

Имя параметра Тип Описание
Код Строка,Число числовой или строковый код справочника (выполняется попытка неявного преобразования к нужному типу)
Режим Число режим поиска

0 — поиск во всем справочнике вне зависимости от родителя (значение по умолчанию, когда для справочника настроен контроль уникальности кода во всем справочнике)
1 — поиск внутри установленного родителя или подчинения
2 — поиск по полному коду (значение по умолчанию, когда для справочника настроен контроль уникальности кода в пределах группы)
Жирным шрифтом выделены обязательные параметры

Возвращаемое значение

Число

1 — элемент справочника найден
0 — в противном случае

Описание

Метод НайтиПоКоду() выполняет поиск элемента справочника по его коду. Поскольку, данный метод является позиционирующим (см. описание метода Выбран()), его можно использовать только для объектов, созданных функцией СоздатьОбъект(). При подборе значений фактических параметров метода следует руководствоваться настройками, указанными для справочника в конфигурации:

  • Серии кодов — правила генерации кодов и контроля их уникальности (буква А на рис. ниже);
  • Тип кода — числовой или строковый (буква Б на рис. ниже);

Настройка типа кода и контроля уникальности для справочника в 1с 7.7

Внимание! Если для справочника настроена уникальность кода в пределах группы, для поиска необходимо, либо устанавливать родителя, либо использовать полный код (см. описание метода ПолныйКод()).

Пример использования

Пример кода с использованием метода НайтиПоКоду():

//поиск в справочнике с уникальностью кода во всем справочнике
Справочник = СоздатьОбъект("Справочник.Товары");
//Режим = 0 (по умолчанию)
Если Справочник.НайтиПоКоду(Код) = 1 Тогда
	Сообщить("По коду " + Код + " найден товар: " + Справочник.Наименование);
Иначе
	Сообщить("Упс! По коду " + Код + " ничего не нашлось(");
КонецЕсли;

//поиск в иерархическом справочнике с уникальностью кода в группе
//1. с использованием родителя
Справочник = СоздатьОбъект("Справочник.Контрагенты");
Справочник.ИспользоватьРодителя(ВыбГруппаКонтрагентов);
//Режим = 1 (поиск внутри родителя)
Если Справочник.НайтиПоКоду(Код, 1) = 1 Тогда
	Сообщить("По коду " + Код + " найден контрагент: " + Справочник.Наименование);
Иначе
	Сообщить("Упс! По коду " + Код+ " ничего не нашлось(");
КонецЕсли;

//2. по полному коду
Справочник = СоздатьОбъект("Справочник.Контрагенты");
//Режим = 2 (по умолчанию)
Если Справочник.НайтиПоКоду(Код) = 1 Тогда
	Сообщить("По коду " + Код + " найден контрагент: " + Справочник.Наименование);
Иначе
	Сообщить("Упс! По полному коду " + Код + " ничего не нашлось(");
КонецЕсли;

//Код = "2"
// По коду 2 найден товар: Стул складной
// По коду 2 найден контрагент: Бегония
// По коду 2 найден контрагент: ПОСТАВЩИКИ
//Код = "2/1"
// Упс! По коду 2/1 ничего не нашлось!
// Упс! По коду 2/1 ничего не нашлось!
// По коду 2/1 найден контрагент: Василек

Читайте также:

  1. Метод Справочник.НайтиЭлемент()
  2. Метод Справочник.НайтиПоНаименованию()
  3. Метод Справочник.НайтиПоРеквизиту()

Поделиться страницей в соц.сетях

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *