Показать сообщение отдельно
Старый 15.06.2019, 16:01   #1  
Lemming is offline
Lemming
Участник
Аватар для Lemming
 
1,144 / 343 (14) ++++++
Регистрация: 20.04.2004
Адрес: Москва, Чайнатаун в Люблино
Записей в блоге: 10
? Теоретические размышления о реализации сторно в ERP системе
Предположим вы проектируете свою ERP/Учетную систему. Вопрос в том, как красиво сделать сторно/реверс документов. Вариант 1С с удалением старых проводок и создания новых имеет как свои преимущества, так и недостатки. Преимущества заключается в том, что это самый очевидный способ, по которому пошли почти все отечественные учетные системы, недостатки: в некоторых случаях это вносит путаницу в учет, а так же теряется аудиторский след.

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

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

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