Ведомость в банк / Форма документа / Модуль формы

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

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

	УстановитьУсловноеОформление();
	
	УстановитьВидимостьВидВыплатыНаКартыМИР();
	
	СменитьФорматФайла();
	
КонецПроцедуры

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

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

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

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

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

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

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

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

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

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

&НаКлиенте
Процедура ОрганизацияПриИзменении(Элемент)
	ЗарплатаКадрыКлиент.КлючевыеРеквизитыЗаполненияФормыОчиститьТаблицы(ЭтотОбъект);
	ЗаполнитьПодписи();
	ОрганизацияПриИзмененииНаСервере();
КонецПроцедуры

&НаКлиенте
Процедура ПодразделениеПриИзменении(Элемент)
	ЗарплатаКадрыКлиент.КлючевыеРеквизитыЗаполненияФормыОчиститьТаблицы(ЭтотОбъект);
КонецПроцедуры

&НаКлиенте
Процедура СпособВыплатыПриИзменении(Элемент)
	СпособВыплатыПриИзмененииНаСервере();
КонецПроцедуры

&НаКлиенте
Процедура ДокументыОснованияОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
		ВедомостьНаВыплатуЗарплатыКлиентРасширенный.ДокументыОснованияОбработкаНавигационнойСсылки(
			ЭтотОбъект, 
			Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка);
КонецПроцедуры

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

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

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

#Область РедактированиеМесяцаСтрокой

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

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

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

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

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

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

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

#Область ВнешниеХозяйственныеОперации

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

&НаКлиенте
Процедура ПеречислениеНДФЛВыполненоПриИзменении(Элемент)
	ВедомостьНаВыплатуЗарплатыКлиентРасширенный.ПеречислениеНДФЛВыполненоПриИзменении(ЭтотОбъект, Элемент);
КонецПроцедуры

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

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

&НаКлиенте
Процедура Подключаемый_ПодписиДокументовЭлементНажатие(Элемент) 
	ПодписиДокументовКлиент.РасширеннаяПодсказкаНажатие(ЭтотОбъект, Элемент.Имя);
КонецПроцедуры
// Конец Обработчик подсистемы "ПодписиДокументов".

&НаКлиенте
Процедура КомментарийНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	ЗарплатаКадрыКлиент.КомментарийНачалоВыбора(ЭтотОбъект, Элемент, ДанныеВыбора, СтандартнаяОбработка)
КонецПроцедуры

&НаСервере
Процедура ОрганизацияПриИзмененииНаСервере()
	ИспользуетсяОбменБГУ = ИспользуетсяОбменБГУ();
	ОбновитьДоступностьСформированоРаспоряжение();
КонецПроцедуры

&НаКлиенте
Процедура ВидВыплатыНаКартыМИРПриИзменении(Элемент)
	ВидВыплатыНаКартыМИРПриИзмененииНаСервере();
КонецПроцедуры

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

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

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

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

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

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

&НаКлиенте
Процедура СоставПослеУдаления(Элемент)
	СоставПослеУдаленияНаСервере()
КонецПроцедуры

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

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

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

&НаКлиенте
Процедура СоставНомерТелефонаНачалоВыбора(Элемент, СтандартнаяОбработка)
	
	ПараметрыЭлемента = Новый Структура;
	ПараметрыЭлемента.Вставить("ВидКонтактнойИнформации", ПредопределенноеЗначение("Справочник.ВидыКонтактнойИнформации.ТелефонМобильныйФизическиеЛица"));
	ПараметрыЭлемента.Вставить("ИмяКИ", "НомерТелефона");
	ПараметрыЭлемента.Вставить("ИмяКИПредставление", "НомерТелефонаПредставление");
	
	ЭлементКонтактнойИнформацииНомерТелефонаНачалоВыбора(ПараметрыЭлемента, СтандартнаяОбработка, Ложь);

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

&НаСервере
Процедура СоставБанковскаяКартаПриИзмененииНаСервере(Идентификатор)
	
	Строка = Объект.Состав.НайтиПоИдентификатору(Идентификатор);
	Строка.НомерБанковскойКарты = БанковскиеКарты.МаскированныйНомерКарты(Строка.БанковскаяКарта);

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

