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