Найти ссылку по реквизиту

SeiOkami 502 5 11 14

Возвращает первую ссылку по значению реквизита

// Возвращает первую ссылку по значению реквизита
// Источник: https://github.com/SeiOkami/CollectionMethodsOneS/issues/36
// 
// Параметры:
//  ОбъектМетаданных - ОбъектМетаданныхСправочник, ОбъектМетаданныхДокумент, ОбъектМетаданныхБизнесПроцесс, ОбъектМетаданныхЗадача, ОбъектМетаданныхПланВидовХарактеристик - 
//  ИмяРеквизита - Строка
//  ЗначениеРеквизита - Произвольный
// 
// Возвращаемое значение:
//  ЛюбаяСсылка
//
// Пример:
//	Результат = НайтиСсылкуПоРеквизиту(Метаданные.Справочники.ЖЧТ_ТестовыйСправочник, "Номер", 999);
//	//Результат - ссылка на элемент справочника (или найденная или пустая) 
//
Функция НайтиСсылкуПоРеквизиту(Знач ОбъектМетаданных, Знач ИмяРеквизита, Знач ЗначениеРеквизита) Экспорт
	
	ТекстЗапроса = СтрШаблон("ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1 Ссылка ИЗ %1 ГДЕ %2 = &П", 
		ОбъектМетаданных.ПолноеИмя(), ИмяРеквизита);
	
	Запрос = Новый Запрос(ТекстЗапроса);
	Запрос.УстановитьПараметр("П", ЗначениеРеквизита);
	РезультатЗапроса = Запрос.Выполнить();
	Если РезультатЗапроса.Пустой() Тогда
		Возврат ОбъектМетаданных.СтандартныеРеквизиты.Ссылка.Тип.ПривестиЗначение();
	Иначе
		Выборка = РезультатЗапроса.Выбрать();
		Выборка.Следующий();
		Возврат Выборка[0];
	КонецЕсли;
	
КонецФункции
1

Комментарии

John Doe
#1, 31 июля 2024 12:11

Ссылка на ГХ не открывается (ошибка 404).


См. также

ЗначениеРеквизитаОбъекта (БСП)

ЗначенияРеквизитовОбъекта (БСП)

ПроверитьСсылкиНаОбъект (БСП)

Конвертировать объект в структуру

НайтиСертификат (БСП)

Найти значение в строке

НайтиСтрокиТаблицы (БСП)

НайтиУстановленныеПрограммы (БСП)

Модератору