&НаКлиенте
Процедура СоставБанковскаяКартаПриИзменении(Элемент)
	СоставБанковскаяКартаПриИзмененииНаСервере(Элементы.Состав.ТекущаяСтрока);
КонецПроцедуры

&НаСервере
Процедура СоставТелефонПриИзмененииНаСервере(Идентификатор)
	
	Строка = Объект.Состав.НайтиПоИдентификатору(Идентификатор);
	
	КонтактнаяИнформация = Новый ТаблицаЗначений;
	
	Если ЗначениеЗаполнено(Строка.Телефон) Тогда
		КонтактнаяИнформация = КонтактнаяИнформацияБЗК.КонтактнаяИнформацияОбъектов(
			Строка.ФизическоеЛицо, 
			,
			Строка.Телефон);
	КонецЕсли;
		
	Если КонтактнаяИнформация.Количество()> 0 Тогда
		Строка.НомерТелефонаПредставление = КонтактнаяИнформация[0].Представление;
		Строка.НомерТелефона = КонтактнаяИнформация[0].Значение;
	КонецЕсли;
	
КонецПроцедуры

&НаКлиенте
Процедура СоставТелефонПриИзменении(Элемент)
	СоставТелефонПриИзмененииНаСервере(Элементы.Состав.ТекущаяСтрока);
КонецПроцедуры

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

&НаКлиенте
Процедура СоставНомерЛицевогоСчетаПриИзменении(Элемент)
	
	СоставПриИзмененииНаСервере();
	
КонецПроцедуры

&НаСервере
Процедура СоставСчетВБанкеПриИзмененииНаСервере(Идентификатор)
	
	Строка = Объект.Состав.НайтиПоИдентификатору(Идентификатор);
	
	РеквизитыСчета = Неопределено;
	ВедомостьНаВыплатуЗарплаты.ПриИзмененииБанковскогоСчета(Строка.БанковскийСчет, РеквизитыСчета);
	
	Строка.БИКБанкаСчета = РеквизитыСчета.БИК;
	Строка.НомерЛицевогоСчета = РеквизитыСчета.НомерСчета;

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

&НаКлиенте
Процедура СоставСчетВБанкеПриИзменении(Элемент)
	
	СоставСчетВБанкеПриИзмененииНаСервере(Элементы.Состав.ТекущаяСтрока);
	
КонецПроцедуры

&НаСервере
Процедура ЗаполнитьЛицевойСчетВСтроке(Строка)
	
	ЛицевойСчет = ОбменСБанкамиПоЗарплатнымПроектам.ЛицевыеСчетаФизическихЛиц(ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Строка.ФизическоеЛицо),
		Истина, Объект.Организация, Объект.Дата, Объект.ЗарплатныйПроект);
	Если ЛицевойСчет.Количество() > 0 Тогда
		Строка.НомерЛицевогоСчета = ЛицевойСчет[0].НомерЛицевогоСчета;
	КонецЕсли;
	
КонецПроцедуры

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

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

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

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

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

// ИнтеграцияС1САрхивом

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

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

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

// Конец ИнтеграцияС1САрхивом

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

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

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

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

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

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

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

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

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

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

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

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

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

&НаКлиенте
Процедура РедактироватьЗарплату(Команда)
	РедактироватьЗарплатуСтроки(Элементы.Состав.ТекущиеДанные);	
КонецПроцедуры

&НаКлиенте
Процедура РедактироватьНДФЛ(Команда)
	РедактироватьНДФЛСтроки(Элементы.Состав.ТекущиеДанные);	
КонецПроцедуры

&НаКлиенте
Процедура ОбновитьНДФЛ(Команда)
	ВедомостьНаВыплатуЗарплатыКлиент.ОбновитьНДФЛ(ЭтотОбъект);	
КонецПроцедуры

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

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

&НаКлиенте
Процедура Подключаемый_ЗагрузитьДокументПодтверждение(Команда)
	ОткрытьФорму("Документ.ПодтверждениеЗачисленияЗарплаты.ФормаОбъекта");
