gifts2017

Загрузка корректировок уплаченных страховых взносов по данным из ПФР

Опубликовал Илья Ванчугов (Vanchez) в раздел Обмен - Обмен с другими системами

Иногда данные в пенсионном фонде расходятся с данными в программе. Обработка поможет загрузить корректировки из файла предоставляемого ПФР (xls).

Обработка загружает разницу в перечисленных суммах между данными пачек СЗВ-6 и данными из файла xls в отдельную пачку СВЗ-6 ( ее период задается в поле "Период корректировки")

Анализируются принятые в ПФР пачки с 01.01.2010 по период, указанный в поле "Период анализа" (дата начала отчетного периода, например, 01.01.2012, 01.04.2012, 01.07.2012...). Пачки начиная с 2013 года не учитываются!

Созданную обработкой пачку необходимо включить в какую-либо существующую опись АДВ-6-2 (принятую в ПФР), чтобы корректировки учитывались при последующих распределениях уплат.

Расчитана на определенный вид файла (представлен на скриншоте, названия и порядок колонок также имеют значение).

Флажок "рассчитывать по разнице "уплачено - начислено" нужен когда из ПФ присылают только данные по остатку неуплаченных/переплаченных взносов.

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

Наименование Файл Версия Размер Кол. Скачив.
Скорректировать уплату по данным ПФР
.epf 15,70Kb
13.08.13
210
.epf 15,70Kb 210 Скачать

См. также

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

Комментарии

1. Алексей Саурин (as7bs) 27.11.12 09:59
Скачал. Работоспособность пока не проверял но за идею плюс. Не пойму почему 1С не реализут возможность загрузки остатков из файла предоставляемого ПФР в какой-либо регистр на какую-либо дату и дальнейшее распределение с этой даты.
Приходилось пару раз делать аналогичное, через обработку "Загрузка данных из табличного документа". Сначала создавал СЗВ 6-1 в котором все обнулялось, потом - второй, в который заносил реальные остатки по отчету из ПФР.
2. Алексей Захаров (almas) 24.01.13 15:22
Пожалуйста вставьте обработку строки сртахового номера, от лишних пробелов внутри строки:
ТекЗначение=СтрЗаменить(ТекЗначение," ","");

Иначе не ищет сотрудников.
SolarGard; +1 Ответить
3. SolarGard (SolarGard) 19.02.13 11:17
Функция ПолучитьТЗИзФайлаПФР()

тзФайл = новый ТаблицаЗначений;

//загрузим эксель файл в таблицу значений
Если ЗначениеЗаполнено(ИмяФайла) Тогда

Попытка
Эксель = Новый COMОбъект("Excel.Application");
Эксель.WorkBooks.Open(ИмяФайла);
Эксель.Worksheets(1).Activate();
Эксель.ActiveSheet.UsedRange.Select();
//Эксель.Visible = 1;
Исключение
Сообщить("Ошибка открытия файла: проверьте, установлен ли MS Excel");
возврат тзФайл
КонецПопытки;

//СписокИменКолонок = Новый СписокЗначений;

Попытка

лВыбраннаяОбласть = Эксель.Selection;
лВсегоСтрок = лВыбраннаяОбласть.Rows.Count;
лВсегоКолонок = мин(лВыбраннаяОбласть.Columns.Count,11);
лВсегоЯч = лВсегоСтрок * лВсегоКолонок;

Если лВсегоЯч < 2 Тогда
Сообщить("Ошибка разбора структуры файла:" + Символы.ПС + "Область не выделена!!!" + Символы.ПС + "Или активный документ пуст!!!");
Возврат тзФайл;
КонецЕсли;
Сообщить("ВсегоСтрок " + Строка(лВсегоСтрок));
Для лСчетчикКолонок = 1 По лВсегоКолонок Цикл
лТекущаяЯчейка = лВыбраннаяОбласть.Cells(1, лСчетчикКолонок);
ИмяКолонки = сокрлп(лТекущаяЯчейка.Value);
ИмяКолонки = СтрЗаменить(ИмяКолонки," ","_");
тзФайл.Колонки.Добавить(ИмяКолонки);
//СписокИменКолонок.Добавить(ИмяКолонки);
КонецЦикла;
//тзФайл.Колонки.Добавить("ФИО");
//СписокИменКолонок.Добавить("ФИО");

ЧисловыеКолонки = ",1,8,9,10,11,";

Для лСчетчикСтрок = 2 По лВсегоСтрок Цикл
НоваяСтрокаТЗ = тзФайл.Добавить();
Для лСчетчикКолонок = 1 По лВсегоКолонок Цикл
ТекЗначение = лВыбраннаяОбласть.Cells(лСчетчикСтрок, лСчетчикКолонок).Value;

