Managed Documents plugin

This page describes the applications and modules, database table structure, scripts, and roles.

Database table structure

The following tables are added:

Table 1. Tables
Display Name (Table Name) Description
Document [dms_document] The document details.
Revision [dms_revision] The document revisions.
Audience [dms_audience] The intended document readers.
Classifications [classification] The document restriction level, such as public or confidential. (Does not define access to the document. Document security is set in user and group permissions.)
Type [dms_type] The document purpose.
Component [dms_component] The components of name formats. The value field is a dot-walking expression that is evaluated. An exception is made for the revision because it does not exist when the revision name is generated.
Name format [dms_name_format] The composition of components to generate revision names.
Approval sequence [approval_sequence] The approval sequences that users need to follow.
Approval Rule [dms_approval_rule] The criteria that records of the dms_document table must match. Used to automatically add approvers to a document.
Collection [dms_collection] The document groups created by the user.


Table 2. Business rules that are added to sys_script
Rule Description
Update Document Changes the state of a document depending on its revisions.
Add Approvers Populates the list of approvers in the document.
Table 3. Script includes that will be added to sys_script_include
Script include Description
DocumentManagement Contains the main logics for the Managed Documents plugin.
DocumentManagementDB Contains methods to perform CRUD operations on the database.
DocumentManagementSecurity Helps manage the security of the Managed Documents system.
DocumentManagementAjax Updates the details of the temporary revision that is created when opening the upload/check in revision form.
DocumentAttachmentAjax Renames an attachment file.
DocumentRevisionWorkflowHelper Helps perform basic workflow operations on a revision.
DocumentManagementApprovalMatcher Helps obtain the user and group approvers for a document that matches approval rules.
DocumentApproverHelper Contains logics to handle document approvers.
DocumentManagementUtils Useful methods.
DocumentReferenceQualifiers Static methods that return reference qualifiers.
Table 4. Client script that is added to sys_script_client
Rule Description
Document type change Updates the name format field in the revision settings section of the document. Each type has a default name format.


This plugin introduces two new roles:

Table 5. Roles
Role Description
document_management_user This role enables a user to access the Managed Documents plugin, create documents, and search for documents. Document reviewers and approvers need the document_management_user role to access the Managed Document plugin. (Please note that reviewers and approvers can also access a document revision from an approval record.)
document_management_admin This role enables a user to change administrative settings for the Managed Documents plugin.
Note: Each document has individual permissions, so even if a user is given the document_management_user role and has permissions to the application, the user can only view documents to which they have been given access.