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