Если найти(ЧисловыеКолонки,","+лСчетчикКолонок+",")<>0 тогда

Попытка
ТекЗначение = окр(число(ТекЗначение),2);
Исключение
Если сокрЛП(ТекЗначение)="" тогда
ТекЗначение = 0;
Иначе
Сообщить("В строке "+лСчетчикСтрок+", колонке "+лСчетчикКолонок+" должно быть число!");
КонецЕсли;
КонецПопытки;
Иначе
ТекЗначение = СтрЗаменить(ТекЗначение," ",""); //%%%%%%%%%%%%%%%%%%%
КонецЕсли;
//ИмяТекКолонки = лВыбраннаяОбласть.Cells(1, лСчетчикКолонок).Value;
НоваяСтрокаТЗ[лСчетчикКолонок-1] = ТекЗначение;
КонецЦикла;
//НоваяСтрокаТЗ.ФИО = ВРЕГ(НоваяСтрокаТЗ.Фамилия+" "+НоваяСтрокаТЗ.Имя+" "+НоваяСтрокаТЗ.Отчество);
КонецЦикла;

исключение
Сообщить(ОписаниеОшибки());
Эксель.Quit();
возврат тзФайл
КонецПопытки;

Если НЕ Эксель = Неопределено Тогда
//Эксель.Save();
Эксель.Quit();
КонецЕсли;

КонецЕсли;

возврат тзФайл

КонецФункции
4. SolarGard (SolarGard) 19.02.13 11:18
И со страховым номером проблемы были. Я так подправил
5. Илья Ванчугов (Vanchez) 19.02.13 21:02
(4) SolarGard,
Исходные данные у всех разные - у меня, например, уже без пробелов были стр. номера. Ну в любом случае вставил такую проверку.
6. Анна Код (annkod) 12.04.13 10:29
ничего не понимаю - у меня почему-то СтрЗаменить не отрабатывает, и ТекЗначение остается с пробелами. бред...
7. Анна Код (annkod) 12.04.13 11:45
кому интересно, проблема была в разделении разрядов чисел. решила так:
ТекЗначение = СокрЛП(Формат(ТекЗначение, "ЧН=; ЧГ=0"));
ТекЗначение = СтрЗаменить(ТекЗначение," ","");
8. Сергей Викторович (Loader_1C) 02.05.13 00:08
Спасибо! и комментарии полезные, значит сработает, проверим.
9. Vit Hammer (VitHammer) 04.05.13 07:37
Спасибо, хоршошая штука. Избавила меня от необходимости возиться с "загрузкой из табличного документа". С Вашего позволения еще пару своих идей добавлю:
1. Если внести небольшие изменения со строки 33 модуля объекта, то подготовка файла сведется к простому удалению из него 2-х первых строк.
Для лСчетчикКолонок = 1 По лВсегоКолонок Цикл
лТекущаяЯчейка = лВыбраннаяОбласть.Cells(1, лСчетчикКолонок);
ИмяКолонки = сокрлп(лТекущаяЯчейка.Value);
ИмяКолонки = СтрЗаменить(ИмяКолонки,"№","Номер");
ИмяКолонки = СтрЗаменить(ИмяКолонки," ","_");
ИмяКолонки = СтрЗаменить(ИмяКолонки,"/","");
тзФайл.Колонки.Добавить(ИмяКолонки);
//СписокИменКолонок.Добавить(ИмяКолонки);
КонецЦикла;
2. Неплохо было бы сделать выбор организации, так как бывает несколько организаций в одной базе, у которых физлица пересекаются.
3. Если просто открыть обработку и закрыть ее, она попросит поставить плюсик. Она безусловно заслуживает плюс, и не один. Но логичнее было бы спрашивать мнение пользователя, если было хотя бы одно нажатие на "Выполнить" (а еще лучше - с положительным результатом). Но это чисто мое мнение.
4. Удалить пробелы из числа можно еще одним методом (см комент от annkod):
ТекЗначение = СтрЗаменить(ТекЗначение,Символы.НПП,"");
5. В одной из моих баз нашлись люди, по которым не было сведений по взносам ПФР, но они были в справочнике физлиц и были в файле ПФР. И они были должны! Тогда я в запрос по документам СЗВ добавил запрос по справочнику физлиц. В этом добавочном запросе все суммы я поставил нулевыми. Метод добавления - "Объединить все". И у меня все загрузилось!
10. Виталий Виноградов (Vital0604) 03.07.13 09:50
Скиньте пожалуйста обработку на почту vital-tula@mail.ru, с меня плюс. Очень нужна!!!
11. Виталий Виноградов (Vital0604) 05.07.13 13:13
Подскажите пожалуйста, обработка не находит по номеру ни одного сотрудника, в чём может быть причина?
12. Vit Hammer (VitHammer) 05.07.13 13:22
(11) Vital0604, найди в модуле строчку
ТекЗначение = СтрЗаменить(ТекЗначение," ","");
и замени ее на две строки
ТекЗначение = СтрЗаменить(ТекЗначение,Символы.НПП,"");
ТекЗначение = СтрЗаменить(ТекЗначение," ","");
13. Виталий Виноградов (Vital0604) 05.07.13 13:35
Пробовал, не помогает, всё равно пишет, что в файле не найден номер
14. Михаил (m19b) 25.07.13 14:18
Появляется сообщение: "Из базы не получены данные!"
Файл ПФР, номера без пробелов. Период правильно выбран...
Что не так? Подскажите, пожалуйста.
15. Илья Ванчугов (Vanchez) 25.07.13 22:02
Или пачек СЗВ-4 нет, или они не проведены, или не стоит признак "Принято ПФР"
16. Гость 26.07.13 07:12
Пачки СЗВ-6-4 проведены. Признак принятия ПФР стоит. Вы упомянули пачки СЗВ-4.
В этом,наверно,все дело. Можно ли это исправить. Буду Вам материально благодарен.
С уважением, Михаил
Прикрепленные файлы:
Пачки в ЗИУП 8.2 редакция 2.5.docx
17. Илья Ванчугов (Vanchez) 26.07.13 09:02
(16) Михаил,
Я имел в виду документы СЗВ-6-1 и СЗВ-6-2, которые использовались до 2013 г (СЗВ-4 они назывались еще раньше). Если их нет, то обработка не поможет. Вы можете загрузить их из ранее принятых файлов (Подготовка данных для ПФР - Добавить - Принятые в ПФР комплекты прошлых периодов).
Если остались вопросы, задавайте их в личку.
18. Гость 26.07.13 09:19
Спасибо Вам за внимание. Я уже 3 сутки пытаюсь ввести сальдо по взносам в ПФР - задолженность
на 1 апреля 2013 г. по 300 сотрудникам. Отчетность до этого сдавалась в программе ПФР. 1С запущена, данных за прошлые периоды нет или они неправильные. Пачки не проведены. Я их поудалял до 2013 г.
Сделал отчет за 1 и 2 квартал 2013 г.при 0 задолженности. А как выйти на сальдо ПФР не знаю. Пробую сейчас изменять суммы уплаты прямо в пачках 1 квартала, но это так долго. Может быть, что-нибудь посоветуете? Просто ставить задолженность в Исходных данных без начислений не получается - пачки не проводятся. А начисления есть не по всем сотрудникам, некоторые уже не работают. Корректировку за 1 квартал делать нельзя.
С уважением, Михаил.
19. Леопольд Роскошный (ЛеваРоскошный) 31.07.13 12:53
{ВнешняяОбработка.ПФР_СкорректироватьУплатуПоДаннымПФР.МодульОбъекта(37)}: Ошибка при вызове метода контекста (Добавить): Неверное имя колонки
Из файла не была получена информация!

