📄Журнал документов и документ
Процесс разделяется на элементарные события (шаги), каждый из которых описывается отдельным документом.
Last updated
Процесс разделяется на элементарные события (шаги), каждый из которых описывается отдельным документом.
Last updated
Документы содержат информацию о произошедших событиях, на основании которых генерируются движения – изменения итогов. Журнал документов – список документов одного типа. То есть документ – это запись журнала соответствующего типа.
Документ состоит из:
Общей шапки – набора полей, который присутствует во всех типах документов.
Шапки – набора полей, который есть только в документе данного типа.
Набора табличных частей – принадлежащего документу массива данных тех же типов, что и для справочников. Сами по себе табличные части – отдельные объекты и описываются также отдельно.
Тип документов задает:
Набор полей в шапке.
Набор табличных частей. В документе может быть две табличных части одинакового типа. В отличие от справочника у записи табличной части есть предопределенный набор полей, который позволяет привязать ее к документу.
Набор подтипов документа.
Типы документов, существующих в системе, определяет бизнес-логика. Это могут быть, например, кассовые документы, документы прихода, инвентаризации и так далее.
Событие, информацию о котором хранит документ, может быть растянуто во времени, например, продажа проходит через этапы заказа. Если информация о промежуточных этапах не обладает безусловной ценностью, можно несколько пожертвовать ее доступностью (информация останется, но не в столь явном виде) в пользу удобства пользователя или разработчика и представить этапы как подтипы документа. Аналогия подтипа документа – состояние.
Генерация движений – изменений итогов, на основе данных документа делается в специальных программах – транзакционных скриптах или обработчиках проведения, которые пишет прикладной разработчик. Эти скрипты запускаются при каждом сохранении документа, и набор движений сохраняется в базе данных оптимальным образом.