gifts2017

Вычеты сотрудников НДФЛ с возможностью сортировки

Опубликовал Руслан Харисов (fAngel) в раздел Отчеты - Бухгалтерские

Отчет предназначен для анализа закрытия вычетов и контроля сумм вычетов. Отчет позволяет сортировать результаты по кодам вычетов или по сотрудникам.

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
-
.1207495941 12,38Kb
25.09.09
462
.1207495941 12,38Kb 462 Бесплатно

См. также

Подписаться Добавить вознаграждение

Комментарии

1. ll57101 (LL57101) 18.10.08 11:46
Хороший отчет, понравилось, пригодилось
2. rimma_n (rimma_n) 07.11.08 12:02
Понравился отчет, хорошо бы еще добавить отбор по подразделениям либо конкретному сотруднику.
Переделаю, выложу.
3. Nata_22 (Nata_22) 05.02.09 06:19
Спасибо огромное! Очень пригодился ваш отчет.
4. TED777 25.01.10 11:14
5. Ирина Нечаева (Arin) 29.09.11 18:25
6. Михаил Кувичко (Michael_K) 28.11.11 21:58
Спасибо огромное! Небольшая переделка и на крупных предприятиях запросто выводятся сотрудники с тремя и более детьми, что сейчас очень актуально!
Вот, кому надо - пользуйтесь. Написано "на живую нитку", просьба сильно не пинать, было не до красоты. Если у сотрудника куча закрытых вычетов, например ежегодно закрывался и с НГ вводился новый - такие тоже попадут, кому надо доработайте, мне для анализа хватило. :))) Автору еще раз респект! В форму вставьте флажек с идентификатором флБольше3х и на закладке Дополнительно свяжите его с Процедурой ПриИзмененииФлага()

//******************************************************************************
Процедура ПриИзмененииФлага()
Если флБольше3х > 0 Тогда
флСортПоКодам=1;
КонецЕсли;

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

Процедура Сформировать()
спр = СоздатьОбъект("Справочник.Сотрудники");
тз = СоздатьОбъект("ТаблицаЗначений");
тз.НоваяКолонка("Сотрудник", "Справочник.Сотрудники");
тз.НоваяКолонка("Код", "Строка");
тз.НоваяКолонка("Начало", "Дата");
тз.НоваяКолонка("Окончание", "Дата");
тз.НоваяКолонка("Сумма", "Число");
спр1 = СоздатьОбъект("Справочник.ВычетыСотрудниковПоНДФЛ");
спр.ВыбратьЭлементы();
Пока спр.ПолучитьЭлемент() = 1 Цикл
Если спр.ЭтоГруппа() = 1 Тогда
Продолжить;
КонецЕсли;
спр1.ИспользоватьВладельца(спр.ТекущийЭлемент());
спр1.ВыбратьЭлементы();
Пока спр1.ПолучитьЭлемент() = 1 Цикл
тз.НоваяСтрока();
тз.Сотрудник = спр.ТекущийЭлемент();
тз.Код = спр1.ВидВычета.Код;
тз.Начало = спр1.ДатаНачала;
тз.Окончание = спр1.ДатаОкончания;
кв = СокрЛП(тз.Код);
Если спр1.Сумма = 0 Тогда
тз.Сумма = спр1.ВидВычета.Сумма.Получить(Дата1);
Иначе
тз.Сумма = спр1.Сумма;
КонецЕсли;
КонецЦикла;
КонецЦикла;
Если флСортПоКодам = 1 Тогда
тз.Сортировать("Код+, Сотрудник+");
КонецЕсли;
Таб = СоздатьОбъект("Таблица");
Таб.ВывестиСекцию("Шапка");
//КМЮ++
Если флБольше3х = 0 Тогда
тз.ВыбратьСтроки();
Пока тз.ПолучитьСтроку() = 1 Цикл
Таб.ВывестиСекцию("Строка");
КонецЦикла;
Иначе //а здесь выводим только с детьми больше 2-х
тзКопия = СоздатьОбъект("ТаблицаЗначений");
тзПечать = СоздатьОбъект("ТаблицаЗначений");
чИ=0;
чНачало=1;
чКонец=1;
сСотрудник="";
тз.Выгрузить(тзКопия);
тз.Выгрузить(тзПечать);
тзКопия.ВыбратьСтроки();
Пока тзКопия.ПолучитьСтроку() = 1 Цикл
чИ=чИ+1;
Если Число(тзКопия.Код) <> 108 Тогда
Продолжить;
Иначе

Если сСотрудник <> тзКопия.Сотрудник.Наименование Тогда
сСотрудник = тзКопия.Сотрудник.Наименование;
Если чКонец - чНачало + 1 > 2 Тогда //Выводим
тзПечать.Выгрузить(тз,чНачало,чКонец);
чНачало = чИ;
чКонец = чИ;
тз.ВыбратьСтроки();
Пока тз.ПолучитьСтроку() = 1 Цикл
//и убираем закрытые или не начатые вычеты
Если (тз.Начало > Дата1) Или ((ПустоеЗначение(тз.Окончание) = 0) И (тз.Окончание < Дата1)) Тогда
Продолжить;
Иначе

Таб.ВывестиСекцию("Строка");
КонецЕсли;
КонецЦикла;
Иначе
чНачало = чИ;
чКонец = чИ;
КонецЕсли;

Иначе //Добавляем
чКонец=чИ;
КонецЕсли;
КонецЕсли;
КонецЦикла;
//На всякий случай проверка на детей инвалидов
тзКопия.Выгрузить(тз);
тз.ВыбратьСтроки();
Пока тз.ПолучитьСтроку() = 1 Цикл
Если Число(тз.Код) <> 109 Тогда
Продолжить;
Иначе
//и убираем закрытые или не начатые вычеты
Если (тз.Начало > Дата1) Или ((ПустоеЗначение(тз.Окончание) = 0) И (тз.Окончание < Дата1)) Тогда
Продолжить;
Иначе

Таб.ВывестиСекцию("Строка");
КонецЕсли;
КонецЕсли;

КонецЦикла;
КонецЕсли;

//КМЮ--
Таб.ВывестиСекцию("Подвал");
Таб.ТолькоПросмотр(1);
Таб.ПараметрыСтраницы(2, 100, , , , , , , , 1);
Таб.Опции(0, 0, 3, 2);
Таб.Показать("Отчет");
КонецПроцедуры

//******************************************************************************
// ПриОткрытии()
//
Процедура ПриОткрытии()
Дата1 = РабочаяДата();
флСортПоКодам = 1;
КонецПроцедуры // ПриОткрытии
7. Гость 20.01.12 12:11
Отчет хороший. Очень хочется обработку для 7 зик по растаскиванию вычетов с 01/01/2011 на 114,115,116 и т.д. как в 8 зуп.
8. annabuh2006 annabuh2006 (annabuh2006) 16.02.12 11:35
9. Suhrob (Milky_Way) 19.08.15 14:36
Спасибо... не пришлось создавать велосипед заново...
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа