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