Заявка на расходование денежных средств / Заказы поставщикам к оформлению заявок на оплату / Модуль формы

файл

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

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

	СобытияФорм.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка);

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

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

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

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

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

&НаКлиенте
Процедура ОрганизацияОтборПриИзменении(Элемент)

	ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Список, "Организация", Организация, ВидСравненияКомпоновкиДанных.Равно,, ЗначениеЗаполнено(Организация));
	ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(СписокЗаказов, "Организация", Организация, ВидСравненияКомпоновкиДанных.Равно,, ЗначениеЗаполнено(Организация));
	
КонецПроцедуры

&НаКлиенте
Процедура ДатаПлатежаПриИзменении(Элемент)
	
	УстановитьПараметрыСписка();
	
КонецПроцедуры

&НаКлиенте
Процедура ВыводитьЗаказыПриИзменении(Элемент)

	ВыводитьЗаказыПриИзмененииСервер();
	
КонецПроцедуры

&НаКлиенте
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа)
	
	Отказ = Истина;
	
КонецПроцедуры

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

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

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

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

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

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

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

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

// ИнтеграцияС1СДокументооборотом
&НаКлиенте
Процедура Подключаемый_ВыполнитьКомандуИнтеграции(Команда)
	
	ИнтеграцияС1СДокументооборотБазоваяФункциональностьКлиент.ВыполнитьПодключаемуюКомандуИнтеграции(Команда, ЭтотОбъект, Элементы.СписокЗаказов);
	
КонецПроцедуры
// Конец ИнтеграцияС1СДокументооборотом

&НаКлиенте
Процедура ВыводитьЗаявкиПриИзменении(Элемент)
	
	ВыводитьЗаявкиПриИзмененииСервер();
	
КонецПроцедуры

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

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

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

&НаСервере
Процедура УстановитьУсловноеОформление()
	
	СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "СписокЗаказов.Дата", Элементы.СписокДата.Имя);
	
КонецПроцедуры

#Область ШтрихкодыИТорговоеОборудование

&НаСервере
Процедура УстановитьПараметрыСписка()
	
	ДатаПлатежаГраница = Новый Граница(КонецДня(ДатаПлатежа), ВидГраницы.Включая);
	СписокЗаказов.Параметры.УстановитьЗначениеПараметра("ДатаПлатежа", ?(ЗначениеЗаполнено(ДатаПлатежа), ДатаПлатежаГраница, Дата('22990101')));
	
	Список.Параметры.УстановитьЗначениеПараметра(
		"ИспользоватьВыплатыСамозанятым",
		ПолучитьФункциональнуюОпцию("ИспользоватьВыплатыСамозанятым"));
	
КонецПроцедуры

&НаСервере
Процедура ВыводитьЗаказыПриИзмененииСервер()

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

&НаСервере
Процедура ВыводитьЗаявкиПриИзмененииСервер()

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

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

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

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