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