Page tree

File with Versioning Fields

File with versioning is the standard data type for storing attached files in Agiloft. File fields are highly configurable and can include check-in/check-out controls, versioning, optical character recognition (OCR), and other settings.

In record forms, file fields appear as as an input box with an Attach/Manage link to open the File wizard.

Adding files

To add files, drag the file onto the input box and drop it to upload. If you need to edit the files already attached, click Attach/Manage.

Dragging a file into a File with Versioning field

File Field Options

There are several options available for File with Versioning fields.


The Enable versioning? option adds a permission on the Permissions tab of the field wizard so that you can restrict which user groups can interact with versioned files. When versioning is turned on for a field, new options appear in the Attach / Manage wizard that allow you to update a file with a new version. Versioning is independent of whether the field may hold multiple files.

When a file has multiple version, a + icon appears next to the document. Clicking the plus + icon opens the document's version history. On the right, you can use the icons to check out the document, update the document by uploading a newer version of the file, or delete the document. When deleting versioned files, you can delete all files, only old files, or only the most recent file.

Attachment management window showing two versions of a contract file

Direct File Editing

This option allows users to open files for edit, then save directly back to the file field. If you enable direct file editing, you can also choose whether to allow concurrent editing, where multiple users can directly edit the same file at the same time. For more on this feature, see Direct File Edit.

If you enable direct editing, you have additional options for file naming and rules.

File Name Suffixes

You can choose to add information to the file name as a suffix. Suffix information provides metadata and prevents files from being overwritten without interim changes being saved. For more on this feature, see Direct File Edit.

Rule Triggers

If you have any rules that run when this field is edited, or you might create such rules in the future, consider when you want them to be triggered.

Your options include:

  • Trigger rules every time a file is saved. This means every time any user has the file open for editing and clicks Save, rules are triggered if applicable.
  • If you've enabled concurrent editing, you can trigger rules every time an individual user closes the editing session. For example, if three users have the file open for editing and one of them closes it, rules will be triggered, even though the other two users are still working in the file.
  • Trigger rules when all editing is finished. This means rules are triggered only when the editing session is closed, or, during concurrent editing, when the last editing session is closed. Rules are only triggered when all users have closed the file.

Note that the wording of these options differs depending on whether you've enabled concurrent editing.

Application for Direct Editing

You can choose which word processor the stored file will open in by choosing either Microsoft Word or Google Docs from the options in this section. Note that editing Google Docs requires the Agiloft Google Drive Integration.

Allow Google Documents

This option is only relevant for the legacy Google Drive integration. Setting this option to Yes will show a section at the bottom on the Attach / Manage wizard to reference files stored in Google Drive instead of actually attaching a file. 

Check-in / check-out restrictions

There are three levels of check-in/check-out restrictions which can be set for file fields: no restrictions, warnings only, or fully enforced check-in/check-out. If check-in / check-out is enabled new options appear in the Attach / Manage wizard for these controls.

Attaching Multiple Files

You can choose whether the file field can hold multiple files or not by toggling the Allow the user to attach multiple files? setting. This works in conjunction with versioning, so it is possible to have multiple versioned files held in a single field (though such configuration is not typically recommended). If you attach more than ten files, a scroll bar appears in the field that allows you to view all of your files without taking up too much record space.

Minimum and Maximum File Size

You can set a minimum file size, maximum file size, or both if needed. By default, there is no maximum set file size, but most web browsers impose some maximum upload size limit.

Restrict Attachments

Restrict the file types you allow as attachments to support your organization's security requirements. By default, this is set to Prevent attachment of executable files and files of type: bat. You can add more restricted file types; switch to allow only attachments of a listed type; or allow users to attach files of any type.


Previous functionality allowed running optical character recognition on files as they were uploaded. This functionality has been supplanted by the OCR Action type which runs when the record is saved, causing less interruption for the user. You can hide this option from users by updating the Deprecate Old File Options global variable. 

Restricting Attached File Types

A configuration script AttachedFileExtensionChecker.jar enables users to control the types of files that can be added to a file field by restricting file extensions. There are three options to configure file type restrictions:

  1. In the Admin Notes section of a file field, add a note defining the allowed file extensions, using the following format: <file_types_allowed>.docx, .jpg, .pdf</file_types_allowed>
    This tag can coexist with other note items, and has precedence over the other restriction methods. However, you will need to add this for each individual file field.
  2. Create the following new global variables:
    1. file_types_allowed - uses a comma-separated list of permitted file types.
    2. file_field_names_validate_types - uses a comma-separated list of file fields in which the file_types_allowed items are applied.
  3. Leave the script defaults as they are without configuration. The default settings are:
    1. Allowed file extensions: .docx, .jpg, .pdf, .jpeg
    2. File field name: attach_document

A copy of the script is attached here: AttachedFileExtensionChecker.jar