Те, кто занимается сдачей розничной алкогольной декларации в личном кабинете на сайте https://service.fsrar.ru/ наверняка сталкивались с такой ситуацией: файл декларации сформирован, загружен для проверки, синтаксический контроль прошел успешно, критических ошибок нет и наконец появляется региональный протокол. А там куча строк типа
Возможно нарушен порядок заполнения декларации. Подробнее о несоответствии: В подразделении КПП 999999999 по коду продукции 450 и производителю/импортеру 'Комбинат ВиноВодка"' (ИНН 1111111111, КПП 222222222) остаток на начало отчетного периода 'нет данных' не совпадает с остатком на конец предыдущего периода 0.07500
Такие ошибки появляются по разным причинам. В моем случае это изменение КПП производителя / покупателя втечении отчетного квартала (согласно изменениям в уставных документах производителя / покупателя; изменение кода алкогольной продукции (с подачи производителя); ошибки операторов и т.д. На своем опыте я убедился, что разбирать в причинах каждой ситуации долго и не целесообразно. Проще внести изменения в декларацию, которые устранят указанные выше огрехи.
Логика исправлений такова: если в конечный остаток прошлого квартала < начального остатка текущего квартала, то уменьшаем начальный остаток текущего квартала а разницу добавляем в графу "прочее поступление". И наоборот, когда конечный остаток прошлого квартала > начального остатка текущего квартала, то увеличиваем остаток текущего квартала а разницу прибавляем в графу "прочий расход". Таким образом мы сохраняем в заполненной декларации соответствие конечных остатков с актуальными остатками в учетной системе.
Делать это вручную занятие довольно муторное. А если декларация составлена для большого числа розничных точек, то и времени может потребоваться много.
Поэтому я решил помочь себе. Если мой труд пригодится кому-то еще буду рад.
Итак....порядок действий.
1. Выводим на экран полученный протокол с ошибками.
2. Копируем его через буфер на первый лист екселевского документа.
3. На листе убираем флажок "переносить по словам" в свойствах всех ячеек листа.
4. Убираем все лишние строки вначале и в конце листа.
В результате должны остаться только строки, содержащие описание ошибок. (см рис1)
Далее нужно доработать штатную обработку, формирующую декларацию или воспользоваться той, которую я выложил.
Суть доработки:
добавляется форма, в модуле которой будет осуществляться процесс чтения файла ошибок. В моем случае это форма "ОбработкаОшибок" На форму накидывается строковый реквизит для указания xls-файла с ошибками и табличное поле, связанное с реквизитом формы типа ТаблицаЗначений (рис.2). Для открытия этой формы на основную форму декларации вешается кнопка (см рис.3). при нажатии на которую модально открывается форма "ОбработкаОшибок". В ней указываем путь к xls-файлу, подготовленному ранее и жмем кн. "Загрузить ошибки". Ждем когда закончится загрузка содержимого xls-файла на форму. И затем закрываем ее. При закрытии форма возвращает в точку вызова заполненную таблицу значений и далее запускается алгоритм исправления.
С помощью этой доработки я сэкономил себе минимум неделю. Единственное что хочу сказать. По непонятным мне причинам фиксация исправлений в основной форме происходит не всегда с первого раза. Разбираться почему так происходит честно говоря нет желания. Я запускал процесс вечером, перед уходом с работы. Утром приходил, сохранял результат и закрывал форму. Потом открывал ее и смотрел, сохранились результаты или нет. Если нет, то просто запускал процесс заново. Получилось с третьего раза... Ну главное результат ))