kb-personal/src/content/docs/knowledge-base/Общие/Общего назначения/Сравнить элементы перечисления.md
2025-10-07 14:16:34 +05:00

1.7 KiB
Raw Blame History

title, slug
title slug
Сравнить элементы перечисления общие-общего-назначения/сравнить-элементы-перечисления

В ERP Управление холдингом

Результат = ОбщегоНазначенияУХ.СравнитьЗначенияПеречисления(Значение1, Значение2);

Реализация

// Сравнивает два значения перечисления.
// Параметры:
//	Значение1 - ПеречислениеСсылка
//	Значение2 - ПеречислениеСсылка
// Возвращает:
//	Если значения равны, то возвращает 0.
//	Если Значение1 стоит раньше по порядку Значение2, то -1
//	Если Значение1 стоит позже по порядку Значение2, то 1
Функция СравнитьЗначенияПеречисления(Значение1, Значение2) Экспорт
	Если Значение1 = Значение2 Тогда
		Возврат 0;
	КонецЕсли;
	
	ПерчислениеМенеджер = Перечисления[Значение1.Метаданные().Имя];
	Индекс1 = ПерчислениеМенеджер.Индекс(Значение1);
	Индекс2 = ПерчислениеМенеджер.Индекс(Значение2);
	
	Если Индекс1 < Индекс2 Тогда
		Возврат -1;
	ИначеЕсли Индекс1 > Индекс2 Тогда
		Возврат 1;
	КонецЕсли;
	
	Возврат 0;
КонецФункции