КонецПроцедуры

#Область ОграничениеДокумента

&НаКлиенте
Процедура Подключаемый_ОграничитьДокумент(Команда)
	
	ОграничитьДокументНаСервере();
	
КонецПроцедуры

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

&НаКлиенте
Процедура ВводДанныхОПеречисленииНДФЛ(Команда)
	
	ЗарплатаКадрыРасширенныйКлиент.ВвестиДанныеОПеречисленииНДФЛВБюджет(ЭтаФорма, Объект.Ссылка);
	
КонецПроцедуры

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

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

#Область КлючевыеРеквизитыЗаполненияФормы

// Функция возвращает описание таблиц формы подключенных к механизму ключевых реквизитов формы.
&НаСервере
Функция КлючевыеРеквизитыЗаполненияФормыТаблицыОчищаемыеПриИзменении() Экспорт
	Возврат ВедомостьНаВыплатуЗарплатыФормы.КлючевыеРеквизитыЗаполненияФормыТаблицыОчищаемыеПриИзменении()
КонецФункции 

// Функция возвращает массив реквизитов формы подключенных к механизму ключевых реквизитов формы.
&НаСервере
Функция КлючевыеРеквизитыЗаполненияФормыОписаниеКлючевыхРеквизитов() Экспорт
	Возврат ВедомостьНаВыплатуЗарплатыФормы.КлючевыеРеквизитыЗаполненияФормыОписаниеКлючевыхРеквизитов()
КонецФункции

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

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

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

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

#Область ВызовыСервера

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

&НаСервере
Процедура СпособВыплатыПриИзмененииНаСервере()
	ВедомостьНаВыплатуЗарплатыФормыРасширенный.СпособВыплатыПриИзмененииНаСервере(ЭтотОбъект);
	УстановитьВидЗачисления();
	Если ЗарплатныйПроектДляПеречисленияНаКартыМир Тогда
		УстановитьВидВыплатыНаКартыМирПоСпособуВыплаты();
	КонецЕсли;
КонецПроцедуры

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

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

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

&НаСервере
Процедура СоставПриИзмененииНаСервере()
	ВедомостьНаВыплатуЗарплатыФормы.СоставПриИзмененииНаСервере(ЭтотОбъект)
КонецПроцедуры

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

&НаСервере
Процедура СоставКВыплатеПриИзмененииНаСервере()
	ВедомостьНаВыплатуЗарплатыФормы.СоставКВыплатеПриИзмененииНаСервере(ЭтотОбъект)	
КонецПроцедуры

&НаСервере
Процедура ЗарплатныйПроектПриИзмененииНаСервере()
	УточнитьВидимостьВХО();
	УстановитьИспользованиеЭлектронногоОбмена();
	ЗарплатныйПроектДляПеречисленияНаКартыМир 
		= ОбменСБанкамиПоЗарплатнымПроектам.ЗарплатныйПроектДляПеречисленийНаКартыМир(Объект.ЗарплатныйПроект);
	УстановитьВидимостьВидВыплатыНаКартыМИР();
	Если ЗарплатныйПроектДляПеречисленияНаКартыМир Тогда
		УстановитьВидВыплатыНаКартыМирПоСпособуВыплаты();
	Иначе
		УстановитьВидЗачисления();
	КонецЕсли;
	СменитьФорматФайла();
КонецПроцедуры

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

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

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

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

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

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

#Область ОбратныеВызовы

// АПК:78-выкл Экспорт необходим для обращений из общей функциональности ведомостей.

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

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

&НаСервере
Процедура ГруппаПодтверждениеИзБанкаДополнитьФорму()
	ОбменСБанкамиПоЗарплатнымПроектам.ГруппаПодтверждениеИзБанкаДополнитьФорму(ЭтотОбъект);
КонецПроцедуры

&НаСервере
Процедура ПриПолученииДанныхСтрокиСостава(СтрокаСостава) Экспорт
	ВедомостьНаВыплатуЗарплатыФормыРасширенный.ПриПолученииДанныхСтрокиСостава(ЭтотОбъект, СтрокаСостава)
КонецПроцедуры

