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