29 нояб. 2016 г.

GDMNN: Задача #1

В продолжение вчерашнего разговора. Первая задача: представить альтернативную структуру таблиц для документов, бухгалтерских проводок и складского движения.

Цель:
  • Унифицировать механизмы фиксации и учета движения, обобщив и распространив их не только на движение ТМЦ, но и на движение (изменение, трансформацию) любого объекта учета.
  • Избавиться от дублирования данных и непрозрачных функций преобразования (поля документа => аналитические признаки в проводках).
  • Любое поле документа может быть использовано в качестве аналитического признака при построении отчетов.
  • Отойти от ограниченной структуры шапка-позиции. Для сложных документов предусмотреть наличие нескольких датасетов с произвольным уровнем вложенности. 
  • Для сумовых данных, используемых с целью ускорения выборок (INV_BALANCE), предусмотреть неблокирующую схему обновления, чтобы отказаться от автокомита в складских документах (комита частично введенного документа). 
  • Статус документа: черновик, отложенный, готовый.
  • Уменьшить размер базы и, как следствие, увеличить скорость операций по изменению и выборке. 
Для новой структуры представить запрос на построение журнала ордера с использованием SQL window functions и другого функционала Firebird 3.

Комментариев нет:

Отправить комментарий