такая вот ошибочка.
что делать ?
20. Илья Ванчугов (Vanchez) 31.07.13 21:30
(19) ЛеваРоскошный,
Названия и порядок колонок должны быть такими же, как на скриншоте
21. Марина Чирина (chmv) 06.08.13 15:58
Лучше все-таки грузить из xls. ПФР не хочет, но дает
22. vlad kan (truba) 09.08.13 16:28
плохо что многофирменности нет, добавляется же двумя ходами ;)
23. Аktrc Новоселецкий (kkprps) 15.10.13 16:08
{ВнешняяОбработка.ПФР_СкорректироватьУплатуПоДаннымПФР.МодульОбъекта(37)}: Ошибка при вызове метода контекста (Добавить): Неверное имя колонки
Из файла не была получена информация!
Файл xls получен из ПФ, колонки совпадают
24. program program (prodines) 07.11.13 17:16
(23) kkprps, возможно, надо удалить первые 2 строки экселевского файла - предшествующие синему заголовку. У меня есть такие, по крайней мере.
25. Виталий Виноградов (Vital0604) 26.11.13 13:31
{ВнешняяОбработка.ПФР_СкорректироватьУплатуПоДаннымПФР.МодульОбъекта(270)}: Поле объекта не обнаружено (разница_усч_нсч)
Если РазницаСтр<>НайденнаяСтрока.разница_усч_нсч или РазницаНак<>НайденнаяСтрока.разница_унч_ннч Тогда
Такое поле есть. Файл из ПФР только с данными по остатку неуплаченных/переплаченных взносов, галку установил. В чём может быть проблема?
26. Дима Путин (dimasikus31) 12.02.14 17:27
Здравствуйте! Можно ли доработать обработку, что на учитывала и 2013 год. Потому что есть файл ексель с данными на начало 4 кв. 2013 года. Спасибо
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа