Documents

Files and folders

MarketplaceContent and documentsVersion 0.1.0manifest

What it is for ​

A register of business documents with folder, kind, owner, expiry and confidentiality. It stores references to documents, not the file contents.

What the package does and does not do ​

A register of business documents: folders, document records with kind, owner, expiry and confidentiality, and a draft, published and archived flow. It stores references, not file contents.

Models ​

documents_folder ​

A folder that groups documents

Read group: documents.user. Write group: documents.manager.

FieldKindData classPersonal dataGroupAgents seeDescription
nametextnonenodocuments.userin clearFolder name
parent_idref → documents_foldernonenodocuments.userin clearThe folder this one sits in
descriptionlongtextnonenodocuments.userin clearWhat belongs in the folder

documents_document ​

A contract, policy, certificate or other document on record

Read group: documents.user. Write group: documents.user.

FieldKindData classPersonal dataGroupAgents seeDescription
titletextnonenodocuments.userin clearDocument title
folder_idref → documents_foldernonenodocuments.userin clearThe folder the document is filed in
kindselect (contract, invoice, policy, report, certificate, other)nonenodocuments.userin clearType of document: contract, invoice, policy, report, certificate, other
confidentialityselect (public, internal, confidential, restricted)nonenodocuments.userin clearWho should see it, as a label for readers: public, internal, confidential, restricted
ownertextinternalyesdocuments.usermaskedName of the person responsible for the document
referencetextnonenodocuments.userin clearReference number, for example a contract number
locationtextnonenodocuments.userin clearWhere the file is stored, such as a link or archive box
expires_ondatenonenodocuments.userin clearDate after which the document is no longer valid (YYYY-MM-DD)
summarylongtextnonenodocuments.userin clearWhat the document says, in a few lines
stateselect (draft, published, archived)nonenodocuments.userin clearDocument status: draft, published, archived

Workflows ​

documents_document ​

ActionMovesWho may run itApproval
documents_document.publishstate: draft → publisheddocuments.userno
documents_document.archivestate: published → archiveddocuments.managerno

Permission groups ​

Groups used by this app:

  • documents.manager
  • documents.user

Approval steps ​

No step in this app needs an approval, apart from deleting records.

What agents can and cannot do ​

An agent can read, search, create and update records of this app, and run the actions that need no approval, within the permission groups of its token.

It can only propose these steps, and a person must approve them: documents_folder.delete, documents_document.delete.

Personal data is masked as placeholder tokens: documents_document.owner.

Dependencies ​

None.

Install ​

Install it from the Customize app (Marketplace), or from the command line:

bash
obop modules install-from documents

Needs a database and administrator rights.

Build your own ​

The module guide shows how apps like this one are written