Доработка отчета "Справки по НДФЛ" в программе "1С:Зарплата и кадры 7.7"
В программе "1С:Зарплата и кадры 7.7" в
релизе 7.70.306 "забыли" реализовать печать списка справок 2-НДФЛ в виде таблицы
(см. рис.1) так, как это сделано в отчете до 2009 года включительно.
Соответственно
невозможно сохранить таблицу в виде табличного документа для дальнейшего
использования, например в формате Excel.
А между тем такая таблица бывает очень полезна. О том как
исправить этот недостаток и пойдет речь.

Рис. 1 Список справок 2-НДФЛ, печатная форма
Во-первых, необходимо
в отчете "СправкиПоНДФЛ" в диалоге на слое "Справки" добавить кнопку
"Печать списка справок"
как показано на рис.2.

Рис. 2 Добавление кнопки для печати
В модуле формы нужно
добавить процедуру ПечатьСпискаСправок(), которая будет выполняться при
нажатии на кнопку "Печать списка справок", текст
приведен ниже:
Процедура ПечатьСпискаСправок()
Если ТаблицаСправок.КоличествоСтрок()=0 Тогда
Возврат;
КонецЕсли;
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("СписокСправок");
Таб.ВывестиСекцию("Шапка");
ТаблицаСправок.ВыбратьСтроки();
пНом=0;
Пока ТаблицаСправок.ПолучитьСтроку()=1 Цикл
пНом=пНом+1;
пНомСправки = ТаблицаСправок.НомСправки;
пСотрудник = ТаблицаСправок.Сотрудник;
пСтавка = ТаблицаСправок.Ставка;
пОКАТО = ТаблицаСправок.ОКАТО;
пКПП = ТаблицаСправок.КПП;
п51 = глЧислоВФорматеПользователя(ТаблицаСправок.ОбщаяСуммаДохода,15,2);
п52 = глЧислоВФорматеПользователя(ТаблицаСправок.НалоговаяБаза,15,2);
п53 = глЧислоВФорматеПользователя(ТаблицаСправок.СуммаНалогаИсчисленная,12,0);
п54 = глЧислоВФорматеПользователя(ТаблицаСправок.СуммаНалогаУдержанная,12,0);
п55 = глЧислоВФорматеПользователя(ТаблицаСправок.СуммаНалогаПеречисленная,12,0);
п56 = глЧислоВФорматеПользователя(ТаблицаСправок.СуммаНалогаИзлишнеУдержанная,12,0);
п57 = глЧислоВФорматеПользователя(ТаблицаСправок.СуммаНалогаНеУдержанная,12,0);
Таб.ВывестиСекцию("Строка");
КонецЦикла;
п51 = глЧислоВФорматеПользователя(ТаблицаСправок.Итог("ОбщаяСуммаДохода"),15,2);
п52 = глЧислоВФорматеПользователя(ТаблицаСправок.Итог("НалоговаяБаза"),15,2);
п53 = глЧислоВФорматеПользователя(ТаблицаСправок.Итог("СуммаНалогаИсчисленная"),12,0);
п54 = глЧислоВФорматеПользователя(ТаблицаСправок.Итог("СуммаНалогаУдержанная"),12,0);
п55 = глЧислоВФорматеПользователя(ТаблицаСправок.Итог("СуммаНалогаПеречисленная"),12,0);
п56 = глЧислоВФорматеПользователя(ТаблицаСправок.Итог("СуммаНалогаИзлишнеУдержанная"),12,0);
п57 = глЧислоВФорматеПользователя(ТаблицаСправок.Итог("СуммаНалогаНеУдержанная"),12,0);
Таб.ВывестиСекцию("Подвал");
Таб.ТолькоПросмотр(1);
Таб.Опции(0,0,0,0,"СписокСправок");
Таб.ПараметрыСтраницы(,,,0,0,0,0,0,0);
Таб.Показать("Список справок");
КонецПроцедуры //ПечатьСпискаСправок
И наконец, нужно добавить таблицу "СписокСправок" (см.рис.3).

Рис. 3 Добавление таблицы "СписокСправок"
Все описанные манипуляции можно производить не в
конфигурации, а в отдельном внешнем отчете, который нужно предварительно
получить, сохранив во внешний файл типовой отчет.
© Борис Балясников, февраль 2011г.
|