Направления деятельности / Список связанных договоров / Модуль формы

файл
#Область ОбработчикиСобытийФормы

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

	Если Параметры.Свойство("АвтоТест") Тогда
		Возврат;
	КонецЕсли;
	
	СформироватьВыборкуДанныхСписка();
	
	Если Параметры.Отбор.Свойство("НаправлениеДеятельности") Тогда
		ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(Список, "НаправлениеДеятельностиОтбор", Параметры.Отбор.НаправлениеДеятельности);
	КонецЕсли;
	
	ТипыДоговоров = Новый Массив;
	ТипыДоговоров.Добавить(Тип("СправочникСсылка.ДоговорыКонтрагентов"));
	Если ПравоДоступа("Просмотр", Метаданные.Справочники.ДоговорыМеждуОрганизациями) Тогда
		ТипыДоговоров.Добавить(Тип("СправочникСсылка.ДоговорыМеждуОрганизациями"));
	КонецЕсли;
	Если ПравоДоступа("Просмотр", Метаданные.Справочники.ДоговорыКредитовИДепозитов) Тогда
		ТипыДоговоров.Добавить(Тип("СправочникСсылка.ДоговорыКредитовИДепозитов"));
	КонецЕсли;
	Если ПравоДоступа("Просмотр", Метаданные.Справочники.ДоговорыЭквайринга) Тогда
		ТипыДоговоров.Добавить(Тип("СправочникСсылка.ДоговорыЭквайринга"));
	КонецЕсли;
	
	// СтандартныеПодсистемы.ПодключаемыеКоманды
	ПараметрРазмещения = ПодключаемыеКоманды.ПараметрыРазмещения();
	ПараметрРазмещения.Источники = Новый ОписаниеТипов(ТипыДоговоров);
	ПараметрРазмещения.КоманднаяПанель = Элементы.СписокКоманднаяПанель;
	ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект, ПараметрРазмещения);
	// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

КонецПроцедуры

#КонецОбласти

#Область ОбработчикиСобытийЭлементовТаблицыФормыСписокДокументов

&НаКлиенте
Процедура СписокПриАктивизацииПоля(Элемент)

	// СтандартныеПодсистемы.ПодключаемыеКоманды
	ПодключаемыеКомандыКлиент.НачатьОбновлениеКоманд(ЭтотОбъект);
	// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

КонецПроцедуры

#КонецОбласти

#Область ОбработчикиКомандФормы

// СтандартныеПодсистемы.ПодключаемыеКоманды
&НаКлиенте
Процедура Подключаемый_ВыполнитьКоманду(Команда)
    ПодключаемыеКомандыКлиент.НачатьВыполнениеКоманды(ЭтотОбъект, Команда, Элементы.Список);
КонецПроцедуры

&НаКлиенте
Процедура Подключаемый_ПродолжитьВыполнениеКомандыНаСервере(ПараметрыВыполнения, ДополнительныеПараметры) Экспорт
    ВыполнитьКомандуНаСервере(ПараметрыВыполнения);
КонецПроцедуры

&НаСервере
Процедура ВыполнитьКомандуНаСервере(ПараметрыВыполнения)
    ПодключаемыеКоманды.ВыполнитьКоманду(ЭтотОбъект, ПараметрыВыполнения, Элементы.Список);
КонецПроцедуры

&НаКлиенте
Процедура Подключаемый_ОбновитьКоманды()
    ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Элементы.Список);
КонецПроцедуры
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

#КонецОбласти

#Область СлужебныеПроцедурыИФункции

&НаСервере
Процедура СформироватьВыборкуДанныхСписка()

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

КонецПроцедуры

#КонецОбласти

Связанные материалы