Восстановление взаиморасчетов в 1с ут

Обновлено: 03.07.2024

В помощник Закрытие месяца включена процедура контроля и устранения разрывов расчетов с партнерами по данным регистров оперативного учета. Процедура выполняется только для онлайн взаиморасчетов.

  • Устранить разрывы между остатками по регистрам взаиморасчетов, появившиеся из-за пользовательских и системных ошибок.
  • Свернуть развернутое сальдо в рамках одного объекта расчетов и аналитики без участия пользователя.
  • Сделать возможным автоматический переход на онлайн взаиморасчеты.
  • Обеспечить механизм, при помощи которого в будущем можно будет корректировать ошибки взаиморасчетов в открытом периоде.

Примеры ошибок, создавшие разрывы в остатках:

  • Вводом остатков введен остаток, как по долгу, так и по предоплате в рамках одного объекта расчетов и аналитики взаиморасчетов.
  • По одному договору числился остаток предоплаты, по другому договору остаток задолженности. Поиском и удалением дублей объединили два договора в один. Аналогично для партнеров, контрагентов и направлений деятельности.
  • По различным причинам не было произведено офлайн распределение взаиморасчетов.
  • Произошли ошибки в онлайн распределении взаиморасчетов.
  • При офлайн взаиморасчетах при детализации по договорам введена уменьшающая корректировка реализации/приобретения по уже оплаченной накладной, при наличии на договоре другого долга по другой накладной.
  • Некорректно произведенные корректировки регистров.

Список проблем в регистрах взаиморасчетов в рабочем месте Закрытии месяца в программе 1С:Управление торговлей 11 (1С:УТ)

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

Исправление ошибок, как и актуализация расчетов, будет выполняться с первого месяца, на который есть задание к закрытию месяца по взаиморасчетам.

Список проблем отражается в рабочем месте Закрытии месяца.

По гиперссылке Подробнее выводится детальная информация по обнаруженным ошибкам. Для каждой проблемы регистрируется тип расчетов, объект расчетов и аналитика. В поле Описание проверки выводится описание способов исправления.

Пример проблем некорректных остатков по финансовым регистрам взаиморасчетов.

Пример проблем развернутого сальдо по финансовым регистрам взаиморасчетов.

Результаты проверки состояния учета взаиморасчетов в программе 1С:Управление торговлей 11 (1С:УТ)
Пример проблем развернутого сальдо по финансовым регистрам взаиморасчетов в программе 1С:Управление торговлей 11 (1С:УТ)

Формирование документов Корректировка регистров на суммы разрывов в программе 1С:Управление торговлей 11 (1С:УТ)

Если требуется восстановить движения внутри документов, то их нужно перепровести вручную. Автоматическое устранение ошибок в процессе выполнения этапа закрытия месяца движения документов не изменяет, а приводит остатки по регистрам к состоянию отсутствия разрывов взаиморасчетов за счет формирования документов Корректировка регистров на суммы разрывов. В результате закрытия месяца будут сформированы корректировки регистров со служебными операциями.

Поле Операция в документе недоступно для редактирования, заполняется автоматически и отделяет служебные корректировки от ручных. Поле Организация видно только в служебных операциях, созданных закрытием месяца или переходом на онлайн взаиморасчеты.

Для целей оперативного и управленческого учета по скорректированным записям взаиморасчетов будут добавлены балансирующие их записи по регистрам прочих доходов и расходов, активов и пассивов.

Всем привет.
Сейчас в программе 1С:ERP сбились взаиморасчеты с контрагентами. Т.е. платежки не засчитались, или поступление не видит платежку.
Есть ли какой нить механизм, который восстановит взаиморасчеты?

В УПП есть такой механизм как «Восстановление состояния расчетов с контрагентами». Может и здесь тоже есть что то подобное?

(1) sitcva, в УПП, на сколько я знаю, этот механизм перепроводит документы в соответствии с последовательностью взаиморасчетов. Полагаю, что то же самое должно быть и в ЕРП. Сейчас в программе 1С:ERP сбились взаиморасчеты с контрагентами. Т.е. платежки не засчитались, или поступление не видит платежку. как это мило. А никто не пробовал прочитать эту фразу по другому? Например как то так . Не сочтите за грубость, но слово сбились как то выводит из равновесия. вопрос такой - если сбились , значит они были, или таки не было никогда? А ежели были, то никто не пытался разобраться, почему сбились ? (3) Alex_E, ну как же! Создали документ задним числом - вот и сбились. В УПП есть "большая красная кнопка" - обработка, которая сдвигает последовательность по взаиморасчетам и "перепроводит" документы по этим регистрам и 60/62/76/. всяким счетам учета расчетов с контрагентами, а в ЕРП не все так очевидно. Полагаю, должна быть. -0 в последнем слове этой фразы закралась ошибка - читать следует не сбили сь а просто сбили . В (3) я об этом :-) (5) Alex_E, и что в этом нехорошего? Реальность от идеальной вселенной отличается неслабо ))) (3) Alex_E, (4) starik-2005, да, вы правы, документы проводятся задним числом, но к сожалению приходные документы от поставщиков приходят не всегда день в день, а оплата уже проведена.
Так я и не получила ответ на свой вопрос.
В обработке Проведение документов есть закладка Восстановление последовательностей, но она не активна. Пока не понятно как её активировать. Возможно решение скрывается там? В закрытие месяца имеется такой пункт, можете им воспользоваться. "Формирование движений по расчетам с контрагентами" и много других последовательностей.
Также отражение документов в регламентном учете. Границы хранятся в программе и вычисляются самостоятельно системой.

