#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
Процедура ПриНастройкеНачальногоЗаполненияЭлементов(Настройки) Экспорт
Настройки.ПриНачальномЗаполненииЭлемента = Истина;
КонецПроцедуры
Процедура ПриНачальномЗаполненииЭлементов(КодыЯзыков, Элементы, ТабличныеЧасти) Экспорт
Элемент = Элементы.Добавить();
МультиязычностьСервер.ЗаполнитьМультиязычныйРеквизит(Элемент, "Наименование", "ru = 'Высокий'", КодыЯзыков);
Элемент.РеквизитДопУпорядочивания = 1;
Элемент = Элементы.Добавить();
МультиязычностьСервер.ЗаполнитьМультиязычныйРеквизит(Элемент, "Наименование", "ru = 'Средний'", КодыЯзыков);
Элемент.РеквизитДопУпорядочивания = 2;
Элемент = Элементы.Добавить();
МультиязычностьСервер.ЗаполнитьМультиязычныйРеквизит(Элемент, "Наименование", "ru = 'Низкий'", КодыЯзыков);
Элемент.РеквизитДопУпорядочивания = 3;
КонецПроцедуры
Процедура ПриНачальномЗаполненииЭлемента(Объект, Данные, ДополнительныеПараметры) Экспорт
КонецПроцедуры
Функция ПолучитьНизшийПриоритет() Экспорт
Результат = Справочники.Приоритеты.ПустаяСсылка();
Запрос = Новый Запрос(
"ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
| Приоритеты.Ссылка КАК Приоритет,
| Приоритеты.РеквизитДопУпорядочивания КАК РеквизитДопУпорядочивания
|ИЗ
| Справочник.ПриоритетыОплаты КАК Приоритеты
|ГДЕ
| НЕ Приоритеты.ПометкаУдаления
|
|УПОРЯДОЧИТЬ ПО
| РеквизитДопУпорядочивания УБЫВ");
РезультатЗапроса = Запрос.Выполнить();
Если НЕ РезультатЗапроса.Пустой() Тогда
Выборка = РезультатЗапроса.Выбрать();
Выборка.Следующий();
Результат = Выборка.Приоритет;
КонецЕсли;
Возврат Результат;
КонецФункции
Функция ПолучитьВысшийПриоритет() Экспорт
Результат = Справочники.Приоритеты.ПустаяСсылка();
Запрос = Новый Запрос(
"ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
| Приоритеты.Ссылка КАК Приоритет,
| Приоритеты.РеквизитДопУпорядочивания КАК РеквизитДопУпорядочивания
|ИЗ
| Справочник.ПриоритетыОплаты КАК Приоритеты
|ГДЕ
| НЕ Приоритеты.ПометкаУдаления
|
|УПОРЯДОЧИТЬ ПО
| РеквизитДопУпорядочивания ВОЗР");
РезультатЗапроса = Запрос.Выполнить();
Если НЕ РезультатЗапроса.Пустой() Тогда
Выборка = РезультатЗапроса.Выбрать();
Выборка.Следующий();
Результат = Выборка.Приоритет;
КонецЕсли;
Возврат Результат;
КонецФункции
Функция ПолучитьПриоритетПоУмолчанию(Знач Приоритет) Экспорт
Результат = Справочники.ПриоритетыОплаты.ПустаяСсылка();
Если ЗначениеЗаполнено(Приоритет) Тогда
Результат = Приоритет;
Иначе
Запрос = Новый Запрос(
"ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
| Приоритеты.Приоритет КАК Приоритет,
| Приоритеты.РеквизитДопУпорядочивания КАК РеквизитДопУпорядочивания
|ИЗ
| (ВЫБРАТЬ ПЕРВЫЕ 2
| Приоритеты.Ссылка КАК Приоритет,
| Приоритеты.РеквизитДопУпорядочивания КАК РеквизитДопУпорядочивания
| ИЗ
| Справочник.ПриоритетыОплаты КАК Приоритеты
| ГДЕ
| НЕ Приоритеты.ПометкаУдаления
|
| УПОРЯДОЧИТЬ ПО
| РеквизитДопУпорядочивания УБЫВ) КАК Приоритеты
|
|УПОРЯДОЧИТЬ ПО
| РеквизитДопУпорядочивания ВОЗР");
РезультатЗапроса = Запрос.Выполнить();
Если Не РезультатЗапроса.Пустой() Тогда
Выборка = РезультатЗапроса.Выбрать();
Выборка.Следующий();
Результат = Выборка.Приоритет;
КонецЕсли;
КонецЕсли;
Возврат Результат;
КонецФункции
#КонецОбласти
#КонецЕсли
#Область ОбработчикиСобытий
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
Процедура ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ДанныеВыбора = Новый СписокЗначений;
Запрос = Новый Запрос(
"ВЫБРАТЬ
| Приоритеты.Ссылка КАК Ссылка,
| Приоритеты.ПометкаУдаления КАК ПометкаУдаления,
| Приоритеты.РеквизитДопУпорядочивания КАК РеквизитДопУпорядочивания,
| ПРЕДСТАВЛЕНИЕССЫЛКИ(Приоритеты.Ссылка) КАК Представление
|ИЗ
| Справочник.ПриоритетыОплаты КАК Приоритеты
|ГДЕ
| НЕ Приоритеты.ПометкаУдаления
|
|УПОРЯДОЧИТЬ ПО
| РеквизитДопУпорядочивания");
РезультатЗапроса = Запрос.Выполнить();
Если НЕ РезультатЗапроса.Пустой() Тогда
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
ДанныеВыбора.Добавить(Выборка.Ссылка, Выборка.Представление);
КонецЦикла;
КонецЕсли;
КонецПроцедуры
#КонецЕсли
Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)
МультиязычностьКлиентСервер.ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка);
КонецПроцедуры
Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
МультиязычностьКлиентСервер.ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#КонецЕсли