&НаСервере
Процедура ПриПолученииДанныхСтрокСостава() Экспорт
	ВедомостьНаВыплатуЗарплатыФормыРасширенный.ПриПолученииДанныхСтрокСостава(ЭтотОбъект)
КонецПроцедуры

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

&НаСервере
Процедура УстановитьДоступностьЭлементов() Экспорт
	ВедомостьНаВыплатуЗарплатыФормыРасширенный.УстановитьДоступностьЭлементов(ЭтотОбъект);
КонецПроцедуры

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

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

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

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

&НаСервере
Функция АдресСпискаПодобранныхСотрудников() Экспорт
	Возврат ВедомостьНаВыплатуЗарплатыФормы.АдресСпискаПодобранныхСотрудников(ЭтотОбъект)
КонецФункции

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

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

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

&НаСервере
Процедура РедактироватьНДФЛСтрокиЗавершениеНаСервере(РезультатыРедактирования) Экспорт
	ВедомостьНаВыплатуЗарплатыФормы.РедактироватьНДФЛСтрокиЗавершениеНаСервере(ЭтотОбъект, РезультатыРедактирования) 
КонецПроцедуры

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

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

// АПК:78-вкл

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

&НаСервере
Процедура УстановитьУсловноеОформление()

	Элемент = УсловноеОформление.Элементы.Добавить();
	ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
	ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.СоставНомерЛицевогоСчета.Имя);
	ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Состав.СпособЗачисления");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
	Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Истина);
	
	Элемент = УсловноеОформление.Элементы.Добавить();
	ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
	ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.СоставСпособЗачисленияВыплаты.Имя);
	ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Состав.СпособЗачисления");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
	Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru= 'по лицевому счету'"));
	
	Элемент = УсловноеОформление.Элементы.Добавить();
	ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
	ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.СоставНомерЛицевогоСчета.Имя);
	
	ГруппаОтбораИ = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
	ГруппаОтбораИ.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;

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

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

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

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

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

&НаСервере
Процедура ОчиститьСпособыЗачисленияНаСервере(Идентификатор)
	
	Строка = Объект.Состав.НайтиПоИдентификатору(Идентификатор);
	Строка.НомерЛицевогоСчета = "";
	Строка.БанковскаяКарта = Справочники.БанковскиеКартыКонтрагентов.ПустаяСсылка();
	Строка.СНИЛС = "";
	Строка.НомерТелефона = "";
	Строка.БанковскийСчет = Справочники.БанковскиеСчетаКонтрагентов.ПустаяСсылка();
	Строка.БИКБанкаСчета = "";
	
КонецПроцедуры

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

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

&НаСервере
Процедура ЗаполнитьПоСпособуЗачисленияНаСервере(Идентификатор)
	
	Строка = Объект.Состав.НайтиПоИдентификатору(Идентификатор);
	
	Если Строка.СпособЗачисления = Перечисления.СпособыЗачисленияВыплат.ПоЛицевомуСчету 
		Или Не ЗначениеЗаполнено(Строка.СпособЗачисления) Тогда
		ЗаполнитьЛицевойСчетВСтроке(Строка);
	ИначеЕсли Строка.СпособЗачисления = Перечисления.СпособыЗачисленияВыплат.ПоСНИЛС Тогда
		ЗаполнитьСНИЛСВСтроке(Строка);
	ИначеЕсли Строка.СпособЗачисления = Перечисления.СпособыЗачисленияВыплат.ПоНомеруТелефона Тогда
		ЗаполнитьНомерТелефонаВСтроке(Строка);
	КонецЕсли;

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

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

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

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

&НаСервере
Процедура ОбновитьДоступностьСформированоРаспоряжение()

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

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

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

	Возврат ОбменИспользуется;

КонецФункции

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

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

&НаСервере
Процедура УстановитьВидВыплатыНаКартыМир()
	Для Каждого СтрокаТЧЗарплата Из Объект.Зарплата Цикл
		СтрокаТЧЗарплата.ВидВыплатыНаКартыМИР = Объект.ВидВыплатыНаКартыМИР;
	КонецЦикла;
КонецПроцедуры

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

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