Отдельного инструмента восстановления последовательности движений документов, как в предыдущих поколениях программ (например, в прикладном решении "Управление производственным предприятием"), нет. В новых редакциях "1С:КА" и "1С:ERP" такой механизм не требуется. Восстановление последовательности движений по документам осуществляется автоматически при выполнении регламентных заданий в рамках закрытия месяца.

Если после выполнения регламентных заданий выполнить перепроведение документов, то регламентное задание необходимо выполнить заново. Поэтому если в документах не меняются данные, а требуется только изменить их хронологию, то выполнять групповое перепроведение не нужно.

Если необходимо запустить выполнение регламентного задания с определенной даты, допускается ручное добавление записи в регистр заданий. Для добавления записи в регистр заданий необходимо выполнить следующее:

Ускорение процесса восстановления последовательности взаиморасчетов в БП КОРП

В систему регулярно поступают документы задним числом, что приводит к сбросу границы последовательности взаиморасчетов и потере актуальности расчетов. Для восстановления последовательности необходимо за ограниченное время перепровести все документы, начиная с даты этого документа и до сегодняшнего дня. При вводе документа месячной давности (что случается в системе практически ежедневно) необходимо будет перепровести около 100 000 документов за ночь.

По состоянию на начало проекта документы перепроводятся в среднем со скоростью 4.32сек. Таким образом, для перепроведения всех документов понадобится 120 часов (5суток), что совершенно неприемлемо с точки зрения бизнес-процессов предприятия.

Для того, чтобы ускорить систему до необходимого уровня (100 000 документов за 8часов) необходимо, чтобы один документ в среднем проводился 0.288 сек. Достигнуть такой производительности за разумный срок не представляется возможным.

Предложенное решение

Общая идея

Основная идея: разбить документы на независимые группы и перепроводить эти группы в несколько потоков, увеличивая таким образом скорость обработки данных за счет параллельности, а не ускорения проведения документа.

Для реализации такой схемы необходимо разделить документы на независимые группы, которые удовлетворяют следующим требованиям:

  • При проведении документов одной группы не используются результаты проведения документов любой другой группы
  • При проведении документов одной группы не происходит обращение к ресурсам (остаткам регистров и т.п.), которые могут затрагиваться при проведении документов из любой другой группы

Был проведен анализ бизнес-процессов данного предприятия и прдложено следующее решение: группировать документы по договору контрагента.

Анализ деталей реализации

Для физической реализации этой группировки было решено добавить в последовательность взаиморасчетов новое измерение: договор контрагента. В рамках проекта ЦКТП были проведены консультации с разработчиками типовой Бухгалтерии КОРП, которые подтвердили корректность такого решения. Из логики бизнес-процессов системы было очевидно, что документы, относящиеся к разным договорам являются независимыми. Были так же проведены эксперименты, которые показали, что при параллельном восстановлении последовательности по разным договорам контрагента не возникает обращений к общим ресурсам, то есть разные потоки не блокируются. Таким образом, предложенная группировка соответствует предъявляемым требованиям.

Были проведены эксперименты для вычисления оптимального количества параллельных потоков при восстановлении последовательности. Необходимо было выбрать такое количество потоков, которое обеспечивало бы максимальную загруженность оборудования и, соответственно, максимальную общую скорость восстановления последовательности. Это число потоков оказалось равным десяти. Таким образом, была найдена возможность ускорения процесса восстановления последовательности в 10 раз. Если раньше один документ проводился в среднем за 4.32 секунды, то теперь за это же время будет проводиться 10 документов, однако этого будет все еще недостаточно для достижения целевой производительности, поскольку 100 000 документов перепроведутся за 12 часов (вместо 8 требуемых).

Однако, выделение независимых групп документов за счет добавления нового измерения в последовательность позволяет так же сократить общее количество документов, которые необходимо перепровести. Раньше последовательность имела одну общую границу, и любое проведение задним числом влияло на все документы. Для восстановления такой последовательности(то есть, для перемещения границы на актуальную дату) необходимо было перепровести все документы. При добавлении в последовательность нового измерения ситуация кардинально изменилась. Теперь проведение документа задним числом влияет только на документы, имеющие такой же договор контрагента. Следовательно, теперь нужно перепроводить только документы с этим договором. Все остальные документы никак не затрагиваются и не должны перепероводится. Иначе говоря, у последовательности появилось множество разных границ (каждая граница - по своему договору контрагента), которые можно и нужно перемещать независимо друг от друга.

