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