Новые проводки (постановка)
Материал из GedeminWiki
Версия от 12:35, 16 ноября 2016; SYSDBA (обсуждение | вклад)
CREATE TABLE a2_entry ( id dintkey, /* Для сложных проводок мы имеем обязательно одну главную запись и несколько дополнительных дебетов или кредитов. */ masterentrykey dforeignkey, companykey dintkey, dtkey dintkey, ctkey dintkey, /* Фиксируем не только дату, но и время проводки. Там, где не принципиально или время не известно будем использовать 00:00. */ entrydate dtimestamp_notnull, /* тип документа */ doctypekey dintkey, /* ИД записи в таблице документа */ docid dintkey, /* ИД шага из бизнес-процесса */ bpseq dintkey, /* Предыдущая операция (проводка), если имеем дело с последовательностью операций. */ prevkey dforeignkey ); CREATE TABLE a2_some_doc ( id dintkey, /* Мы больше не ограничиваем структуру двумя уровнями вложенности шапка-позиция. Документ может быть сложным с неограниченным количеством уровней вложенности. upkey -- ссылка на таблицу верхнего уровня. */ upkey dforeignkey, /* Следующие поля необязательны. Разработчик сам решает будут они присутствовать в конкретном документе или нет. */ [docnumber ddocnumber,] [docorder dinteger,] [creationdate dcreationdate,] [creatorkey dcreatorkey,] [editiondate deditiondate,] [editorkey deditorkey,] [aview dsecurity,] [achag dsecurity,] [afull dsecurity,] /* Поля документа, содержащие объект, признаки, значения. */ [attr1] ... [attrn] );