Анализ данных рабочей системы показал, что максимальное количество документов, которые необходимо будет перепровести с учетом этого нового фактора составляет около 30%от общего числа. То есть, вместо 100 000 документов необходимо перепровести всего около 33 000. Таким образом появилась реальная возможность уложиться в требования клиента по производительности и даже превысить их - восстановить последовательность всего за 4 часа.

Более углубленный анализ данных системы позволил выявить документы, которые нарушали построенную схему, так как мог относиться к нескольким договорам одновременно - это документы "Корректировка долга" и "Авансовый отчет". Документы этих типов присутствовали в системе, однако их количество было относительно невелико. В качестве решения проблемы был предложен следующий подход. Если в восстанавливаемом периоде времени присутствует документ содержащий более одного договора, то процесс восстановления выполняется следующим образом:

  • Перепроводятся документы от начала нужного периода до момента времени документа "Корректировка долга" или "Авансовый отчет"
  • Перепроводится документ "Корректировка долга" или "Авансовый отчет"
  • Перепроводятся документы от момента времени документа "Корректировка долга" или "Авансовый отчет" до конца нужного периода

То есть, документы "Корректировка долга" и "Авансовый отчет" как бы разделяют весь временной отрезок перепроведения документов на меньшие подотрезки, внутри которых документы по-прежнему можно перепроводить параллельно. Это должно в целом несколько замедлить процесс восстановления последовательности, однако, с учетом имеющегося запаса (4 часа при требовании 8 часов) времени должно хватить.

Реализация механизма параллельного перепроведения

Реализованный механизм включает в себя обработку , которая позволяет пользователю настроить и запустить процесс восстановления последовательности. При запуске процесса обработка создает управляющее фоновое задание (см. ниже) и включает обработчик ожидания. При каждом срабатывании обработчика, обработка отображает ход восстановления последовательности и контролирует окончание процесса восстановления.

Управляющее фоновое задание анализирует текущее состояние последовательности и выделяет группы документов (по отдельным договорам), которые необходимо перепровести. При необходимости (если в заданном периоде присутствуют документы "Корректировка долга") группы по отдельным договорам дополнительно делятся на подгруппы по периодам между документами "Корректировка долга".

После этого управляющее фоновое задание запускает до 10 исполнительных фоновых заданий , каждому из которых выдается своя группа документов. Список исполнительных фоновых заданий контролируется с определенной периодичностью. После завершения фонового задания (что происходит после того, как группа обработана), запускается новое фоновое задание и ему выдается новая группа.

Исполнительное фоновое задание получает на входе номер группы документов (из списка, составленного управляющим фоновым заданием), которые необходимо перепровести. После завершения перепроведения всех документов группы, исполнительное фоновое задание помечает группу, как обработанную, и завершается.

Результат

По данным, полученным на рабочей базе после внедрения нового механизма восстановления последовательности, он позволяет актуализировать данные по взаиморасчетам за время, не превышающее 7.5 часов.

Подскажите, пожалуйста, в чем ошибка.

Обработку проведение по партиям советовать не надо, интересует почему именно этот механизм не работает .
Заранее спасибо ответившим.

(1) Как понять ничего нет, это же партионный учет, он включен и документов куча .
Подпишусь под вопросом. Тоже такое видел, решения не нашел.
Кстати если создасть свою последовательность в демо базе , то ситуация та-же самая, она не будет работать.
Может я что то в последовательностях не понимаю, вот берем создаем последовательность "тест" включаем туда документ реализацию и движения по регистру взаиморасчеты, при восстановлении этой последовательности должны перепровестись все документы реализации (который двигают регистр взаиморасчеты), я во всяком случает так думал, но нет, этого не происходит. Вопрос , почему .
(0) Так это, что в КА что в УТ есть такое, потому что документы не регистрируются автоматически в последовательности. поэтому она ничего там не регистрирует и пишет 01.01.0001. Нужно в УТ и КА именно обработкой по партиям ее смещать.
(8) В описании в конфигураторе про последовательность написано что они должны там регистрироваться сами, это как бы функция платформы , а не конфигурации.

Покопав конфигурацию, выяснил, что документы действительно автоматически не регистрируются в последовательности, в каждом документе стоит "не заполнять автоматически" в пункте последовательностей, а попадают они туда по каким то условиям в коде (по моему теряется весь смысл этой последовательности).

Но даже если создать свою последовательность, и проставить чтоб автоматически заполнялась (а это по какой то глупости, можно сделать только для всех последовательностей), то всё равно документ не зарегистрируется в этой последовательности, пока в коде не пропишешь последовательности.мояпоследовательность.добавить(док)
, после этого в последовательности появляется этот документ, но толку от этого мало , когда пытаешься восстановить её она также тупо не перепроводит документы как и раньше.

Короче на этом я понял , что моя красивая идея отслеживать очередность проведения документов по новому моему регистру, потерпела фиаско , последовательность все равно конечно пригодилась, она хотя бы четка сбивается и можно увидеть с какого момента надо перепроводить документы, но вот перепроводить нужно своей написанной обработочкой.

Читайте также: