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