Предложения по хранению первичных документов



Posted by Васеленко Сергей, Фирма КАРДИНАЛ on September 01, 1999 at 02:41:08:

Хочу изложить идею хранения первичных документов.

Она не совсем нова, но, по-моему, будет изложена ясно.

Сервер по работе с первичными документами поддерживает два вида операций:
- запись документа в архив при построении документа,
- чтение документа из архива по директиве L.

Предложение:
все документы хранятся в едином файле, например, TXA.TXT.

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

При этом запоминается смещение в байтах начала и длина первичного документа.

Т.е. для каждого кода операции дополнительно хранятся:
- временной штамп первичного документа,
- смещение начала документа,
- длина первичного документа.

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

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

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

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

Этот режим перештамповки является к тому же бесплатным.



Пpишедшие ответы: