public object ПечатьТ60(/*ДокументОбъект*/)
{
/*// тексты запросов
*/
/*РасчетСреднегоЗаработкаТекст =
"ВЫБРАТЬ
| ВЫБОР
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработок)
| ТОГДА 1
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработокНеиндексируемый)
| ТОГДА 2
| ИНАЧЕ 3
| КОНЕЦ КАК ПорядокЗаписей,
| СУММА(ВЫБОР
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработок)
| ИЛИ РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработокНеиндексируемый)
| ТОГДА РасчетСреднегоЗаработка.ОтработаноДней
| ИНАЧЕ 0
| КОНЕЦ) КАК ВсегоДнейРасчетногоПериода,
| СУММА(ВЫБОР
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработок)
| ИЛИ РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработокНеиндексируемый)
| ТОГДА РасчетСреднегоЗаработка.ОтработаноЧасов
| ИНАЧЕ 0
| КОНЕЦ) КАК ВсегоЧасовРасчетногоПериода,
| СУММА(ВЫРАЗИТЬ(ВЫБОР
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработок)
| ТОГДА РасчетСреднегоЗаработка.Результат * ВЫБОР
| КОГДА РасчетСреднегоЗаработка.КоэффициентИндексации < 1
| ТОГДА 1
| ИНАЧЕ РасчетСреднегоЗаработка.КоэффициентИндексации
| КОНЕЦ
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработокНеиндексируемый)
| ТОГДА РасчетСреднегоЗаработка.Результат
| КОГДА РасчетСреднегоЗаработка.ЧислоМесяцев = 0
| ТОГДА 0
| ИНАЧЕ ВЫБОР
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ПоПремиям)
| ТОГДА РасчетСреднегоЗаработка.Результат * ВЫБОР
| КОГДА РасчетСреднегоЗаработка.КоэффициентИндексации < 1
| ТОГДА 1
| ИНАЧЕ РасчетСреднегоЗаработка.КоэффициентИндексации
| КОНЕЦ
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ПоФиксПремиям)
| ТОГДА РасчетСреднегоЗаработка.Результат * ВЫБОР
| КОГДА РасчетСреднегоЗаработка.КоэффициентИндексации < 1
| ТОГДА 1
| ИНАЧЕ РасчетСреднегоЗаработка.КоэффициентИндексации
| КОНЕЦ * ВЫБОР
| КОГДА РасчетСреднегоЗаработка.НормаПоПятидневке = 0
| ТОГДА 0
| ИНАЧЕ РасчетСреднегоЗаработка.ОтработаноПоПятидневке / РасчетСреднегоЗаработка.НормаПоПятидневке
| КОНЕЦ
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ПоФиксПремиямНеИндексируемые)
| ТОГДА РасчетСреднегоЗаработка.Результат * ВЫБОР
| КОГДА РасчетСреднегоЗаработка.НормаПоПятидневке = 0
| ТОГДА 0
| ИНАЧЕ РасчетСреднегоЗаработка.ОтработаноПоПятидневке / РасчетСреднегоЗаработка.НормаПоПятидневке
| КОНЕЦ
| ИНАЧЕ РасчетСреднегоЗаработка.Результат
| КОНЕЦ * ВЫБОР
| КОГДА РасчетСреднегоЗаработка.ЧислоМесяцев > РасчетСреднегоЗаработка.ПериодРасчетаСреднегоЗаработка
| ТОГДА РасчетСреднегоЗаработка.ПериодРасчетаСреднегоЗаработка / РасчетСреднегоЗаработка.ЧислоМесяцев
| ИНАЧЕ 1
| КОНЕЦ
| КОНЕЦ КАК ЧИСЛО(15, 2))) КАК ВсегоУчтено,
| НАЧАЛОПЕРИОДА(РасчетСреднегоЗаработка.БазовыйПериодНачало, МЕСЯЦ) КАК МесяцРасчетногоПериода,
| НАЧАЛОПЕРИОДА(РасчетСреднегоЗаработка.БазовыйПериодКонец, МЕСЯЦ) КАК БазовыйПериодКонец,
| РасчетСреднегоЗаработка.ВидРасчета КАК ВидРасчета,
| СУММА(РасчетСреднегоЗаработка.Результат) КАК Результат,
| РасчетСреднегоЗаработка.ЧислоМесяцев КАК МесяцевПремии,
| ВЫБОР
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&Индексируемые)
| ТОГДА ВЫБОР
| КОГДА РасчетСреднегоЗаработка.КоэффициентИндексации < 1
| ТОГДА 1
| ИНАЧЕ РасчетСреднегоЗаработка.КоэффициентИндексации
| КОНЕЦ
| ИНАЧЕ 1
| КОНЕЦ КАК КоэффициентИндексации,
| ВЫБОР
| КОГДА РасчетСреднегоЗаработка.НормаПоПятидневке = 0
| ТОГДА 0
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ФиксированныеПремии)
| ТОГДА РасчетСреднегоЗаработка.ОтработаноПоПятидневке / РасчетСреднегоЗаработка.НормаПоПятидневке
| ИНАЧЕ 0
| КОНЕЦ КАК ДоляВремени,
| ВЫБОР
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработок)
| ИЛИ РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработокНеиндексируемый)
| ТОГДА 0
| ИНАЧЕ РасчетСреднегоЗаработка.ПериодРасчетаСреднегоЗаработка
| КОНЕЦ КАК ПериодРасчетаСреднегоЗаработка
|ИЗ
| РегистрРасчета.РасчетСреднегоЗаработка КАК РасчетСреднегоЗаработка
|ГДЕ
| РасчетСреднегоЗаработка.Регистратор = &Регистратор
| И РасчетСреднегоЗаработка.СпособРасчета = &СпособРасчета
| И (РасчетСреднегоЗаработка.Результат <> 0
| ИЛИ РасчетСреднегоЗаработка.ОтработаноДней <> 0
| ИЛИ РасчетСреднегоЗаработка.ОтработаноЧасов <> 0)
| И РасчетСреднегоЗаработка.ДатаНачалаРасчетногоПериода = &ДатаНачалаРасчетногоПериода
|
|СГРУППИРОВАТЬ ПО
| НАЧАЛОПЕРИОДА(РасчетСреднегоЗаработка.БазовыйПериодНачало, МЕСЯЦ),
| НАЧАЛОПЕРИОДА(РасчетСреднегоЗаработка.БазовыйПериодКонец, МЕСЯЦ),
| РасчетСреднегоЗаработка.ЧислоМесяцев,
| РасчетСреднегоЗаработка.ВидРасчета,
| ВЫБОР
| КОГДА РасчетСреднегоЗаработка.НормаПоПятидневке = 0
| ТОГДА 0
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ФиксированныеПремии)
| ТОГДА РасчетСреднегоЗаработка.ОтработаноПоПятидневке / РасчетСреднегоЗаработка.НормаПоПятидневке
| ИНАЧЕ 0
| КОНЕЦ,
| ВЫБОР
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработок)
| ИЛИ РасчетСреднегоЗаработка.ВидРасчета В (&ОсновнойЗаработокНеиндексируемый)
| ТОГДА 0
| ИНАЧЕ РасчетСреднегоЗаработка.ПериодРасчетаСреднегоЗаработка
| КОНЕЦ,
| ВЫБОР
| КОГДА РасчетСреднегоЗаработка.ВидРасчета В (&Индексируемые)
| ТОГДА ВЫБОР
| КОГДА РасчетСреднегоЗаработка.КоэффициентИндексации < 1
| ТОГДА 1
| ИНАЧЕ РасчетСреднегоЗаработка.КоэффициентИндексации
| КОНЕЦ
| ИНАЧЕ 1
| КОНЕЦ
|
|УПОРЯДОЧИТЬ ПО
| МесяцРасчетногоПериода,
| ПорядокЗаписей,
| ВидРасчета,
| МесяцевПремии,
| КоэффициентИндексации
|ИТОГИ
| СУММА(ВсегоДнейРасчетногоПериода),
| СУММА(ВсегоЧасовРасчетногоПериода),
| СУММА(ВсегоУчтено)
|ПО
| ОБЩИЕ";*/
/*ДнейКОплатеТекст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ВЫБОР
| КОГДА НАЧАЛОПЕРИОДА(Начисления.ПериодДействияНачало, МЕСЯЦ) = &ПериодРегистрации
| ТОГДА ""Текущий""
| ИНАЧЕ ""Будущий""
| КОНЕЦ КАК ВидМесяца,
| СУММА(ВЫБОР
| КОГДА Начисления.ВидРасчета В (ЗНАЧЕНИЕ(ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ОплатаПоСреднемуОтпШестидневка), ЗНАЧЕНИЕ(ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ОплатаПоСреднемуОтпКалендарныеДни))
| ТОГДА ПроизводственныйКалендарь.КалендарныеДни
| ИНАЧЕ 0
| КОНЕЦ) КАК ДнейКОплатеОсновногоОтпуска,
| СУММА(ВЫБОР
| КОГДА Начисления.ВидРасчета В (ЗНАЧЕНИЕ(ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ОплатаПоСреднемуОтпШестидневка), ЗНАЧЕНИЕ(ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ОплатаПоСреднемуОтпКалендарныеДни))
| ТОГДА 0
| КОГДА Начисления.ВидРасчета.ОбозначениеВТабелеУчетаРабочегоВремени = ЗНАЧЕНИЕ(Справочник.КлассификаторИспользованияРабочегоВремени.ДополнительныйОтпуск)
| ТОГДА ПроизводственныйКалендарь.КалендарныеДни
| ИНАЧЕ 1
| КОНЕЦ) КАК ДнейКОплатеДополнительногоОтпуска,
| СУММА(ВЫБОР
| КОГДА Начисления.ВидРасчета В (ЗНАЧЕНИЕ(ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ОплатаПоСреднемуОтпШестидневка), ЗНАЧЕНИЕ(ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ОплатаПоСреднемуОтпКалендарныеДни))
| ТОГДА ПроизводственныйКалендарь.КалендарныеДни
| КОГДА Начисления.ВидРасчета.ОбозначениеВТабелеУчетаРабочегоВремени = ЗНАЧЕНИЕ(Справочник.КлассификаторИспользованияРабочегоВремени.ДополнительныйОтпуск)
| ТОГДА ПроизводственныйКалендарь.КалендарныеДни
| ИНАЧЕ 1
| КОНЕЦ) КАК ВсегоДнейОтпуска
|ИЗ
| РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций.ФактическийПериодДействия(Регистратор = &Регистратор) КАК Начисления
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК ПроизводственныйКалендарь
| ПО (ПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ Начисления.ПериодДействияНачало И Начисления.ПериодДействияКонец)
|ГДЕ
| (НЕ Начисления.Сторно)
|
|СГРУППИРОВАТЬ ПО
| ВЫБОР
| КОГДА НАЧАЛОПЕРИОДА(Начисления.ПериодДействияНачало, МЕСЯЦ) = &ПериодРегистрации
| ТОГДА ""Текущий""
| ИНАЧЕ ""Будущий""
| КОНЕЦ";*/
/*НачисленияТекст =
"ВЫБРАТЬ
| СУММА(Начисления.НачисленоОтпускных) КАК НачисленоОтпускных,
| ВЫБОР
| КОГДА НАЧАЛОПЕРИОДА(Начисления.ПериодДействияНачало, МЕСЯЦ) = &ПериодРегистрации
| ТОГДА ""Текущий""
| ИНАЧЕ ""Будущий""
| КОНЕЦ КАК ВидМесяца
|ИЗ
| (ВЫБРАТЬ
| Начисления.ПериодДействияНачало КАК ПериодДействияНачало,
| Начисления.Результат КАК НачисленоОтпускных
| ИЗ
| РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК Начисления
| ГДЕ
| Начисления.Регистратор = &Регистратор
| И (НЕ Начисления.Сторно)
|
| ОБЪЕДИНИТЬ ВСЕ
|
| ВЫБРАТЬ
| ДополнительныеНачисленияРаботниковОрганизаций.ПериодРегистрации,
| ДополнительныеНачисленияРаботниковОрганизаций.Результат
| ИЗ
| РегистрРасчета.ДополнительныеНачисленияРаботниковОрганизаций КАК ДополнительныеНачисленияРаботниковОрганизаций
| ГДЕ
| ДополнительныеНачисленияРаботниковОрганизаций.Регистратор = &Регистратор
| И (НЕ ДополнительныеНачисленияРаботниковОрганизаций.Сторно)) КАК Начисления
|
|СГРУППИРОВАТЬ ПО
| ВЫБОР
| КОГДА НАЧАЛОПЕРИОДА(Начисления.ПериодДействияНачало, МЕСЯЦ) = &ПериодРегистрации
| ТОГДА ""Текущий""
| ИНАЧЕ ""Будущий""
| КОНЕЦ";*/
/*ПлановыеУдержанияРаботниковОрганизацийТекст =
"ВЫБРАТЬ
| Начисления.ВидРасчета КАК ВидРасчета,
| СУММА(Начисления.Результат) КАК Результат
|ПОМЕСТИТЬ ВТНачисления
|ИЗ
| РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК Начисления
|ГДЕ
| Начисления.Регистратор = &Регистратор
| И (НЕ Начисления.Сторно)
|
|СГРУППИРОВАТЬ ПО
| Начисления.ВидРасчета
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ДополнительныеНачисленияРаботниковОрганизаций.ВидРасчета,
| СУММА(ДополнительныеНачисленияРаботниковОрганизаций.Результат)
|ИЗ
| РегистрРасчета.ДополнительныеНачисленияРаботниковОрганизаций КАК ДополнительныеНачисленияРаботниковОрганизаций
|ГДЕ
| ДополнительныеНачисленияРаботниковОрганизаций.Регистратор = &Регистратор
| И (НЕ ДополнительныеНачисленияРаботниковОрганизаций.Сторно)
|
|СГРУППИРОВАТЬ ПО
| ДополнительныеНачисленияРаботниковОрганизаций.ВидРасчета
|
|ИНДЕКСИРОВАТЬ ПО
| ВидРасчета
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| УдержанияРаботниковОрганизаций.ДокументОснование КАК ДокументОснование,
| СУММА(УдержанияРаботниковОрганизаций.Результат) КАК Результат
|ПОМЕСТИТЬ ВТУплаченныеАлименты
|ИЗ
| РегистрРасчета.УдержанияРаботниковОрганизаций КАК УдержанияРаботниковОрганизаций
|ГДЕ
| УдержанияРаботниковОрганизаций.ДокументОснование ССЫЛКА Документ.ИсполнительныйЛист
| И УдержанияРаботниковОрганизаций.ДокументОснование <> ЗНАЧЕНИЕ(Документ.ИсполнительныйЛист.ПустаяСсылка)
| И УдержанияРаботниковОрганизаций.ВидРасчета.СпособРасчета = ЗНАЧЕНИЕ(Перечисление.СпособыРасчетаОплатыТруда.ИсполнительныйЛистПроцентомДоПредела)
| И УдержанияРаботниковОрганизаций.ФизЛицо = &ФизЛицо
| И УдержанияРаботниковОрганизаций.Организация = &ГоловнаяОрганизация
| И УдержанияРаботниковОрганизаций.ПериодРегистрации < &ПериодРегистрации
|
|СГРУППИРОВАТЬ ПО
| УдержанияРаботниковОрганизаций.ДокументОснование
|
|ИНДЕКСИРОВАТЬ ПО
| ДокументОснование
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| УдержанияОрганизацийБазовыеВидыРасчета.Ссылка КАК ВидРасчета,
| Начисления.ВидРасчета КАК БазовыйВидРасчета
|ПОМЕСТИТЬ ВТВидыУдержаний
|ИЗ
| ПланВидовРасчета.УдержанияОрганизаций.БазовыеВидыРасчета КАК УдержанияОрганизацийБазовыеВидыРасчета
| ЛЕВОЕ СОЕДИНЕНИЕ ВТНачисления КАК Начисления
| ПО УдержанияОрганизацийБазовыеВидыРасчета.ВидРасчета = Начисления.ВидРасчета
|ГДЕ
| Начисления.ВидРасчета ЕСТЬ НЕ NULL
| И УдержанияОрганизацийБазовыеВидыРасчета.Ссылка.СпособРасчета В (ЗНАЧЕНИЕ(Перечисление.СпособыРасчетаОплатыТруда.Процентом), ЗНАЧЕНИЕ(Перечисление.СпособыРасчетаОплатыТруда.ИсполнительныйЛистПроцентом), ЗНАЧЕНИЕ(Перечисление.СпособыРасчетаОплатыТруда.ИсполнительныйЛистПроцентомДоПредела))
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| УдержанияОрганизаций.Ссылка,
| Начисления.ВидРасчета
|ИЗ
| ПланВидовРасчета.УдержанияОрганизаций КАК УдержанияОрганизаций
| ЛЕВОЕ СОЕДИНЕНИЕ ВТНачисления КАК Начисления
| ПО (ИСТИНА)
|ГДЕ
| УдержанияОрганизаций.Ссылка.СпособРасчета = ЗНАЧЕНИЕ(Перечисление.СпособыРасчетаОплатыТруда.ПроцентомОтОблагаемыхЕСННачислений)
| И Начисления.ВидРасчета.КодДоходаЕСН.ВходитВБазуФедеральныйБюджет
|
|ИНДЕКСИРОВАТЬ ПО
| ВидРасчета
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| СУММА(Удержания.Показатель1) КАК Размер,
| Удержания.ВидРасчета КАК ВидРасчета,
| Удержания.ВидРасчета.СпособРасчета КАК СпособРасчета,
| Удержания.ВидРасчета.Наименование КАК Имя
|ПОМЕСТИТЬ ВТПлановыеУдержания
|ИЗ
| РегистрСведений.ПлановыеУдержанияРаботниковОрганизаций.СрезПоследних(
| &ПериодРегистрации,
| ФизЛицо = &ФизЛицо
| И ВидРасчета В
| (ВЫБРАТЬ
| ВидыУдержаний.ВидРасчета
| ИЗ
| ВТВидыУдержаний КАК ВидыУдержаний)
| И Организация = &ГоловнаяОрганизация) КАК Удержания
| ЛЕВОЕ СОЕДИНЕНИЕ ВТУплаченныеАлименты КАК УплаченныеАлименты
| ПО Удержания.ДокументОснование = УплаченныеАлименты.ДокументОснование
|ГДЕ
| ВЫБОР
| КОГДА Удержания.ПериодЗавершения <= &ПериодРегистрации
| И Удержания.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1)
| ТОГДА Удержания.ДействиеЗавершения
| ИНАЧЕ Удержания.Действие
| КОНЕЦ <> ЗНАЧЕНИЕ(Перечисление.ВидыДействияСНачислением.Прекратить)
| И ВЫБОР
| КОГДА Удержания.ВидРасчета.СпособРасчета = ЗНАЧЕНИЕ(Перечисление.СпособыРасчетаОплатыТруда.ИсполнительныйЛистПроцентомДоПредела)
| ТОГДА ЕСТЬNULL(УплаченныеАлименты.Результат, 0) < Удержания.ДокументОснование.Предел
| ИНАЧЕ ИСТИНА
| КОНЕЦ
|
|СГРУППИРОВАТЬ ПО
| Удержания.ВидРасчета,
| Удержания.ВидРасчета.СпособРасчета,
| Удержания.ВидРасчета.Наименование
|
|ИНДЕКСИРОВАТЬ ПО
| ВидРасчета
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| Удержания.Размер КАК Размер,
| Удержания.СпособРасчета КАК СпособРасчета,
| Удержания.Имя КАК Имя,
| СУММА(Начисления.Результат) КАК РасчетнаяБаза
|ИЗ
| ВТПлановыеУдержания КАК Удержания
| ЛЕВОЕ СОЕДИНЕНИЕ ВТВидыУдержаний КАК ВидыУдержаний
| ЛЕВОЕ СОЕДИНЕНИЕ ВТНачисления КАК Начисления
| ПО ВидыУдержаний.БазовыйВидРасчета = Начисления.ВидРасчета
| ПО Удержания.ВидРасчета = ВидыУдержаний.ВидРасчета
|
|СГРУППИРОВАТЬ ПО
| Удержания.Размер,
| Удержания.СпособРасчета,
| Удержания.Имя";*/
//ТабДокумент = Новый ТабличныйДокумент;
//ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;
//ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_НачислениеОтпускаРаботникамОрганизаций_Т60";
//Макет = ДокументОбъект.ПолучитьМакет("Т_60");
//СекцияРасчетСреднего = Макет.ПолучитьОбласть("РасчетСреднего");
//СекцияДополнительнаяСтрокаЗаработка = Макет.ПолучитьОбласть("ДополнительнаяСтрокаЗаработка");
//СекцияЛицеваяСторона = Макет.ПолучитьОбласть("ЛицеваяСторона");
//СекцияРасчетСреднегоИтого = Макет.ПолучитьОбласть("РасчетСреднегоИтого");
//СекцияПодвал = Макет.ПолучитьОбласть("Подвал");
//ВыборкаПоШапкеДокумента = СформироватьЗапросПоШапкеДляПечати(ДокументОбъект).Выбрать();
//ВыборкаПоШапкеДокумента.Следующий();
/*// Определение даты начала и конца оплачиваемого события
*/
//ДатаНачалаСобытия = ДокументОбъект.ДатаНачалаСобытия;
if(true/*ДокументОбъект.ОсновнойОтпуск Или ДокументОбъект.ДополнительныйОтпуск*/)
{
//ДатаОкончанияСобытия = Макс(ДокументОбъект.ДатаОкончанияОсновногоОтпуска, ДокументОбъект.ДатаОкончанияДополнительногоОтпуска);
if(true/*ДокументОбъект.ОсновнойОтпуск*/)
{
//ИспользуемыйСпособРасчетаОтпуска = ?(ДокументОбъект.ПорядокРасчетаОсновногоОтпуска = Перечисления.ПорядокРасчетаОтпуска.ПоКалендарнымДням,Перечисления.СпособыРасчетаОплатыТруда.ПоСреднемуЗаработкуДляОтпускаПоКалендарнымДням,Перечисления.СпособыРасчетаОплатыТруда.ПоСреднемуЗаработкуДляОтпускаПоШестидневке);
//ДатаНачала = ДокументОбъект.ДатаНачалаОсновногоОтпуска;
}
}
if(true/*Не ПроцедурыУправленияПерсоналомПереопределяемый.РегламентированныйКалендарьЗаполнен(НачалоМесяца(ДатаНачалаСобытия),КонецМесяца(ДатаОкончанияСобытия),Истина)*/)
{
}
/*// Поскольку в документе может выполняться начисление как основного, так и дополнительного отпуска,
*/
/*// а методика расчета у них может отличаться, то при печати будем использовать порядок расчета отпуска,
*/
/*// указанный в первой строке начислений
*/
//Запрос = Новый Запрос;
//ФиксированныеПремии = Новый Массив(4);
//ФиксированныеПремии[0] = ПланыВидовРасчета.СреднийЗаработок.ПоФиксПремиям;
//ФиксированныеПремии[1] = ПланыВидовРасчета.СреднийЗаработок.ПоФиксПремиямНеИндексируемые;
//ФиксированныеПремии[2] = ПланыВидовРасчета.СреднийЗаработок.ПоФиксГодовойПремии;
//ФиксированныеПремии[3] = ПланыВидовРасчета.СреднийЗаработок.ПоФиксГодовойПремииНеИндексируемые;
//ПоПремиям = Новый Массив(3);
//ПоПремиям[0] = ПланыВидовРасчета.СреднийЗаработок.ПоПремиям;
//ПоПремиям[1] = ПланыВидовРасчета.СреднийЗаработок.ПоПремиямИндексируемые;
//ПоПремиям[2] = ПланыВидовРасчета.СреднийЗаработок.ПоГодовойПремииИндексируемые;
//ПоФиксПремиямНеИндексируемые = Новый Массив(3);
//ПоФиксПремиямНеИндексируемые[0] = ПланыВидовРасчета.СреднийЗаработок.ПоФиксГодовойПремии;
//ПоФиксПремиямНеИндексируемые[1] = ПланыВидовРасчета.СреднийЗаработок.ПоФиксГодовойПремииНеИндексируемые;
//ПоФиксПремиямНеИндексируемые[2] = ПланыВидовРасчета.СреднийЗаработок.ПоФиксПремиямНеИндексируемые;
//ОсновнойЗаработок = Новый Массив(2);
//ОсновнойЗаработок[0] = ПланыВидовРасчета.СреднийЗаработок.ПоЗаработку;
//ОсновнойЗаработок[1] = ПланыВидовРасчета.СреднийЗаработок.ПоЗаработкуИндексируемые;
//Индексируемые = Новый Массив(7);
//Индексируемые[0] = ПланыВидовРасчета.СреднийЗаработок.ПоЗаработкуИндексируемые;
//Индексируемые[1] = ПланыВидовРасчета.СреднийЗаработок.ПоПремиямИндексируемые;
//Индексируемые[2] = ПланыВидовРасчета.СреднийЗаработок.ПоГодовойПремииИндексируемые;
//Индексируемые[3] = ПланыВидовРасчета.СреднийЗаработок.ПоФиксПремиям;
//Индексируемые[4] = ПланыВидовРасчета.СреднийЗаработок.ПоПремиям;
//Индексируемые[5] = ПланыВидовРасчета.СреднийЗаработок.ПоЗаработку;
//Индексируемые[6] = ПланыВидовРасчета.СреднийЗаработок.ПоГодовойПремии;
//ПериодРегистрации = ДокументОбъект.ПериодРегистрации;
//Запрос.УстановитьПараметр("Регистратор", ДокументОбъект.Ссылка);
//Запрос.УстановитьПараметр("СпособРасчета", ИспользуемыйСпособРасчетаОтпуска);
//Запрос.УстановитьПараметр("ДатаНачалаРасчетногоПериода",ВыборкаПоШапкеДокумента.ПериодРасчетаСреднегоЗаработкаНачало);
//Запрос.УстановитьПараметр("Индексируемые", Индексируемые);
//Запрос.УстановитьПараметр("ОсновнойЗаработок", ОсновнойЗаработок);
//Запрос.УстановитьПараметр("ОсновнойЗаработокНеиндексируемый", ПланыВидовРасчета.СреднийЗаработок.ПоЗаработкуНеИндексируемые);
//Запрос.УстановитьПараметр("ПоФиксПремиям", ПланыВидовРасчета.СреднийЗаработок.ПоФиксПремиям);
//Запрос.УстановитьПараметр("ПоПремиям", ПоПремиям);
//Запрос.УстановитьПараметр("ФиксированныеПремии", ФиксированныеПремии);
//Запрос.УстановитьПараметр("ПоФиксПремиямНеИндексируемые", ПоФиксПремиямНеИндексируемые);
//Запрос.УстановитьПараметр("РасчетПоШестидневке", Перечисления.СпособыРасчетаОплатыТруда.ПоСреднемуЗаработкуДляОтпускаПоШестидневке);
//Запрос.УстановитьПараметр("ДатаНачалаСобытия", ДатаНачалаСобытия);
//Запрос.УстановитьПараметр("ПериодРегистрации", ПериодРегистрации);
//Запрос.УстановитьПараметр("ФизЛицо", ОбщегоНазначения.ПолучитьЗначениеРеквизита(ДокументОбъект.Сотрудник,"ФизЛицо"));
//Запрос.УстановитьПараметр("ГоловнаяОрганизация", ОбщегоНазначения.ГоловнаяОрганизация(ДокументОбъект.Организация));
//ДнейКОплатеОсновногоОтпускаЗаТекущийМесяц = 0;
//ДнейКОплатеДополнительногоОтпускаЗаТекущийМесяц = 0;
//ДнейКОплатеОсновногоОтпускаЗаБудущиеМесяцы = 0;
//ДнейКОплатеДополнительногоОтпускаЗаБудущиеМесяцы = 0;
//ВсегоДнейОтпуска = 0;
//НачисленоОтпускныхЗаТекущийМесяц = 0;
//НачисленоОтпускныхЗаБудущиеМесяцы = 0;
/*// Выборка дней, фактически оплаченных за первый месяц отпуска и последующие месяцы
*/
//Запрос.Текст = ДнейКОплатеТекст;
//Выборка = Запрос.Выполнить().Выбрать();
while(true/*Выборка.Следующий()*/)
{
if(true/*Выборка.ВидМесяца = "Текущий"*/)
{
//ДнейКОплатеОсновногоОтпускаЗаТекущийМесяц = ДнейКОплатеОсновногоОтпускаЗаТекущийМесяц + Выборка.ДнейКОплатеОсновногоОтпуска;
//ДнейКОплатеДополнительногоОтпускаЗаТекущийМесяц = ДнейКОплатеДополнительногоОтпускаЗаТекущийМесяц + Выборка.ДнейКОплатеДополнительногоОтпуска;
}
//ВсегоДнейОтпуска = ВсегоДнейОтпуска + Выборка.ВсегоДнейОтпуска;
}
/*;
СекцияЛицеваяСторона.Параметры.ВсегоДнейОтпуска = ВсегоДнейОтпуска;*/
/*// ВЫВОД ДАННЫХ В ОТЧЕТ
*/
/*// вывод лицевой стороны
*/
//СекцияЛицеваяСторона.Параметры.Заполнить(ВыборкаПоШапкеДокумента);
//СекцияЛицеваяСторона.Параметры.ДнейКОплатеОсновногоОтпуска = ДнейКОплатеОсновногоОтпускаЗаТекущийМесяц + ДнейКОплатеОсновногоОтпускаЗаБудущиеМесяцы;
//СекцияЛицеваяСторона.Параметры.ДнейКОплатеДополнительногоОтпуска = ДнейКОплатеДополнительногоОтпускаЗаТекущийМесяц + ДнейКОплатеДополнительногоОтпускаЗаБудущиеМесяцы;
//СекцияЛицеваяСторона.Параметры.ДатаНачалаОсновногоОтпускаПрописью = Формат(ВыборкаПоШапкеДокумента.ДатаНачалаОсновногоОтпуска,"ДЛФ=DD; ДП=' '");
//СекцияЛицеваяСторона.Параметры.ДатаОкончанияОсновногоОтпускаПрописью = Формат(ВыборкаПоШапкеДокумента.ДатаОкончанияОсновногоОтпуска,"ДЛФ=DD; ДП=' '");
//СекцияЛицеваяСторона.Параметры.ДатаНачалаОтпускаПрописью = Формат(ВыборкаПоШапкеДокумента.ДатаНачалаОтпуска,"ДЛФ=DD; ДП=' '");
//СекцияЛицеваяСторона.Параметры.ДатаОкончанияОтпускаПрописью = Формат(ВыборкаПоШапкеДокумента.ДатаОкончанияОтпуска,"ДЛФ=DD; ДП=' '");
//СекцияЛицеваяСторона.Параметры.ТабельныйНомер = ВыборкаПоШапкеДокумента.ТабельныйНомер;
//ТабДокумент.Вывести(СекцияЛицеваяСторона);
//ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
/*// Вывод сведений о порядке расчета среднего заработка
*/
/*// по окончательным данным проведенного документа
*/
/*// собираем итоговые данные и рассчитываем средний заработок
*/
//Запрос.Текст = РасчетСреднегоЗаработкаТекст;
//ВыборкаСреднегоЗаработка = Запрос.Выполнить().Выбрать();
//ОсновнойЗаработок = Новый Массив(3);
//ОсновнойЗаработок[0] = ПланыВидовРасчета.СреднийЗаработок.ПоЗаработку;
//ОсновнойЗаработок[1] = ПланыВидовРасчета.СреднийЗаработок.ПоЗаработкуИндексируемые;
//ОсновнойЗаработок[2] = ПланыВидовРасчета.СреднийЗаработок.ПоЗаработкуНеИндексируемые;
//НомерСтроки = 0;
while(true/*ВыборкаСреднегоЗаработка.СледующийПоЗначениюПоля("МесяцРасчетногоПериода")*/)
{
if(true/*ВыборкаСреднегоЗаработка.ТипЗаписи() = ТипЗаписиЗапроса.ОбщийИтог*/)
{
//СекцияРасчетСреднего.Параметры.Заполнить(ВыборкаСреднегоЗаработка);
//СекцияРасчетСреднегоИтого.Параметры.Заполнить(ВыборкаСреднегоЗаработка);
if(true/*ВыборкаПоШапкеДокумента.ИспользоватьСреднеЧасовойЗаработок*/)
{
//СекцияРасчетСреднего.Параметры.ЗаработокЗаЕдиницуВремени = Окр(?(ВыборкаСреднегоЗаработка.ВсегоЧасовРасчетногоПериода = 0,0, ВыборкаСреднегоЗаработка.ВсегоУчтено / ВыборкаСреднегоЗаработка.ВсегоЧасовРасчетногоПериода),2);
}
}
}
if(true/*НомерСтроки < 12*/)
{
/*// вывод среднедневного (часового) заработка
*/
//ТабДокумент.Вывести(СекцияРасчетСреднего);
}
/*// итого средний заработок
*/
//ТабДокумент.Вывести(СекцияРасчетСреднегоИтого);
/*// Выборка начисленных сумм за отпуск
*/
//Запрос.Текст = НачисленияТекст;
//Выборка = Запрос.Выполнить().Выбрать();
while(true/*Выборка.Следующий()*/)
{
if(true/*Выборка.ВидМесяца = "Текущий"*/)
{
//НачисленоОтпускныхЗаТекущийМесяц = Выборка.НачисленоОтпускных;
}
}
/*;
ВсегоНачисленоОтпускных = НачисленоОтпускныхЗаТекущийМесяц + НачисленоОтпускныхЗаБудущиеМесяцы;*/
//ДругиеНачисления = ПроведениеРасчетовДополнительный.ПолучитьДругиеНачисления(ДокументОбъект.Ссылка, ПериодРегистрации, ДокументОбъект.Сотрудник, ДокументОбъект.Дата);
//ВсегоНачисленоОтпускных = ВсегоНачисленоОтпускных + ДругиеНачисления.ДругиеНачисленияЗаТекущийМесяц + ДругиеНачисления.ДругиеНачисленияЗаБудущиеМесяцы;
/*// Выборка зарегистрированных процентых удержаний за работником
*/
//Запрос.Текст = ПлановыеУдержанияРаботниковОрганизацийТекст;
//ВыборкаУдержаний = Запрос.Выполнить().Выбрать();
/*// Расчет суммы НДФЛ от ставки налога без учета льгот
*/
if(true/*ВыборкаПоШапкеДокумента.НеЯвляетсяНалоговымРезидентомРФ*/)
{
//СтавкаНДФЛ = ПроцедурыУправленияПерсоналом.ЗначениеСтавкиНДФЛСНерезидента();
}
//СуммаНДФЛ = Окр((ВсегоНачисленоОтпускных - ДругиеНачисления.НеОблагаетсяНДФЛ) * СтавкаНДФЛ/100, 0);
/*// Вывод подвала
*/
//СекцияПодвал.Параметры.Заполнить(ДругиеНачисления);
//СекцияПодвал.Параметры.СтрТекущийМесяц = ПредставлениеПериода(НачалоМесяца(ПериодРегистрации), КонецМесяца(ПериодРегистрации));
/*СекцияПодвал.Параметры.ДнейКОплатеЗаТекущийМесяц = ?(ДнейКОплатеОсновногоОтпускаЗаТекущийМесяц = 0, "", Строка(ДнейКОплатеОсновногоОтпускаЗаТекущийМесяц))
+ ?(ДнейКОплатеДополнительногоОтпускаЗаТекущийМесяц = 0 Или ДнейКОплатеОсновногоОтпускаЗаТекущийМесяц = 0 , "", "(")
+ ?(ДнейКОплатеДополнительногоОтпускаЗаТекущийМесяц = 0, "",Строка(ДнейКОплатеДополнительногоОтпускаЗаТекущийМесяц))
+ ?(ДнейКОплатеДополнительногоОтпускаЗаТекущийМесяц = 0 Или ДнейКОплатеОсновногоОтпускаЗаТекущийМесяц = 0 , "", ")");*/
//СекцияПодвал.Параметры.НачисленоОтпускныхЗаТекущийМесяц = НачисленоОтпускныхЗаТекущийМесяц;
if(true/*НачалоМесяца(ДатаОкончанияСобытия) > ПериодРегистрации*/)
{
/*СекцияПодвал.Параметры.ДнейКОплатеЗаБудущиеМесяцы = ?(ДнейКОплатеОсновногоОтпускаЗаБудущиеМесяцы = 0, "", Строка(ДнейКОплатеОсновногоОтпускаЗаБудущиеМесяцы))
+ ?(ДнейКОплатеДополнительногоОтпускаЗаБудущиеМесяцы = 0 Или ДнейКОплатеОсновногоОтпускаЗаБудущиеМесяцы = 0, "", "(")
+ ?(ДнейКОплатеДополнительногоОтпускаЗаБудущиеМесяцы = 0, "", Строка(ДнейКОплатеДополнительногоОтпускаЗаБудущиеМесяцы))
+ ?(ДнейКОплатеДополнительногоОтпускаЗаБудущиеМесяцы = 0 Или ДнейКОплатеОсновногоОтпускаЗаБудущиеМесяцы = 0, "", ")");*/
//СекцияПодвал.Параметры.СтрБудущиеМесяцы = ПредставлениеПериода(КонецМесяца(ПериодРегистрации) +1, КонецМесяца(ДатаОкончанияСобытия));
//СекцияПодвал.Параметры.НачисленоОтпускныхЗаБудущиеМесяцы = НачисленоОтпускныхЗаБудущиеМесяцы;
}
//СекцияПодвал.Параметры.ВсегоНачислено = ВсегоНачисленоОтпускных;
//СекцияПодвал.Параметры.СуммаНДФЛ = СуммаНДФЛ;
/*// вывод сумм прочих процентных удержаний
*/
//ВсегоУдержано = СуммаНДФЛ;
//НомерУдержания = 0;
while(true/*ВыборкаУдержаний.Следующий()*/)
{
//НомерУдержания = НомерУдержания + 1;
if(true/*ВыборкаУдержаний.СпособРасчета = Перечисления.СпособыРасчетаОплатыТруда.Процентом Или ВыборкаУдержаний.СпособРасчета = Перечисления.СпособыРасчетаОплатыТруда.ПроцентомОтОблагаемыхЕСННачислений*/)
{
//СуммаУдержания = ВыборкаУдержаний.РасчетнаяБаза * ВыборкаУдержаний.Размер / 100;
}
//ВсегоУдержано = ВсегоУдержано + СуммаУдержания;
if(true/*НомерУдержания <= 5*/)
{
//СекцияПодвал.Параметры["СуммаУдержания" + НомерУдержания] = СуммаУдержания;
//СекцияПодвал.Параметры["Имя" + НомерУдержания] = ВыборкаУдержаний.Имя;
}
if(true/*НомерУдержания = 5*/)
{
//Сообщить("Бланк формы не позволяет отразить более 6 удержаний!");
}
}
/*;
СекцияПодвал.Параметры.ВсегоУдержано = ВсегоУдержано;*/
//КВыплате = ВсегоНачисленоОтпускных - ВсегоУдержано;
//СекцияПодвал.Параметры.КВыплате = КВыплате;
//СекцияПодвал.Параметры.КВыплатеПрописью = ОбщегоНазначения.СформироватьСуммуПрописью(КВыплате, Константы.ВалютаРегламентированногоУчета.Получить());
//СекцияПодвал.Параметры.КВыплатеРубли = Цел(КВыплате);
//СекцияПодвал.Параметры.КВыплатеКопейки = Окр((КВыплате - Цел(КВыплате)) * 100,0);
//ТабДокумент.Вывести(СекцияПодвал);
return null;
}