Программно ограничить доступные значения перечисления

Клиенту понадобилось в зависимости от значения константы в разных базах общей конфигурации ограничивать список допустимых значений перечисления.

У констант нет параметров выбора, но можно использовать процедуру ОбработкаПолученияДанныхВыбора менеджера перечисления.

Получилось довольно просто:

Процедура ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка)
	Если Получить.ЭтоБазаХа() Тогда
		ДанныеВыбора = Новый СписокЗначений(); 
		ДанныеВыбора.Добавить(Перечисления.ТипыЦен.Значение);
		ДанныеВыбора.Добавить(Перечисления.ТипыЦен.Интервал);
		СтандартнаяОбработка = ложь;
	КонецЕсли;
КонецПроцедуры

И все работает как часы! Описание обработки получения данных выбора есть на ИТС.