#Область ОписаниеПеременных
&НаКлиенте
Перем КэшированныеЗначения;
&НаКлиенте
Перем ПараметрыОбработчикаОжидания;
&НаКлиенте
Перем ФормаДлительнойОперации;
#КонецОбласти
#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
УстановитьУсловноеОформление();
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан(Объект, ЭтотОбъект);
Если НЕ ЗначениеЗаполнено(Объект.Ссылка) Тогда
ЗначенияДляЗаполнения = Новый Структура("ПредыдущийМесяц, Ответственный",
"Объект.ПериодРегистрации",
"Объект.Ответственный");
ЗарплатаКадры.ЗаполнитьПервоначальныеЗначенияВФорме(ЭтаФорма, ЗначенияДляЗаполнения);
ПриЧтенииСозданииНаСервере();
КонецЕсли;
Если КлиентскоеПриложение.ТекущийВариантИнтерфейса() = ВариантИнтерфейсаКлиентскогоПриложения.Версия8_2 Тогда
Элементы.ГруппаИтого.ЦветФона = Новый Цвет();
КонецЕсли;
ВерсионированиеОбъектов.ПриСозданииНаСервере(ЭтотОбъект);
ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
ИнтеграцияС1СДокументооборотБазоваяФункциональность.ПриСозданииНаСервере(ЭтотОбъект);
СобытияФорм.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
ПараметрыВыбораСтатейИАналитик = Документы.ОтражениеЗарплатыВФинансовомУчете.ПараметрыВыбораСтатейИАналитик();
ДоходыИРасходыСервер.ПриСозданииНаСервере(ЭтотОбъект, ПараметрыВыбораСтатейИАналитик);
ПараметрыНастройки = Документы.ОтражениеЗарплатыВФинансовомУчете.ПараметрыНастройкиСчетовУчета();
НастройкаСчетовУчетаСервер.ПриСозданииНаСервере(ЭтотОбъект, ПараметрыНастройки);
ИсправлениеДокументов.ПриСозданииНаСервере(ЭтаФорма, Элементы.СтрокаИсправление);
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("ИмяЭлементаДляРазмещения", "ГруппаДополнительныеРеквизиты");
УправлениеСвойствами.ПриСозданииНаСервере(ЭтотОбъект, ДополнительныеПараметры);
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ЗарплатаКадрыКлиентСервер.ЗаполнитьМесяцПоДате(ЭтаФорма, "Объект.ПериодРегистрации", "ПериодРегистрацииСтрокой");
УправлениеСвойствамиКлиент.ПослеЗагрузкиДополнительныхРеквизитов(ЭтотОбъект);
ПодключаемыеКомандыКлиент.НачатьОбновлениеКоманд(ЭтотОбъект);
КонецПроцедуры
&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецЕсли;
ПриЧтенииСозданииНаСервере();
СобытияФорм.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
УправлениеСвойствами.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект);
ДатыЗапретаИзменения.ОбъектПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
ПараметрыВыбораСтатейИАналитик = Документы.ОтражениеЗарплатыВФинансовомУчете.ПараметрыВыбораСтатейИАналитик();
ДоходыИРасходыСервер.ПриЧтенииНаСервере(ЭтотОбъект, ПараметрыВыбораСтатейИАналитик);
ПараметрыНастройки = Документы.ОтражениеЗарплатыВФинансовомУчете.ПараметрыНастройкиСчетовУчета();
НастройкаСчетовУчетаСервер.ПриЧтенииНаСервере(ЭтотОбъект, ПараметрыНастройки);
ИсправлениеДокументов.ПриЧтенииНаСервере(ЭтаФорма, Элементы.СтрокаИсправление);
Если ТолькоПросмотр Тогда
Элементы.ПериодРегистрации.ТолькоПросмотр = Истина;
Элементы.Сводно.ТолькоПросмотр = Истина;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора)
Если ИсточникВыбора.ИмяФормы = "Документ.ОтражениеЗарплатыВФинансовомУчете.Форма.ФормаСпискаФизическихЛиц" Тогда
Модифицированность = Истина;
Идентификатор = Неопределено;
ОбработкаВыбораСпискаФизЛицНаСервере(ВыбранноеЗначение, Идентификатор);
Элементы.НачисленнаяЗарплатаИВзносы.ТекущаяСтрока = Идентификатор;
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ОбработкаПроверкиЗаполненияНаСервере(Отказ, ПроверяемыеРеквизиты)
УправлениеСвойствами.ОбработкаПроверкиЗаполнения(ЭтотОбъект, Отказ, ПроверяемыеРеквизиты);
КонецПроцедуры
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
МодификацияКонфигурацииПереопределяемый.ПередЗаписьюНаСервере(ЭтаФорма, Отказ, ТекущийОбъект, ПараметрыЗаписи);
НастройкаСчетовУчетаСервер.ПередЗаписьюНаСервере(ЭтотОбъект, ТекущийОбъект);
УправлениеСвойствами.ПередЗаписьюНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецПроцедуры
&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
УправлениеДоступом.ПослеЗаписиНаСервере(ЭтотОбъект, ТекущийОбъект, ПараметрыЗаписи);
Для Каждого Строка Из Объект.УдержаннаяЗарплата Цикл
Строка.ТипСтатьи = 3;
КонецЦикла;
ДоходыИРасходыСервер.ПослеЗаписиНаСервере(ЭтотОбъект);
НастройкаСчетовУчетаСервер.ПослеЗаписиНаСервере(ЭтотОбъект);
МодификацияКонфигурацииПереопределяемый.ПослеЗаписиНаСервере(ЭтаФорма, ТекущийОбъект, ПараметрыЗаписи);
СобытияФорм.ПослеЗаписиНаСервере(ЭтотОбъект, ТекущийОбъект, ПараметрыЗаписи);
КонецПроцедуры
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
Оповестить("Запись_ОтражениеЗарплатыВФинансовомУчете", ПараметрыЗаписи, Объект.Ссылка);
ИсправлениеДокументовКлиент.ПослеЗаписи(Объект);
КонецПроцедуры
&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
СобытияФормКлиент.ПередЗаписью(ЭтотОбъект, Отказ, ПараметрыЗаписи);
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
СобытияФормКлиент.ОбработкаОповещения(ЭтотОбъект, ИмяСобытия, Параметр, Источник);
ИсправлениеДокументовКлиент.ОбработкаОповещения(ЭтаФорма, ИмяСобытия, Параметр, Источник);
Если УправлениеСвойствамиКлиент.ОбрабатыватьОповещения(ЭтотОбъект, ИмяСобытия, Параметр) Тогда
ОбновитьЭлементыДополнительныхРеквизитов();
УправлениеСвойствамиКлиент.ПослеЗагрузкиДополнительныхРеквизитов(ЭтотОбъект);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Процедура ОрганизацияПриИзменении(Элемент)
ОрганизацияПриИзмененииНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура ПериодРегистрацииПриИзменении(Элемент)
ЗарплатаКадрыКлиент.ВводМесяцаПриИзменении(ЭтотОбъект, "Объект.ПериодРегистрации", "ПериодРегистрацииСтрокой", Модифицированность);
ПериодРегистрацииПриИзмененииНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура ПериодРегистрацииНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
Оповещение = Новый ОписаниеОповещения("ПериодРегистрацииНачалоВыбораЗавершение", ЭтотОбъект);
ЗарплатаКадрыКлиент.ВводМесяцаНачалоВыбора(ЭтотОбъект, ЭтотОбъект, "Объект.ПериодРегистрации", "ПериодРегистрацииСтрокой", , Оповещение);
КонецПроцедуры
&НаКлиенте
Процедура ПериодРегистрацииНачалоВыбораЗавершение(ЗначениеВыбрано, ДополнительныеПараметры) Экспорт
Если ЗначениеВыбрано Тогда
ПериодРегистрацииПриИзмененииНаСервере();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПериодРегистрацииРегулирование(Элемент, Направление, СтандартнаяОбработка)
ЗарплатаКадрыКлиент.ВводМесяцаРегулирование(ЭтотОбъект, "Объект.ПериодРегистрации", "ПериодРегистрацииСтрокой", Направление, Модифицированность);
ПодключитьОбработчикОжидания("ОбработчикОжиданияПериодРегистрацииПриИзменении", 0.3, Истина);
КонецПроцедуры
&НаКлиенте
Процедура ПериодРегистрацииАвтоПодбор(Элемент, Текст, ДанныеВыбора, Ожидание, СтандартнаяОбработка)
ЗарплатаКадрыКлиент.ВводМесяцаАвтоПодборТекста(Текст, ДанныеВыбора, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура ПериодРегистрацииОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, СтандартнаяОбработка)
ЗарплатаКадрыКлиент.ВводМесяцаОкончаниеВводаТекста(Текст, ДанныеВыбора, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура ОбработчикОжиданияПериодРегистрацииПриИзменении()
ПериодРегистрацииПриИзмененииНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура СводноПриИзменении(Элемент)
ТекстВопроса = "";
Если Сводно И (Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.Количество() > 0 Или Объект.НачисленныйНДФЛ.Количество() > 0) Тогда
ТекстВопроса = НСтр("ru = 'Сведения о работниках организации будут удалены. Продолжить?'");
ИначеЕсли Не Сводно И (Объект.НачисленнаяЗарплатаИВзносы.Количество() > 0 Или Объект.НачисленныйНДФЛ.Количество() > 0) Тогда
ТекстВопроса = НСтр("ru = 'Списки ""Начисленная зарплата и взносы"" и ""Начисленный НДФЛ"" будет очищены. Продолжить?'");
КонецЕсли;
Если Не ПустаяСтрока(ТекстВопроса) Тогда
ПоказатьВопрос(Новый ОписаниеОповещения("СводноПриИзмененииЗавершение", ЭтотОбъект), ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Возврат;
КонецЕсли;
Объект.Сводно = Сводно;
УстановитьВидимостьИДоступность();
КонецПроцедуры
&НаКлиенте
Процедура СтрокаИсправлениеОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
ИсправлениеДокументовКлиент.СтрокаИсправлениеОбработкаНавигационныйСсылки(ЭтотОбъект, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура СводноПриИзмененииЗавершение(Ответ, ДополнительныеПараметры) Экспорт
Если Ответ <> КодВозвратаДиалога.Да Тогда
Сводно = Не Сводно;
Возврат;
КонецЕсли;
Объект.Сводно = Сводно;
Если Сводно Тогда
СвернутьТаблицыНаСервере();
Иначе
Объект.НачисленнаяЗарплатаИВзносы.Очистить();
Объект.НачисленныйНДФЛ.Очистить();
КонецЕсли;
УстановитьВидимостьИДоступность();
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыНачисленнаяЗарплатаИВзносы
&НаКлиенте
Процедура НачисленнаяЗарплатаИВзносыПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
Если Не Объект.Сводно Тогда
ОткрытьФормуСведенийПоРаботникам(Истина);
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура НачисленнаяЗарплатаИВзносыПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
Если НоваяСтрока Тогда
ТекущиеДанные = Элементы.НачисленнаяЗарплатаИВзносы.ТекущиеДанные;
Если Не Копирование Тогда
ТекущиеДанные.СпособРасчетов = ПредопределенноеЗначение("Перечисление.СпособыРасчетовСФизическимиЛицами.ОплатаТруда");
ТекущиеДанные.ВидНачисленияОплатыТрудаДляНУ = ПредопределенноеЗначение("Перечисление.ВидыНачисленийОплатыТрудаДляНУ.пп1ст255");
ТекущиеДанные.ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.НачисленоДоход");
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура НачисленнаяЗарплатаВидОперацииПриИзменении(Элемент)
ТекущиеДанные = Элементы.НачисленнаяЗарплатаИВзносы.ТекущиеДанные;
Если Не СпособОтраженияТребуется(ТекущиеДанные.ВидОперации) Тогда
ТекущиеДанные.СпособОтраженияЗарплатыВБухучете = ПредопределенноеЗначение("Справочник.СпособыОтраженияЗарплатыВБухУчете.ПустаяСсылка");
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура НачисленнаяЗарплатаИВзносыПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
РассчитатьИтогиВзносовНаСервере();
ТекущиеДанные = Элементы.НачисленнаяЗарплатаИВзносы.ТекущиеДанные;
Если ТекущиеДанные = Неопределено Тогда
Возврат;
КонецЕсли;
Если Не СпособОтраженияТребуется(ТекущиеДанные.ВидОперации) Тогда
ТекущиеДанные.СпособОтраженияЗарплатыВБухучете = ПредопределенноеЗначение("Справочник.СпособыОтраженияЗарплатыВБухУчете.ПустаяСсылка");
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура НачисленнаяЗарплатаИВзносыВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
Если Объект.Сводно Тогда
Возврат;
КонецЕсли;
СтандартнаяОбработка = Ложь;
ОткрытьФормуСведенийПоРаботникам();
КонецПроцедуры
&НаКлиенте
Процедура НачисленнаяЗарплатаИВзносыПередУдалением(Элемент, Отказ)
Если Не Объект.Сводно Тогда
НачисленнаяЗарплатаИВзносыПередУдалениемНаСервере(Элементы.НачисленнаяЗарплатаИВзносы.ВыделенныеСтроки);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыУдержаннаяЗарплата
&НаКлиенте
Процедура УдержаннаяЗарплатаВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
Если Поле.Имя = "УдержаннаяЗарплатаСчетРеглУчетаАктивовПассивов" Тогда
ТекущиеДанные = Элементы.УдержаннаяЗарплата.ТекущиеДанные;
Если ТекущиеДанные.ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.ВозвратИзлишнеВыплаченныхСуммВследствиеСчетныхОшибок") Тогда
Возврат;
КонецЕсли;
НастройкаСчетовУчетаКлиент.ПриНажатии(ЭтотОбъект, Поле, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УдержаннаяЗарплатаПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
ТекущиеДанные = Элементы.УдержаннаяЗарплата.ТекущиеДанные;
Если НоваяСтрока И Не Копирование Тогда
ТекущиеДанные.ТипСтатьи = 3;
ТекущиеДанные.ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.АлиментыПрочиеИсполнительныеЛисты");
ДоходыИРасходыКлиентСервер.ПриДобавленииСтрокиВТаблицу(ЭтотОбъект, ТекущиеДанные, "Объект.УдержаннаяЗарплата");
ИначеЕсли НоваяСтрока И Копирование Тогда
НастройкаСчетовУчетаКлиент.ПриКопированииСтроки(ЭтотОбъект, Элемент);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УдержаннаяЗарплатаФизическоеЛицоПриИзменении(Элемент)
ЗаполнитьСтатьюАналитикуРасходовСтроки(Элементы.УдержаннаяЗарплата.ТекущаяСтрока);
КонецПроцедуры
&НаКлиенте
Процедура УдержаннаяЗарплатаПодразделениеПредприятияПриИзменении(Элемент)
ЗаполнитьСтатьюАналитикуРасходовСтроки(Элементы.УдержаннаяЗарплата.ТекущаяСтрока);
КонецПроцедуры
&НаКлиенте
Процедура УдержаннаяЗарплатаВидОперацииПриИзменении(Элемент)
ТекущиеДанные = Элементы.УдержаннаяЗарплата.ТекущиеДанные;
СписокОпераций = СписокХозяйственныхОперацийСИспользованиемПолучателя();
Если СписокОпераций.НайтиПоЗначению(ТекущиеДанные.ВидОперации) = Неопределено Тогда
ТекущиеДанные.Контрагент = ПредопределенноеЗначение("Справочник.Контрагенты.ПустаяСсылка");
КонецЕсли;
ТекущиеДанные.ЦельВыдачи = ПредопределенноеЗначение("Справочник.СтатьиДвиженияДенежныхСредств.ПустаяСсылка");
Если ТекущиеДанные.ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.ВозвратИзлишнеВыплаченныхСуммВследствиеСчетныхОшибок") Тогда
ТекущиеДанные.СтатьяАктивовПассивов = Неопределено;
ТекущиеДанные.АналитикаАктивовПассивов = Неопределено;
Иначе
ТекущиеДанные.СтатьяДоходов = Неопределено;
ТекущиеДанные.АналитикаДоходов = Неопределено;
КонецЕсли;
ЗаполнитьСтатьюАналитикуРасходовСтроки(Элементы.УдержаннаяЗарплата.ТекущаяСтрока);
КонецПроцедуры
&НаКлиенте
Процедура УдержаннаяЗарплатаСтатьяАктивовПассивовПриИзменении(Элемент)
ДоходыИРасходыКлиентСервер.СтатьяПриИзменении(ЭтотОбъект, Элемент);
КонецПроцедуры
&НаКлиенте
Процедура УдержаннаяЗарплатаСтатьяДоходовПриИзменении(Элемент)
ДоходыИРасходыКлиентСервер.СтатьяПриИзменении(ЭтотОбъект, Элемент);
КонецПроцедуры
&НаКлиенте
Процедура УдержаннаяЗарплатаСтатьяАктивовПассивовНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
ДоходыИРасходыКлиент.НачалоВыбораСтатьи(ЭтотОбъект, Элемент, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура УдержаннаяЗарплатаАналитикаАктивовПассивовПриИзменении(Элемент)
ДоходыИРасходыКлиентСервер.АналитикаАктивовПассивовПриИзменении(ЭтотОбъект, Элемент);
КонецПроцедуры
&НаКлиенте
Процедура УдержаннаяЗарплатаСтатьяДоходовНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
ДоходыИРасходыКлиент.НачалоВыбораСтатьи(ЭтотОбъект, Элемент, СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыНачисленныеПроцентыПоЗаймам
&НаКлиенте
Процедура НачисленныеПроцентыПоЗаймамФизическоеЛицоПриИзменении(Элемент)
ЗаполнитьСтатьюАналитикуДоходовСтроки(Элементы.НачисленныеПроцентыПоЗаймам.ТекущиеДанные);
КонецПроцедуры
&НаКлиенте
Процедура НачисленныеПроцентыПоЗаймамПодразделениеПредприятияПриИзменении(Элемент)
ЗаполнитьСтатьюАналитикуДоходовСтроки(Элементы.НачисленныеПроцентыПоЗаймам.ТекущиеДанные);
КонецПроцедуры
&НаКлиенте
Процедура НачисленныеПроцентыПоЗаймамСтатьяДоходовПриИзменении(Элемент)
ДоходыИРасходыКлиентСервер.СтатьяПриИзменении(ЭтотОбъект, Элемент);
КонецПроцедуры
&НаКлиенте
Процедура НачисленныеПроцентыПоЗаймамСтатьяДоходовНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
ДоходыИРасходыКлиент.НачалоВыбораСтатьи(ЭтотОбъект, Элемент, СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура Подключаемый_ВыполнитьПереопределяемуюКоманду(Команда)
СобытияФормКлиент.ВыполнитьПереопределяемуюКоманду(ЭтотОбъект, Команда);
КонецПроцедуры
&НаКлиенте
Процедура ЗаписатьДокумент(Команда)
ОбщегоНазначенияУТКлиент.Записать(ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьДокумент(Команда)
СписокТаблиц = Новый СписокЗначений();
СписокТаблиц.Добавить("НачисленнаяЗарплатаИВзносы", Нстр("ru = 'Начисленная зарплата и взносы'"));
СписокТаблиц.Добавить("НачисленныйНДФЛ", Нстр("ru = 'Начисленный НДФЛ'"));
СписокТаблиц.Добавить("УдержаннаяЗарплата", Нстр("ru = 'Удержанная зарплата'"));
СписокТаблиц.Добавить("НачисленныеПроцентыПоЗаймам", Нстр("ru = 'Начисленные проценты по займам'"));
СписокТаблиц.Добавить("ВыплатаЗаСчетРезервов", НСтр("ru = 'Выплата за счет резервов'"));
ЗаполнитьТаблицу(СписокТаблиц);
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьНачисленнаяЗарплата(Команда)
СписокТаблиц = Новый СписокЗначений();
СписокТаблиц.Добавить("НачисленнаяЗарплатаИВзносы", Нстр("ru = 'Начисленная зарплата и взносы'"));
ЗаполнитьТаблицу(СписокТаблиц);
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьНачисленныйНДФЛ(Команда)
СписокТаблиц = Новый СписокЗначений();
СписокТаблиц.Добавить("НачисленныйНДФЛ", Нстр("ru = 'Начисленный НДФЛ'"));
ЗаполнитьТаблицу(СписокТаблиц);
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьУдержаннуюЗарплату(Команда)
СписокТаблиц = Новый СписокЗначений();
СписокТаблиц.Добавить("УдержаннаяЗарплата", Нстр("ru = 'Удержанная зарплата'"));
ЗаполнитьТаблицу(СписокТаблиц);
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьНачисленныеПроценты(Команда)
СписокТаблиц = Новый СписокЗначений();
СписокТаблиц.Добавить("НачисленныеПроцентыПоЗаймам", Нстр("ru = 'Начисленные проценты по займам'"));
ЗаполнитьТаблицу(СписокТаблиц);
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьСтатьиДоходовНачисленныеПроценты(Команда)
Если Объект.НачисленныеПроцентыПоЗаймам.Количество() > 0 Тогда
ОписаниеОповещения = Новый ОписаниеОповещения("ЗаполнитьСтатьюДоходовЗавершение", ЭтотОбъект);
ОткрытьФорму("ПланВидовХарактеристик.СтатьиДоходов.ФормаВыбора",, ЭтаФорма,,,, ОписаниеОповещения, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьСтатьюДоходовЗавершение(СтатьяДоходов, ДополнительныеПараметры) Экспорт
Если ЗначениеЗаполнено(СтатьяДоходов) Тогда
УстановитьСтатьюДоходовСервер(СтатьяДоходов);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ВыполнитьКомандуИнтеграции(Команда)
ИнтеграцияС1СДокументооборотБазоваяФункциональностьКлиент.ВыполнитьПодключаемуюКомандуИнтеграции(Команда, ЭтотОбъект, Объект);
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьСтатьиАктивовИПассивовУдержаннаяЗарплата(Команда)
ВыделенныеСтроки = Новый Массив;
Для Каждого ИдентификаторСтроки Из Элементы.УдержаннаяЗарплата.ВыделенныеСтроки Цикл
СтрокаТаблицы = Объект.УдержаннаяЗарплата.НайтиПоИдентификатору(ИдентификаторСтроки);
Если СтрокаТаблицы = Неопределено Тогда
Продолжить;
ИначеЕсли СтрокаТаблицы.ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.ВозвратИзлишнеВыплаченныхСуммВследствиеСчетныхОшибок") Тогда
Продолжить;
КонецЕсли;
ВыделенныеСтроки.Добавить(ИдентификаторСтроки);
КонецЦикла;
Если ВыделенныеСтроки.Количество() > 0 Тогда
ДоходыИРасходыКлиент.ЗаполнитьСтатьюИАналитикуВВыделенныхСтроках(
ЭтотОбъект, Элементы.УдержаннаяЗарплатаСтатьяАктивовПассивов, ВыделенныеСтроки);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПоказатьВыплатуЗаСчетРезервов(Команда)
ПоказатьВыплатуЗаСчетРезервов = Не ПоказатьВыплатуЗаСчетРезервов;
Элементы.ПоказатьВыплатуЗаСчетРезервов.Пометка = ПоказатьВыплатуЗаСчетРезервов;
Элементы.ГруппаВыплатаЗаСчетРезервов.Видимость = ПоказатьВыплатуЗаСчетРезервов;
КонецПроцедуры
&НаКлиенте
Процедура ПоказатьВзносыПодробно(Команда)
ПоказатьВзносыПодробно = Не ПоказатьВзносыПодробно;
Элементы.ПоказатьВзносыПодробно.Пометка = ПоказатьВзносыПодробно;
УстановитьОтображениеВзносов();
КонецПроцедуры
&НаКлиенте
Процедура ПоказатьСотрудников(Команда)
ТекущиеДанные = Элементы.НачисленнаяЗарплатаИВзносы.ТекущиеДанные;
Если ТекущиеДанные = Неопределено Тогда
ТекстПредупреждения = НСтр("ru='Команда не может быть выполнена для указанного объекта.'");
ПоказатьПредупреждение(Неопределено, ТекстПредупреждения);
Возврат;
КонецЕсли;
ОткрытьФормуСведенийПоРаботникам();
КонецПроцедуры
&НаКлиенте
Процедура ПровестиДокумент(Команда)
ОбщегоНазначенияУТКлиент.Провести(ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура ПровестиИЗакрыть(Команда)
ОбщегоНазначенияУТКлиент.ПровестиИЗакрыть(ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьСпособОтражения(Команда)
Если Элементы.НачисленнаяЗарплатаИВзносы.ВыделенныеСтроки.Количество() = 0 Тогда
ТекстПредупреждения = НСтр("ru='Необходимо выбрать строки, для которых нужно заполнить способ отражения.'");
ПоказатьПредупреждение(,ТекстПредупреждения);
Возврат;
КонецЕсли;
МассивСтрок = Новый Массив;
Для каждого ИдентификаторСтроки Из Элементы.НачисленнаяЗарплатаИВзносы.ВыделенныеСтроки Цикл
МассивСтрок.Добавить(ИдентификаторСтроки);
КонецЦикла;
ОписаниеОповещения = Новый ОписаниеОповещения("ЗаполнитьСпособОтраженияЗавершение", ЭтотОбъект, Новый Структура("Идентификаторы", МассивСтрок));
ОткрытьФорму("Справочник.СпособыОтраженияЗарплатыВБухУчете.ФормаВыбора", , ЭтотОбъект,,,, ОписаниеОповещения);
КонецПроцедуры
&НаКлиенте
Процедура ПробитьЧекиПоУдержаниям(Команда)
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Организация", Объект.Организация);
ПараметрыФормы.Вставить("ДокументОснование", Объект.Ссылка);
ПодключаемоеОборудованиеУТКлиент.СформироватьОчередьЧеков(
ЭтотОбъект,
ПараметрыФормы,
РежимЗаписиДокумента.Проведение);
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_СвойстваВыполнитьКоманду(ЭлементИлиКоманда, НавигационнаяСсылка = Неопределено, СтандартнаяОбработка = Неопределено)
УправлениеСвойствамиКлиент.ВыполнитьКоманду(ЭтотОбъект, ЭлементИлиКоманда, СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиентеНаСервереБезКонтекста
Функция СтруктураПолейГруппировки()
СтруктураПолей = Новый Структура;
СтруктураПолей.Вставить("ПодразделениеПредприятия",
ПредопределенноеЗначение("Справочник.СтруктураПредприятия.ПустаяСсылка"));
СтруктураПолей.Вставить("СпособРасчетов",
ПредопределенноеЗначение("Перечисление.СпособыРасчетовСФизическимиЛицами.ПустаяСсылка"));
СтруктураПолей.Вставить("ВидОперации",
ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.ПустаяСсылка"));
СтруктураПолей.Вставить("СпособОтраженияЗарплатыВБухучете",
ПредопределенноеЗначение("Справочник.СпособыОтраженияЗарплатыВБухУчете.ПустаяСсылка"));
СтруктураПолей.Вставить("Резерв",
ПредопределенноеЗначение("Справочник.Резервы.ПустаяСсылка"));
СтруктураПолей.Вставить("РезервБУ", Ложь);
СтруктураПолей.Вставить("РезервНУ", Ложь);
СтруктураПолей.Вставить("ОблагаетсяЕНВД", Ложь);
СтруктураПолей.Вставить("НеОблагаетсяНДФЛ", Ложь);
Возврат СтруктураПолей;
КонецФункции
&НаСервере
Процедура ПриЧтенииСозданииНаСервере()
Сводно = Объект.Сводно;
ВалютаРегламентированногоУчета = ЗначениеНастроекПовтИсп.ВалютаРегламентированногоУчетаОрганизации(Объект.Организация);
ПараметрыУчетнойПолитики = НастройкиНалоговУчетныхПолитик.ДействующиеПараметрыНалоговУчетныхПолитикНаДату(
"НастройкиСистемыНалогообложения", Объект.Организация, Объект.ПериодРегистрации);
Если ПараметрыУчетнойПолитики <> Неопределено Тогда
ПрименяетсяЕНВД = ПараметрыУчетнойПолитики.ПрименяетсяЕНВД;
КонецЕсли;
ИспользоватьНачислениеЗарплаты = ПолучитьФункциональнуюОпцию("ИспользоватьНачислениеЗарплаты");
ИспользоватьПрочиеАктивыПассивы = ПолучитьФункциональнуюОпцию("ИспользоватьУчетПрочихАктивовПассивов");
ИспользоватьРезервыПоОплатеТруда =
РезервыПоОплатеТруда.ФормируютсяРезервыВОрганизации(Объект.Организация, Объект.ПериодРегистрации);
КонтролироватьВыдачуПодОтчетВРазрезеЦелей = ПолучитьФункциональнуюОпцию("КонтролироватьВыдачуПодОтчетВРазрезеЦелей");
ВключеныПодразделенияНаСчетахУчетаНДФЛ = ИнтеграцияБЗК.ВключеныПодразделенияНаСчетахУчетаНДФЛ();
СписокВариантовОбложенияНДФЛ = Элементы.НачисленнаяЗарплатаИВзносыНеОблагаетсяНДФЛ.СписокВыбора;
СписокВариантовОбложенияНДФЛ.Добавить(Истина, НСтр("ru = 'Не облагается'"));
СписокВариантовОбложенияНДФЛ.Добавить(Ложь, НСтр("ru = 'Облагается'"));
Для Каждого Строка Из Объект.УдержаннаяЗарплата Цикл
Строка.ТипСтатьи = 3;
КонецЦикла;
УстановитьВидимостьИДоступность();
КонецПроцедуры
&НаСервере
Процедура УстановитьУсловноеОформление()
УсловноеОформление.Элементы.Очистить();
УстановитьУсловноеОформлениеТаблицыНачисленнаяЗарплатаИВзносы();
УстановитьУсловноеОформлениеТаблицыНачисленныйНДФЛ();
УстановитьУсловноеОформлениеТаблицыУдержаннаяЗарплата();
УстановитьУсловноеОформлениеТаблицыВыплатаЗаСчетРезервов();
КонецПроцедуры
&НаСервере
Процедура УстановитьУсловноеОформлениеТаблицыНачисленнаяЗарплатаИВзносы()
Элемент = УсловноеОформление.Элементы.Добавить();
ОформляемыеПоля = Новый Массив;
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыРезерв.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыРезервБУ.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыРезервНУ.Имя);
Для Каждого ОформляемоеПоле Из ОформляемыеПоля Цикл
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(ОформляемоеПоле);
КонецЦикла;
ГруппаИЛИ = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИЛИ.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
ОтборЭлемента = ГруппаИЛИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ИспользоватьРезервыПоОплатеТруда");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;
ОтборЭлемента = ГруппаИЛИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленнаяЗарплатаИВзносы.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
ОтборЭлемента.ПравоеЗначение = Новый СписокЗначений;
ОтборЭлемента.ПравоеЗначение.ЗагрузитьЗначения(
Перечисления.ВидыОперацийПоЗарплате.НачисленияРезервыПоОплатеТруда());
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленнаяЗарплатаИВзносыСпособОтражения.Имя);
ГруппаИЛИ = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИЛИ.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
ОтборЭлемента = ГруппаИЛИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленнаяЗарплатаИВзносы.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ОтборЭлемента.ПравоеЗначение = Новый СписокЗначений;
ОтборЭлемента.ПравоеЗначение.Добавить(Перечисления.ВидыОперацийПоЗарплате.ЕжегодныйОтпускОценочныеОбязательстваИРезервы);
ОтборЭлемента.ПравоеЗначение.Добавить(Перечисления.ВидыОперацийПоЗарплате.РасходыПоСтрахованиюФССНС);
ОтборЭлемента.ПравоеЗначение.Добавить(Перечисления.ВидыОперацийПоЗарплате.РасходыПоСтрахованиюФСС);
ОтборЭлемента.ПравоеЗначение.Добавить(Перечисления.ВидыОперацийПоЗарплате.ПособиеНаПогребение);
ГруппаИ = ГруппаИЛИ.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ОтборЭлемента = ГруппаИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленнаяЗарплатаИВзносы.РезервБУ");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Истина;
ОтборЭлемента = ГруппаИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленнаяЗарплатаИВзносы.РезервНУ");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Истина;
Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Ложь);
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<не требуется>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленнаяЗарплатаИВзносыРезерв.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленнаяЗарплатаИВзносы.Резерв");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленнаяЗарплатаИВзносы.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ОтборЭлемента.ПравоеЗначение = Новый СписокЗначений;
ОтборЭлемента.ПравоеЗначение.ЗагрузитьЗначения(
Перечисления.ВидыОперацийПоЗарплате.НачисленияРезервыПоОплатеТруда());
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = 'Выплата за счет резерва'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленнаяЗарплатаИВзносыРезерв.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленнаяЗарплатаИВзносы.Резерв");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленнаяЗарплатаИВзносы.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ОтборЭлемента.ПравоеЗначение = Новый СписокЗначений;
ОтборЭлемента.ПравоеЗначение.ЗагрузитьЗначения(
Перечисления.ВидыОперацийПоЗарплате.ЕжегодныеОтпускаОценочныеОбязательстваИРезервы());
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", Строка(Справочники.Резервы.РезервЕжегодныхОтпусков()));
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленнаяЗарплатаИВзносыРезервБУ.Имя);
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленнаяЗарплатаИВзносыРезервНУ.Имя);
ГруппаИЛИ = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИЛИ.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
ОтборЭлемента = ГруппаИЛИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленнаяЗарплатаИВзносы.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
ОтборЭлемента.ПравоеЗначение = Новый СписокЗначений;
ОтборЭлемента.ПравоеЗначение.ЗагрузитьЗначения(
Перечисления.ВидыОперацийПоЗарплате.НачисленияРезервыПоОплатеТруда());
ОтборЭлемента = ГруппаИЛИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленнаяЗарплатаИВзносы.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ОтборЭлемента.ПравоеЗначение = Новый СписокЗначений;
ОтборЭлемента.ПравоеЗначение.ЗагрузитьЗначения(
Перечисления.ВидыОперацийПоЗарплате.ЕжегодныеОтпускаОценочныеОбязательстваИРезервы());
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленнаяЗарплатаИВзносыНеОблагаетсяНДФЛ.Имя);
Элемент.Оформление.УстановитьЗначениеПараметра("Формат", НСтр("ru = 'БЛ=''Облагается''; БИ=''Не облагается'';'"));
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленнаяЗарплатаИВзносыВидНачисленияОплатыТрудаДляНУ.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Сводно");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленнаяЗарплатаИВзносыОблагаетсяЕНВД.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПрименяетсяЕНВД");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
ОформляемыеПоля = Новый Массив;
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПодразделение.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыВидОперации.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыСпособРасчетов.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыСпособОтражения.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыРезерв.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыРезервБУ.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыРезервНУ.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыНеОблагаетсяНДФЛ.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыОблагаетсяЕНВД.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыСумма.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыВзносыПоЕдиномуТарифу.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыФСС.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыФССНесчастныеСлучаи.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРПоСуммарномуТарифу.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРСПревышения.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРДоПредельнойВеличины.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРСтраховая.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРНакопительная.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРЗаЗанятыхНаПодземныхИВредныхРаботахБезСпецОценки.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРЗаЗанятыхНаПодземныхИВредныхРаботахСпецОценка.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРЗаЗанятыхНаТяжелыхИПрочихРаботахБезСпецОценки.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРЗаЗанятыхНаТяжелыхИПрочихРаботахСпецОценка.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРНаДоплатуЛетчикам.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРНаДоплатуШахтерам.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРЗаЗанятыхНаПодземныхИВредныхРаботах.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыПФРЗаЗанятыхНаТяжелыхИПрочихРаботах.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыФФОМС.Имя);
ОформляемыеПоля.Добавить(Элементы.НачисленнаяЗарплатаИВзносыТФОМС.Имя);
Элемент = УсловноеОформление.Элементы.Добавить();
Для Каждого ОформляемоеПоле Из ОформляемыеПоля Цикл
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(ОформляемоеПоле);
КонецЦикла;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Сводно");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;
Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
КонецПроцедуры
&НаСервере
Процедура УстановитьУсловноеОформлениеТаблицыУдержаннаяЗарплата()
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаФизическоеЛицо.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Сводно");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Истина;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ФизическоеЛицо");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ЯвляетсяОснованиемОформленияКассовогоЧека");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.СпособРасчетов");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Перечисления.СпособыРасчетовСФизическимиЛицами.ОплатаТруда;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
СписокОпераций = Новый СписокЗначений;
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.АлиментыПрочиеИсполнительныеЛистыКонтрагенты);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.ВознаграждениеПлатежногоАгентаКонтрагенты);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.УдержаниеНеизрасходованныхПодотчетныхСумм);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.УдержаниеПоПрочимОперациямСРаботниками);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.ВозмещениеУщерба);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.НачисленоПроцентовПоЗайму);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.ПогашениеЗаймов);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.ПроцентыПоЗайму);
ОтборЭлемента.ПравоеЗначение = СписокОпераций;
Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Ложь);
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<не требуется>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаКонтрагент.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
СписокОпераций = СписокХозяйственныхОперацийСИспользованиемПолучателя();
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.УдержаниеНеизрасходованныхПодотчетныхСумм);
ОтборЭлемента.ПравоеЗначение = СписокОпераций;
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<не требуется>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаКонтрагент.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Перечисления.ВидыОперацийПоЗарплате.УдержаниеНеизрасходованныхПодотчетныхСумм;
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаЦельВыдачи.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
ОтборЭлемента.ПравоеЗначение = Перечисления.ВидыОперацийПоЗарплате.УдержаниеНеизрасходованныхПодотчетныхСумм;
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаКонтрагент.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ОтборЭлемента.ПравоеЗначение = СписокХозяйственныхОперацийСИспользованиемПолучателя();
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.Контрагент");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<получатель>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаЦельВыдачи.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Перечисления.ВидыОперацийПоЗарплате.УдержаниеНеизрасходованныхПодотчетныхСумм;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ЦельВыдачи");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("КонтролироватьВыдачуПодОтчетВРазрезеЦелей");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Истина;
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<цель выдачи>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаЦельВыдачи.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Перечисления.ВидыОперацийПоЗарплате.УдержаниеНеизрасходованныхПодотчетныхСумм;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ЦельВыдачи");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("КонтролироватьВыдачуПодОтчетВРазрезеЦелей");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;
Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<не требуется>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаСтатьяАктивовПассивов.Имя);
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаАналитикаАктивовПассивов.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Перечисления.ВидыОперацийПоЗарплате.ВозвратИзлишнеВыплаченныхСуммВследствиеСчетныхОшибок;
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаСтатьяДоходов.Имя);
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаАналитикаДоходов.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
ОтборЭлемента.ПравоеЗначение = Перечисления.ВидыОперацийПоЗарплате.ВозвратИзлишнеВыплаченныхСуммВследствиеСчетныхОшибок;
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаСчетРеглУчетаАктивовПассивов.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Перечисления.ВидыОперацийПоЗарплате.ВозвратИзлишнеВыплаченныхСуммВследствиеСчетныхОшибок;
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаСчетРеглУчетаДоходов.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
ОтборЭлемента.ПравоеЗначение = Перечисления.ВидыОперацийПоЗарплате.ВозвратИзлишнеВыплаченныхСуммВследствиеСчетныхОшибок;
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаСчетРеглУчетаДоходов.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Перечисления.ВидыОперацийПоЗарплате.ВозвратИзлишнеВыплаченныхСуммВследствиеСчетныхОшибок;
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<не требуется>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаСтатьяАктивовПассивов.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
СписокОпераций = Новый СписокЗначений;
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.ПогашениеЗаймов);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.ПроцентыПоЗайму);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.УдержаниеНеизрасходованныхПодотчетныхСумм);
ОтборЭлемента.ПравоеЗначение = СписокОпераций;
Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Ложь);
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<не требуется>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаАналитикаАктивовПассивов.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
СписокОпераций = Новый СписокЗначений;
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.ПогашениеЗаймов);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.ПроцентыПоЗайму);
СписокОпераций.Добавить(Перечисления.ВидыОперацийПоЗарплате.УдержаниеНеизрасходованныхПодотчетныхСумм);
ОтборЭлемента.ПравоеЗначение = СписокОпераций;
Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Ложь);
Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.УдержаннаяЗарплатаОписаниеУдержанияДляЧека.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.УдержаннаяЗарплата.ЯвляетсяОснованиемОформленияКассовогоЧека");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<не требуется>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Ложь);
Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
КонецПроцедуры
&НаСервере
Процедура УстановитьУсловноеОформлениеТаблицыНачисленныйНДФЛ()
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленныйНДФЛПодразделениеПредприятия.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленныйНДФЛ.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
СписокОпераций = Новый СписокЗначений;
СписокОпераций.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.НДФЛДоходыКонтрагентов"));
СписокОпераций.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.НДФЛРасчетыСБывшимиСотрудниками"));
СписокОпераций.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.НДФЛПрочиеРасчетыСПерсоналом"));
ОтборЭлемента.ПравоеЗначение = СписокОпераций;
Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленныйНДФЛПодразделениеПредприятия.Имя);
ГруппаИ = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
ОтборЭлемента = ГруппаИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НачисленныйНДФЛ.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
СписокОпераций = Новый СписокЗначений;
СписокОпераций.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.НДФЛДоходыКонтрагентов"));
СписокОпераций.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.НДФЛРасчетыСБывшимиСотрудниками"));
СписокОпераций.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.НДФЛПрочиеРасчетыСПерсоналом"));
ОтборЭлемента.ПравоеЗначение = СписокОпераций;
ОтборЭлемента = ГруппаИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ВключеныПодразделенияНаСчетахУчетаНДФЛ");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<не требуется>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НачисленныйНДФЛФизическоеЛицо.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Сводно");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Истина;
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
КонецПроцедуры
&НаСервере
Процедура УстановитьУсловноеОформлениеТаблицыВыплатаЗаСчетРезервов()
Элемент = УсловноеОформление.Элементы.Добавить();
ОформляемыеПоля = Новый Массив;
ОформляемыеПоля.Добавить(Элементы.ВыплатаЗаСчетРезервовРезерв.Имя);
ОформляемыеПоля.Добавить(Элементы.ВыплатаЗаСчетРезервовРезервБУ.Имя);
ОформляемыеПоля.Добавить(Элементы.ВыплатаЗаСчетРезервовРезервНУ.Имя);
Элемент = УсловноеОформление.Элементы.Добавить();
Для Каждого ОформляемоеПоле Из ОформляемыеПоля Цикл
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(ОформляемоеПоле);
КонецЦикла;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ИспользоватьРезервыПоОплатеТруда");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ВыплатаЗаСчетРезервовРезерв.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.ВыплатаЗаСчетРезервов.Резерв");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.ВыплатаЗаСчетРезервов.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ОтборЭлемента.ПравоеЗначение = Новый СписокЗначений;
ОтборЭлемента.ПравоеЗначение.ЗагрузитьЗначения(
Перечисления.ВидыОперацийПоЗарплате.ЕжегодныеОтпускаОценочныеОбязательстваИРезервы());
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", Строка(Справочники.Резервы.РезервЕжегодныхОтпусков()));
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Ложь);
Элемент = УсловноеОформление.Элементы.Добавить();
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ВыплатаЗаСчетРезервовРезервБУ.Имя);
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ВыплатаЗаСчетРезервовРезервНУ.Имя);
ГруппаИЛИ = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИЛИ.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
ОтборЭлемента = ГруппаИЛИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.ВыплатаЗаСчетРезервов.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
ОтборЭлемента.ПравоеЗначение = Новый СписокЗначений;
ОтборЭлемента.ПравоеЗначение.ЗагрузитьЗначения(
Перечисления.ВидыОперацийПоЗарплате.НачисленияРезервыПоОплатеТруда());
ОтборЭлемента = ГруппаИЛИ.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.ВыплатаЗаСчетРезервов.ВидОперации");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ОтборЭлемента.ПравоеЗначение = Новый СписокЗначений;
ОтборЭлемента.ПравоеЗначение.ЗагрузитьЗначения(
Перечисления.ВидыОперацийПоЗарплате.ЕжегодныеОтпускаОценочныеОбязательстваИРезервы());
Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
КонецПроцедуры
&НаСервере
Процедура УстановитьВидимостьИДоступность()
Элементы.ПоказатьРаботниковОрганизации.Видимость = Не Объект.Сводно;
Элементы.ГруппаВыплатаЗаСчетРезервов.Видимость = ИспользоватьРезервыПоОплатеТруда И ПоказатьВыплатуЗаСчетРезервов;
УстановитьОтображениеВзносов();
ОтражениеЗарплатыВБухучете.УстановитьВидимостьКолонокКодовТерриторийДокументОтражениеВУчете(ЭтотОбъект, Объект.ПериодРегистрации, "НачисленныйНДФЛ");
КонецПроцедуры
&НаСервере
Процедура ОрганизацияПриИзмененииНаСервере()
ВалютаРегламентированногоУчета = ЗначениеНастроекПовтИсп.ВалютаРегламентированногоУчетаОрганизации(Объект.Организация);
ПараметрыУчетнойПолитики = НастройкиНалоговУчетныхПолитик.ДействующиеПараметрыНалоговУчетныхПолитикНаДату(
"НастройкиСистемыНалогообложения", Объект.Организация, Объект.ПериодРегистрации);
Если ПараметрыУчетнойПолитики <> Неопределено Тогда
ПрименяетсяЕНВД = ПараметрыУчетнойПолитики.ПрименяетсяЕНВД;
КонецЕсли;
ИспользоватьРезервыПоОплатеТруда =
РезервыПоОплатеТруда.ФормируютсяРезервыВОрганизации(Объект.Организация, Объект.ПериодРегистрации);
УстановитьВидимостьИДоступность();
КонецПроцедуры
&НаСервере
Процедура ПериодРегистрацииПриИзмененииНаСервере()
ПараметрыУчетнойПолитики = НастройкиНалоговУчетныхПолитик.ДействующиеПараметрыНалоговУчетныхПолитикНаДату(
"НастройкиСистемыНалогообложения", Объект.Организация, Объект.ПериодРегистрации);
Если ПараметрыУчетнойПолитики <> Неопределено Тогда
ПрименяетсяЕНВД = ПараметрыУчетнойПолитики.ПрименяетсяЕНВД;
КонецЕсли;
ИспользоватьРезервыПоОплатеТруда =
РезервыПоОплатеТруда.ФормируютсяРезервыВОрганизации(Объект.Организация, Объект.ПериодРегистрации);
УстановитьВидимостьИДоступность();
КонецПроцедуры
&НаСервере
Процедура УстановитьОтображениеВзносов()
КолонкиВзносов = Документы.ОтражениеЗарплатыВФинансовомУчете.КолонкиВзносов();
Для Каждого Колонка Из КолонкиВзносов Цикл
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы, "НачисленнаяЗарплатаИВзносы" + Колонка, "Видимость", ПоказатьВзносыПодробно);
КонецЦикла;
Элементы.НачисленнаяЗарплатаИВзносыВзносыВсего.Видимость = НЕ ПоказатьВзносыПодробно;
Если ПоказатьВзносыПодробно Тогда
ОтражениеЗарплатыВБухучете.УстановитьВидимостьКолонокВзносов(ЭтотОбъект, Объект.ПериодРегистрации, "НачисленнаяЗарплатаИВзносы");
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьТаблицу(СписокТаблиц)
ОчиститьСообщения();
КоличествоОчищаемыхТаблиц = 0;
ИмяОчищаемойТаблицы = "";
Для Каждого Таблица Из СписокТаблиц Цикл
Если Объект[Таблица.Значение].Количество() > 0 Тогда
КоличествоОчищаемыхТаблиц = КоличествоОчищаемыхТаблиц + 1;
ИмяОчищаемойТаблицы = Таблица.Представление;
КонецЕсли;
КонецЦикла;
Если КоличествоОчищаемыхТаблиц > 1 Тогда
ТекстВопроса = Нстр("ru = 'Таблицы документа будут очищены. Продолжить?'");
Ответ = Неопределено;
ПоказатьВопрос(Новый ОписаниеОповещения("ЗаполнитьТаблицуЗавершение", ЭтотОбъект, Новый Структура("СписокТаблиц", СписокТаблиц)), ТекстВопроса, РежимДиалогаВопрос.ДаНет);
ИначеЕсли КоличествоОчищаемыхТаблиц = 1 Тогда
ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Нстр("ru = 'Список %1 будет очищен. Продолжить?'"), ИмяОчищаемойТаблицы);
Ответ = Неопределено;
ПоказатьВопрос(Новый ОписаниеОповещения("ЗаполнитьТаблицуЗавершение", ЭтотОбъект, Новый Структура("СписокТаблиц", СписокТаблиц)), ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
ЗаполнитьТаблицуФрагмент(СписокТаблиц);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьТаблицуЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
СписокТаблиц = ДополнительныеПараметры.СписокТаблиц;
Ответ = РезультатВопроса;
Если Ответ = КодВозвратаДиалога.Нет Тогда
Возврат;
КонецЕсли;
ЗаполнитьТаблицуФрагмент(СписокТаблиц);
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьТаблицуФрагмент(Знач СписокТаблиц)
Результат = РезультатЗаполненияВДлительнойОперации(СписокТаблиц);
Если Результат.ЗаданиеВыполнено Тогда
ОповеститьОбИзменении(Объект.Ссылка);
ПоказатьОповещениеПользователя(
Результат.ТекстОповещения,
,
Результат.ПояснениеОповещения,
БиблиотекаКартинок.Информация32);
Иначе
ИдентификаторЗадания = Результат.ИдентификаторЗадания;
АдресХранилища = Результат.АдресХранилища;
ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания);
ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗадания", 1, Истина);
ФормаДлительнойОперации = ДлительныеОперацииКлиент.ОткрытьФормуДлительнойОперации(ЭтотОбъект, ИдентификаторЗадания);
КонецЕсли;
КонецПроцедуры
&НаСервере
Функция РезультатЗаполненияВДлительнойОперации(СписокТаблиц)
СтрокаСписокТаблиц = "";
Если СписокТаблиц.Количество() = 0 Или СписокТаблиц.НайтиПоЗначению("НачисленнаяЗарплатаИВзносы") <> Неопределено Тогда
Объект.НачисленнаяЗарплатаИВзносы.Очистить();
Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.Очистить();
СтрокаСписокТаблиц = "НачисленнаяЗарплатаИВзносы,";
КонецЕсли;
Если СписокТаблиц.Количество() = 0 Или СписокТаблиц.НайтиПоЗначению("НачисленныйНДФЛ") <> Неопределено Тогда
Объект.НачисленныйНДФЛ.Очистить();
СтрокаСписокТаблиц = СтрокаСписокТаблиц + "НачисленныйНДФЛ,";
КонецЕсли;
Если СписокТаблиц.Количество() = 0 Или СписокТаблиц.НайтиПоЗначению("УдержаннаяЗарплата") <> Неопределено Тогда
Объект.УдержаннаяЗарплата.Очистить();
СтрокаСписокТаблиц = СтрокаСписокТаблиц + "УдержаннаяЗарплата,";
КонецЕсли;
Если СписокТаблиц.Количество() = 0 Или СписокТаблиц.НайтиПоЗначению("НачисленныеПроцентыПоЗаймам") <> Неопределено Тогда
Объект.НачисленныеПроцентыПоЗаймам.Очистить();
СтрокаСписокТаблиц = СтрокаСписокТаблиц + "УдержаннаяЗарплата,НачисленныеПроцентыПоЗаймам,";
КонецЕсли;
Если СписокТаблиц.Количество() = 0 Или СписокТаблиц.НайтиПоЗначению("ВыплатаЗаСчетРезервов") <> Неопределено Тогда
Объект.ВыплатаЗаСчетРезервов.Очистить();
СтрокаСписокТаблиц = СтрокаСписокТаблиц + "ВыплатаЗаСчетРезервов,";
КонецЕсли;
СтруктураПараметров = Новый Структура("Организация, ПериодРегистрации, СтрокаСписокТаблиц, СписокТаблиц, ДокументСсылка",
Объект.Организация, Объект.ПериодРегистрации, СтрокаСписокТаблиц, СписокТаблиц, Объект.Ссылка);
Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда
АдресХранилища = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор);
Документы.ОтражениеЗарплатыВФинансовомУчете.ПодготовитьДанныеДляЗаполнения(СтруктураПараметров, АдресХранилища);
Результат = Новый Структура("ЗаданиеВыполнено", Истина);
Иначе
НаименованиеЗадания = НСтр("ru = 'Заполнение документа ""Отражение зарплаты в финансовом учете""'");
Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне(
УникальныйИдентификатор,
"Документы.ОтражениеЗарплатыВФинансовомУчете.ПодготовитьДанныеДляЗаполнения",
СтруктураПараметров,
НаименованиеЗадания);
АдресХранилища = Результат.АдресХранилища;
КонецЕсли;
Результат.Вставить("АдресХранилища", АдресХранилища);
Результат.Вставить("СтрокаСписокТаблиц", СтрокаСписокТаблиц);
Результат.Вставить("СписокТаблиц", СписокТаблиц);
Результат.Вставить("ТекстОповещения", );
Результат.Вставить("ПояснениеОповещения", );
Результат.Вставить("ЕстьДанныеДляЗаполнения", Ложь);
Результат.Вставить("Сводно", Объект.Сводно);
Результат.Вставить("ЗаполнятьАналитики", Истина);
Если Результат.ЗаданиеВыполнено Тогда
Документы.ОтражениеЗарплатыВФинансовомУчете.ЗаполнениеПослеВыполненияДлительнойОперации(Объект, Результат);
Если СписокТаблиц.НайтиПоЗначению("УдержаннаяЗарплата") <> Неопределено Тогда
НастройкаСчетовУчетаСервер.ОбновитьПредставлениеНастройки(ЭтотОбъект, "Объект.УдержаннаяЗарплата");
КонецЕсли;
УстановитьВидимостьИДоступность();
КонецЕсли;
Возврат Результат;
КонецФункции
&НаСервереБезКонтекста
Функция СтатьяАктивовПассивовПоУмолчанию(ФизическоеЛицо, ПодразделениеПредприятия, ВидОперации, Контрагент, ТекущийДокумент, ДатаАктуальности)
Возврат Документы.ОтражениеЗарплатыВФинансовомУчете.СтатьяАктивовПассивовПоУмолчанию(ФизическоеЛицо, ПодразделениеПредприятия, ВидОперации, Контрагент, ТекущийДокумент, ДатаАктуальности);
КонецФункции
&НаСервереБезКонтекста
Функция СтатьяДоходовПоУмолчанию(ФизическоеЛицо, ПодразделениеПредприятия, ТекущийДокумент, ДатаАктуальности)
Возврат Документы.ОтражениеЗарплатыВФинансовомУчете.СтатьяДоходовПоУмолчанию(ФизическоеЛицо, ПодразделениеПредприятия, ТекущийДокумент, ДатаАктуальности);
КонецФункции
&НаСервере
Процедура ЗаполнитьСтатьюАналитикуРасходовСтроки(ИдентификаторСтроки)
ДанныеСтроки = Объект.УдержаннаяЗарплата.НайтиПоИдентификатору(ИдентификаторСтроки);
СтатьяРасходовАналитика = СтатьяАктивовПассивовПоУмолчанию(
ДанныеСтроки.ФизическоеЛицо,
ДанныеСтроки.ПодразделениеПредприятия,
ДанныеСтроки.ВидОперации,
ДанныеСтроки.Контрагент,
Объект.Ссылка,
Объект.Дата);
ЗаполнитьЗначенияСвойств(ДанныеСтроки, СтатьяРасходовАналитика, "СтатьяАктивовПассивов, АналитикаАктивовПассивов");
Если НЕ ЗначениеЗаполнено(ДанныеСтроки.НастройкаСчетовУчета) Тогда
НастройкаСчетовУчета = НастройкаСчетовУчетаКлиентСервер.СоставНастройкиСчетовУчета();
НастройкаСчетовПоУмолчанию = НастройкаСчетовУчетаСлужебныйВызовСервера.ДанныеНастроекСчетовУчетаПоУмолчанию(
ДанныеСтроки.СтатьяАктивовПассивов).Получить(ДанныеСтроки.СтатьяАктивовПассивов);
Если ПолучитьФункциональнуюОпцию("ИспользоватьРеглУчет") Тогда
Если ЗначениеЗаполнено(СтатьяРасходовАналитика.СчетУчета) Тогда
ЗаполнитьЗначенияСвойств(НастройкаСчетовУчета, СтатьяРасходовАналитика,
НастройкаСчетовУчетаКлиентСервер.РеквизитыНастройкиСчетаУчета());
ИначеЕсли НастройкаСчетовПоУмолчанию <> Неопределено Тогда
ЗаполнитьЗначенияСвойств(НастройкаСчетовУчета, НастройкаСчетовПоУмолчанию.ДанныеНастройки,
НастройкаСчетовУчетаКлиентСервер.РеквизитыНастройкиСчетаУчета());
КонецЕсли;
КонецЕсли;
НастройкаСчетовЗаполнена = Ложь;
НастройкаСчетовЗаполнена = НастройкаСчетовЗаполнена ИЛИ ЗначениеЗаполнено(НастройкаСчетовУчета.СчетУчета);
Если НастройкаСчетовЗаполнена Тогда
ДанныеСтроки.НастройкаСчетовУчета = НастройкаСчетовУчетаСервер.НоваяНастройкаСчетовУчета(НастройкаСчетовУчета, ЭтотОбъект);
КонецЕсли;
НастройкаСчетовУчетаСервер.ОбновитьПредставлениеНастройки(ЭтаФорма, "Объект.УдержаннаяЗарплата", ИдентификаторСтроки);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьСтатьюАналитикуДоходовСтроки(ДанныеСтроки)
СтатьяДоходовАналитика = СтатьяДоходовПоУмолчанию(
ДанныеСтроки.ФизическоеЛицо,
ДанныеСтроки.ПодразделениеПредприятия,
Объект.Ссылка,
Объект.Дата);
ЗаполнитьЗначенияСвойств(ДанныеСтроки, СтатьяДоходовАналитика);
КонецПроцедуры
&НаСервере
Процедура УстановитьСтатьюДоходовСервер(СтатьяДоходов)
Для Каждого Доход Из РаботаСТабличнымиЧастямиКлиентСервер.ЭлементыКоллекции(Объект.НачисленныеПроцентыПоЗаймам, Элементы.НачисленныеПроцентыПоЗаймам.ВыделенныеСтроки) Цикл
Доход.СтатьяДоходов = СтатьяДоходов;
Доход.АналитикаДоходов = ПланыВидовХарактеристик.СтатьиДоходов.ПолучитьАналитикуДоходовПоУмолчанию(
Доход.СтатьяДоходов,
Объект,
Доход.ПодразделениеПредприятия);
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура РассчитатьИтогиВзносовНаСервере()
КолонкиВзносов = Документы.ОтражениеЗарплатыВФинансовомУчете.КолонкиВзносов();
Для Каждого Строка Из Объект.НачисленнаяЗарплатаИВзносы Цикл
Строка.ВзносыВсего = 0;
Для Каждого Колонка Из КолонкиВзносов Цикл
Строка.ВзносыВсего = Строка.ВзносыВсего + Строка[Колонка];
КонецЦикла;
КонецЦикла;
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Функция СписокХозяйственныхОперацийСИспользованиемПолучателя()
СписокЗначений = Новый СписокЗначений;
СписокЗначений.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.АлиментыПрочиеИсполнительныеЛисты"));
СписокЗначений.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.Профвзносы"));
СписокЗначений.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.ПрочиеУдержания"));
СписокЗначений.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.ВознаграждениеПлатежногоАгента"));
Возврат СписокЗначений;
КонецФункции
&НаСервере
Функция ДетализацияНачисленийВХранилище(СтруктураОтбора)
ДетализацияНачислений = Новый Структура;
ДетализацияНачислений.Вставить("НачисленнаяЗарплатаИВзносыПоФизлицам",
Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.Выгрузить(СтруктураОтбора));
Возврат ПоместитьВоВременноеХранилище(ДетализацияНачислений, УникальныйИдентификатор);
КонецФункции
&НаСервере
Процедура ОбработкаВыбораСпискаФизЛицНаСервере(Параметры, ИдентификаторТекущейСтроки)
НайденныеСтроки = Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.НайтиСтроки(Параметры.СтруктураОтбора);
Для Каждого Строка Из НайденныеСтроки Цикл
Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.Удалить(Строка);
КонецЦикла;
ДетализацияНачислений = ПолучитьИзВременногоХранилища(Параметры.АдресВХранилище);
Для Каждого Строка Из ДетализацияНачислений.НачисленнаяЗарплатаИВзносыПоФизлицам Цикл
ЗаполнитьЗначенияСвойств(Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.Добавить(), Строка);
КонецЦикла;
ОбновитьСводнуюТаблицуПоДетальнымЗаписям();
НайденныеСтроки = Объект.НачисленнаяЗарплатаИВзносы.НайтиСтроки(Параметры.СтруктураОтбора);
Если НайденныеСтроки.Количество() > 0 Тогда
ИдентификаторТекущейСтроки = НайденныеСтроки[0].ПолучитьИдентификатор();
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ОбновитьСводнуюТаблицуПоДетальнымЗаписям()
Запрос = Новый Запрос(
"ВЫБРАТЬ
| ДетальныеЗаписи.ПодразделениеПредприятия,
| ДетальныеЗаписи.ВидОперации,
| ДетальныеЗаписи.СпособРасчетов,
| ДетальныеЗаписи.СпособОтраженияЗарплатыВБухучете,
| ДетальныеЗаписи.Резерв,
| ДетальныеЗаписи.РезервБУ,
| ДетальныеЗаписи.РезервНУ,
| ДетальныеЗаписи.ОблагаетсяЕНВД,
| ДетальныеЗаписи.НеОблагаетсяНДФЛ,
| ДетальныеЗаписи.Сумма,
| ДетальныеЗаписи.ПФРСтраховая,
| ДетальныеЗаписи.ПФРНакопительная,
| ДетальныеЗаписи.ПФРПоСуммарномуТарифу,
| ДетальныеЗаписи.ПФРДоПредельнойВеличины,
| ДетальныеЗаписи.ПФРСПревышения,
| ДетальныеЗаписи.ПФРНаДоплатуЛетчикам,
| ДетальныеЗаписи.ПФРНаДоплатуШахтерам,
| ДетальныеЗаписи.ПФРЗаЗанятыхНаПодземныхИВредныхРаботах,
| ДетальныеЗаписи.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботах,
| ДетальныеЗаписи.ПФРЗаЗанятыхНаПодземныхИВредныхРаботахБезСпецОценки,
| ДетальныеЗаписи.ПФРЗаЗанятыхНаПодземныхИВредныхРаботахСпецОценка,
| ДетальныеЗаписи.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахБезСпецОценки,
| ДетальныеЗаписи.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахСпецОценка,
| ДетальныеЗаписи.ОПСпоМеждународнымДоговорам,
| ДетальныеЗаписи.ОПСпоМеждународнымДоговорамСПревышения,
| ДетальныеЗаписи.ОМСпоМеждународнымДоговорам,
| ДетальныеЗаписи.ОМСпоМеждународнымДоговорамСПревышения,
| ДетальныеЗаписи.ОССпоМеждународнымДоговорам,
| ДетальныеЗаписи.ОССпоМеждународнымДоговорамСПревышения,
| ДетальныеЗаписи.ВзносыПоЕдиномуТарифу,
| ДетальныеЗаписи.ФСС,
| ДетальныеЗаписи.ФФОМС,
| ДетальныеЗаписи.ТФОМС,
| ДетальныеЗаписи.ФССНесчастныеСлучаи,
| ДетальныеЗаписи.ВзносыВсего
|ПОМЕСТИТЬ ВТДетальныеЗаписи
|ИЗ
| &ДетальныеЗаписи КАК ДетальныеЗаписи
|;
|
|
|ВЫБРАТЬ
| ВТДетальныеЗаписи.ПодразделениеПредприятия КАК ПодразделениеПредприятия,
| ВТДетальныеЗаписи.ПодразделениеПредприятия.Наименование КАК НаименованиеПодразделения,
| ВТДетальныеЗаписи.ВидОперации КАК ВидОперации,
| ВТДетальныеЗаписи.СпособРасчетов КАК СпособРасчетов,
| ВТДетальныеЗаписи.СпособОтраженияЗарплатыВБухучете КАК СпособОтраженияЗарплатыВБухучете,
| ВТДетальныеЗаписи.СпособОтраженияЗарплатыВБухучете.Наименование КАК НаименованиеСпособа,
| ВТДетальныеЗаписи.Резерв КАК Резерв,
| ВТДетальныеЗаписи.РезервБУ КАК РезервБУ,
| ВТДетальныеЗаписи.РезервНУ КАК РезервНУ,
| ВТДетальныеЗаписи.ОблагаетсяЕНВД,
| ВТДетальныеЗаписи.НеОблагаетсяНДФЛ,
| СУММА(ВТДетальныеЗаписи.Сумма) КАК Сумма,
| СУММА(ВТДетальныеЗаписи.ПФРСтраховая) КАК ПФРСтраховая,
| СУММА(ВТДетальныеЗаписи.ПФРНакопительная) КАК ПФРНакопительная,
| СУММА(ВТДетальныеЗаписи.ПФРПоСуммарномуТарифу) КАК ПФРПоСуммарномуТарифу,
| СУММА(ВТДетальныеЗаписи.ПФРДоПредельнойВеличины) КАК ПФРДоПредельнойВеличины,
| СУММА(ВТДетальныеЗаписи.ПФРСПревышения) КАК ПФРСПревышения,
| СУММА(ВТДетальныеЗаписи.ПФРНаДоплатуЛетчикам) КАК ПФРНаДоплатуЛетчикам,
| СУММА(ВТДетальныеЗаписи.ПФРНаДоплатуШахтерам) КАК ПФРНаДоплатуШахтерам,
| СУММА(ВТДетальныеЗаписи.ПФРЗаЗанятыхНаПодземныхИВредныхРаботах) КАК ПФРЗаЗанятыхНаПодземныхИВредныхРаботах,
| СУММА(ВТДетальныеЗаписи.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботах) КАК ПФРЗаЗанятыхНаТяжелыхИПрочихРаботах,
| СУММА(ВТДетальныеЗаписи.ПФРЗаЗанятыхНаПодземныхИВредныхРаботахБезСпецОценки) КАК ПФРЗаЗанятыхНаПодземныхИВредныхРаботахБезСпецОценки,
| СУММА(ВТДетальныеЗаписи.ПФРЗаЗанятыхНаПодземныхИВредныхРаботахСпецОценка) КАК ПФРЗаЗанятыхНаПодземныхИВредныхРаботахСпецОценка,
| СУММА(ВТДетальныеЗаписи.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахБезСпецОценки) КАК ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахБезСпецОценки,
| СУММА(ВТДетальныеЗаписи.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахСпецОценка) КАК ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахСпецОценка,
| СУММА(ВТДетальныеЗаписи.ОПСпоМеждународнымДоговорам) КАК ОПСпоМеждународнымДоговорам,
| СУММА(ВТДетальныеЗаписи.ОПСпоМеждународнымДоговорамСПревышения) КАК ОПСпоМеждународнымДоговорамСПревышения,
| СУММА(ВТДетальныеЗаписи.ОМСпоМеждународнымДоговорам) КАК ОМСпоМеждународнымДоговорам,
| СУММА(ВТДетальныеЗаписи.ОМСпоМеждународнымДоговорамСПревышения) КАК ОМСпоМеждународнымДоговорамСПревышения,
| СУММА(ВТДетальныеЗаписи.ОССпоМеждународнымДоговорам) КАК ОССпоМеждународнымДоговорам,
| СУММА(ВТДетальныеЗаписи.ОССпоМеждународнымДоговорамСПревышения) КАК ОССпоМеждународнымДоговорамСПревышения,
| СУММА(ВТДетальныеЗаписи.ВзносыПоЕдиномуТарифу) КАК ВзносыПоЕдиномуТарифу,
| СУММА(ВТДетальныеЗаписи.ФСС) КАК ФСС,
| СУММА(ВТДетальныеЗаписи.ФФОМС) КАК ФФОМС,
| СУММА(ВТДетальныеЗаписи.ТФОМС) КАК ТФОМС,
| СУММА(ВТДетальныеЗаписи.ФССНесчастныеСлучаи) КАК ФССНесчастныеСлучаи,
| СУММА(ВТДетальныеЗаписи.ВзносыВсего) КАК ВзносыВсего
|ИЗ
| ВТДетальныеЗаписи КАК ВТДетальныеЗаписи
|
|СГРУППИРОВАТЬ ПО
| ВТДетальныеЗаписи.ПодразделениеПредприятия,
| ВТДетальныеЗаписи.ПодразделениеПредприятия.Наименование,
| ВТДетальныеЗаписи.ВидОперации,
| ВТДетальныеЗаписи.СпособРасчетов,
| ВТДетальныеЗаписи.СпособОтраженияЗарплатыВБухучете,
| ВТДетальныеЗаписи.СпособОтраженияЗарплатыВБухучете.Наименование,
| ВТДетальныеЗаписи.Резерв,
| ВТДетальныеЗаписи.РезервБУ,
| ВТДетальныеЗаписи.РезервНУ,
| ВТДетальныеЗаписи.ОблагаетсяЕНВД,
| ВТДетальныеЗаписи.НеОблагаетсяНДФЛ
|
|УПОРЯДОЧИТЬ ПО
| НаименованиеПодразделения,
| ВидОперации,
| НаименованиеСпособа");
Запрос.УстановитьПараметр("ДетальныеЗаписи", Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.Выгрузить());
Результат = Запрос.Выполнить();
Объект.НачисленнаяЗарплатаИВзносы.Загрузить(Результат.Выгрузить());
КонецПроцедуры
&НаСервере
Процедура СвернутьТаблицыНаСервере()
Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.Очистить();
НачисленныйНДФЛ = Объект.НачисленныйНДФЛ.Выгрузить();
НачисленныйНДФЛ.Свернуть("ПодразделениеПредприятия, ВидОперации, СпособРасчетов, СтавкаНДФЛ, НДФЛСДивидендов, РегистрацияВНалоговомОргане", "Сумма");
Объект.НачисленныйНДФЛ.Загрузить(НачисленныйНДФЛ);
УстановитьВидимостьИДоступность();
КонецПроцедуры
&НаКлиенте
Процедура ОткрытьФормуСведенийПоРаботникам(НоваяСтрока = Ложь)
ПараметрыДетализации = СтруктураПолейГруппировки();
Если НоваяСтрока Тогда
ПараметрыДетализации.СпособРасчетов = ПредопределенноеЗначение("Перечисление.СпособыРасчетовСФизическимиЛицами.ОплатаТруда");
ПараметрыДетализации.ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.НачисленоДоход");
Иначе
ЗаполнитьЗначенияСвойств(ПараметрыДетализации, Элементы.НачисленнаяЗарплатаИВзносы.ТекущиеДанные);
КонецЕсли;
ПараметрыДетализации.Вставить("АдресВХранилище", ДетализацияНачисленийВХранилище(ПараметрыДетализации));
ПараметрыДетализации.Вставить("ИспользоватьРезервыПоОплатеТруда", ИспользоватьРезервыПоОплатеТруда);
ПараметрыДетализации.Вставить("ПериодРегистрации", Объект.ПериодРегистрации);
ПараметрыДетализации.Вставить("ПрименяетсяЕНВД", ПрименяетсяЕНВД);
ПараметрыДетализации.Вставить("Организация", Объект.Организация);
ПараметрыДетализации.Вставить("Дата", Объект.Дата);
ОткрытьФорму("Документ.ОтражениеЗарплатыВФинансовомУчете.Форма.ФормаСпискаФизическихЛиц",
Новый Структура("ПараметрыДетализации, ТолькоПросмотр", ПараметрыДетализации, ТолькоПросмотр), ЭтотОбъект);
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Функция СпособОтраженияТребуется(ВидОперации)
Если ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.ЕжегодныйОтпускОценочныеОбязательстваИРезервы")
Или ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.ПособиеНаПогребение")
Или ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.РасходыПоСтрахованиюФСС")
Или ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.РасходыПоСтрахованиюФССНС") Тогда
Возврат Ложь;
КонецЕсли;
Возврат Истина;
КонецФункции
&НаКлиенте
Процедура Подключаемый_ПроверитьВыполнениеЗадания()
Попытка
Если ФормаДлительнойОперации.Открыта()
И ФормаДлительнойОперации.ИдентификаторЗадания = ИдентификаторЗадания Тогда
Если ЗаданиеВыполнено(ИдентификаторЗадания) Тогда
Результат = Новый Структура;
Результат.Вставить("ТекстОповещения", );
Результат.Вставить("ПояснениеОповещения", );
Результат.Вставить("ЕстьДанныеДляЗаполнения", Ложь);
Результат.Вставить("АдресХранилища", АдресХранилища);
Результат.Вставить("Сводно", Объект.Сводно);
Результат.Вставить("ЗаполнятьАналитики", Истина);
Результат.Вставить("СтрокаСписокТаблиц", СтрокаСписокТаблиц);
Результат.Вставить("СписокТаблиц", СписокТаблиц);
ЗаполнениеПослеВыполненияДлительнойОперацииНаСервере(Результат);
ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(ФормаДлительнойОперации);
ОповеститьОбИзменении(Объект.Ссылка);
ПоказатьОповещениеПользователя(
Результат.ТекстОповещения,
,
Результат.ПояснениеОповещения,
БиблиотекаКартинок.Информация32);
Иначе
ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания);
ПодключитьОбработчикОжидания(
"Подключаемый_ПроверитьВыполнениеЗадания",
ПараметрыОбработчикаОжидания.ТекущийИнтервал,
Истина);
КонецЕсли;
КонецЕсли;
Исключение
ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(ФормаДлительнойОперации);
ВызватьИсключение;
КонецПопытки;
КонецПроцедуры
&НаСервере
Процедура ЗаполнениеПослеВыполненияДлительнойОперацииНаСервере(Результат)
Документы.ОтражениеЗарплатыВФинансовомУчете.ЗаполнениеПослеВыполненияДлительнойОперации(Объект, Результат);
КонецПроцедуры
&НаСервереБезКонтекста
Функция ЗаданиеВыполнено(ИдентификаторЗадания)
Возврат ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания);
КонецФункции
&НаСервере
Процедура НачисленнаяЗарплатаИВзносыПередУдалениемНаСервере(Знач ВыделенныеСтроки)
Для Каждого Строка Из ВыделенныеСтроки Цикл
ТекущиеДанные = Объект.НачисленнаяЗарплатаИВзносы.НайтиПоИдентификатору(Строка);
Если ТекущиеДанные = Неопределено Тогда
Возврат;
КонецЕсли;
СтруктураОтбора = СтруктураПолейГруппировки();
ЗаполнитьЗначенияСвойств(СтруктураОтбора, ТекущиеДанные);
НайденныеСтроки = Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.НайтиСтроки(СтруктураОтбора);
Для Каждого Строка Из НайденныеСтроки Цикл
Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.Удалить(Строка);
КонецЦикла;
КонецЦикла;
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьСпособОтраженияЗавершение(ВыбранноеЗначение, ДополнительныеПараметры) Экспорт
Если ЗначениеЗаполнено(ВыбранноеЗначение) Тогда
ЗаполнитьСпособОтраженияНаСервере(ВыбранноеЗначение, ДополнительныеПараметры.Идентификаторы);
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьСпособОтраженияНаСервере(ВыбранноеЗначение, Идентификаторы)
ПараметрыДетализации = СтруктураПолейГруппировки();
Для каждого ИдентификаторСтроки Из Идентификаторы Цикл
ДанныеСтроки = Объект.НачисленнаяЗарплатаИВзносы.НайтиПоИдентификатору(ИдентификаторСтроки);
ЗаполнитьЗначенияСвойств(ПараметрыДетализации, ДанныеСтроки);
НайденныеСтроки = Объект.НачисленнаяЗарплатаИВзносыПоФизлицам.НайтиСтроки(ПараметрыДетализации);
Для Каждого Строка Из НайденныеСтроки Цикл
Если СпособОтраженияТребуется(Строка.ВидОперации) Тогда
Строка.СпособОтраженияЗарплатыВБухучете = ВыбранноеЗначение;
КонецЕсли;
КонецЦикла;
Если СпособОтраженияТребуется(ДанныеСтроки.ВидОперации) Тогда
ДанныеСтроки.СпособОтраженияЗарплатыВБухучете = ВыбранноеЗначение;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ОбновитьЭлементыДополнительныхРеквизитов()
УправлениеСвойствами.ОбновитьЭлементыДополнительныхРеквизитов(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьЗависимостиДополнительныхРеквизитов()
УправлениеСвойствамиКлиент.ОбновитьЗависимостиДополнительныхРеквизитов(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПриИзмененииДополнительногоРеквизита(Элемент)
УправлениеСвойствамиКлиент.ОбновитьЗависимостиДополнительныхРеквизитов(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ВыполнитьКоманду(Команда)
ПодключаемыеКомандыКлиент.ВыполнитьКоманду(ЭтотОбъект, Команда, Объект);
КонецПроцедуры
&НаСервере
Процедура Подключаемый_ВыполнитьКомандуНаСервере(Контекст, Результат) Экспорт
ПодключаемыеКоманды.ВыполнитьКоманду(ЭтотОбъект, Контекст, Объект, Результат);
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ОбновитьКоманды()
ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект);
КонецПроцедуры
#КонецОбласти