Эти 2 функции добавить в общий модуль "ПроцедурыПерсонифицированногоУчета"
// ----------------------------------------------------------------------------------------------
Функция ПолучитьНомерКварталаОтчетногоПериода(ДатаПериода)
НомМесяца = Месяц(ДатаПериода);
Год = Год(ДатаПериода);
НомМесяца = ?((Год=2010) и (НомМесяца=7), 4, НомМесяца);
Возврат ?(НомМесяца=1, 1, ?(НомМесяца=4, 2, ?(НомМесяца=7, 3, 4)));
КонецФункции // ПолучитьНомерКварталаОтчетногоПериода
// ----------------------------------------------------------------------------------------------
// Параметры:
// ОтчетныйПериод - дата
//
// Возвращает:
// Число (5,0)
//
Функция ОпределитьНомерПервойПачкиПоПравиламПФР(ОтчетныйПериод) Экспорт
ГодПачки = Год(ОтчетныйПериод);
Если ГодПачки = 2010 Тогда
НомерПачки = (12 + ГодПачки - 2008) * 1000 + 1;
Иначе
Квартал = ПолучитьНомерКварталаОтчетногоПериода(ОтчетныйПериод);
НомерПачки = (16 + (ГодПачки - 2011) * 4 + (Квартал - 1)) * 1000 + 1;
КонецЕсли;
Возврат НомерПачки
КонецФункции // ОпределитьНомерПачкиПоПравиламПФР
Функцию ПолучитьСчетчикВыгруженныхФайловПФР из общего модуля "РегламентированнаяОтчетность" я изменил таким образом, чтобы она сравнивала текущий номер пачки из регистра, и номер пачки по правилам ПФР. При различии в значениях берется ПФР-номер.
Функция ПолучитьСчетчикВыгруженныхФайловПФР(Организация, Год, ОтчетныйПериод = Неопределено) Экспорт
НомерПачки = 0;
Запрос = Новый Запрос(
"ВЫБРАТЬ
| СчетчикВыгрузокПФР.Значение КАК Значение
|ИЗ
| РегистрСведений.СчетчикВыгрузокПФР КАК СчетчикВыгрузокПФР
|ГДЕ
| СчетчикВыгрузокПФР.Организация = &Организация
| И СчетчикВыгрузокПФР.Год = &Год");
Запрос.УстановитьПараметр("Организация", Организация);
Запрос.УстановитьПараметр("Год", Год);
РезультатЗапроса = Запрос.Выполнить();
Если НЕ РезультатЗапроса.Пустой() Тогда
Выборка = РезультатЗапроса.Выбрать();
Если Выборка.Следующий() Тогда
НомерПачки = ?(НЕ ЗначениеЗаполнено(Выборка.Значение), 0, Выборка.Значение);
КонецЕсли;
КонецЕсли;
Если ОтчетныйПериод <> Неопределено Тогда
НомерПервойПачки = ПроцедурыПерсонифицированногоУчета.ОпределитьНомерПервойПачкиПоПравиламПФР(ОтчетныйПериод);
Если Лев(НомерПервойПачки, 2) = Лев(НомерПачки, 2) Тогда // соблюдено условие нумерации ПФР
Возврат НомерПачки;
КонецЕсли;
Возврат Макс(НомерПервойПачки, НомерПачки);
КонецЕсли;
Возврат НомерПачки;
КонецФункции
Теперь вызывать функцию ПолучитьСчетчикВыгруженныхФайловПФР из документов персучета необходимо с дополнительным параметром
ОтчетныйПериод. Если новый параметр не передать, то произойдет расчет номеров по алгоритму 1С.