HomeUsing LincDoc 3.1+Printer Friendly Version

Using LincDoc 3.1+

Covers LincDoc 3.1, 3.2, 3.3

1. LincDoc Overview

1.1. What is LincDoc?

LincDoc is a comprehensive software system that allows you to collect, merge, and sanitize data in intuitive electronic forms (eForms), replacing your existing paper form system. By moving to electronic forms, your organization can produce professional documents, and many of the errors inherent with paper forms can be eliminated, saving both time and money. Furthermore, you can store these electronic forms in remote repositories, allowing for easier data storage, retrieval, and analysis.

The software provides the following core benefits:

  • Electronic forms to replace paper-based processes
  • Content assembly to produce sophisticated documents
  • Integration with 3rd party databases to search for and pre-populate commonly used form fields
  • Integration with Microsoft Active Directory to utilize existing users and groups
  • Integration with 3rd party document management systems (such as Laserfiche)
  • Integration with Apple iPad, including an "offline" mode for non-network functionality
  • Security mechanisms to limit access to sensitive documents and data
  • Advanced web-based UIs to build workflow functions into business processes
  • Multiple types of electronic signatures
  • Document engines to handle both Microsoft Word and PDF documents

1.2. The Flavors of LincDoc

LincDoc is available in several different flavors, allowing you to customize how many forms you can create, whether or not you can combine forms to more complicated forms, and many other features.

The following flavors are available, and are described in more detail below:

  • On-Premise
  • Cloud
  • Freeform
  • Mobile

For more information on the pricing of each of these flavors, contact the LincWare Sales department at sales@lincware.com.

On-Premise

This flavor of LincDoc is the same as the Cloud version below, except that it is installed and executed in your facility or using computers and servers that your company uses and over which you have complete control. Since local or company-controlled systems are used, there are some component limitations, mostly based on remote access and security. However, you retain complete control over your security and data access.

Pricing for this version of LincDoc is based on pay-once, fixed pricing.

Cloud

This flavor of LincDoc is the same as the On-Premise version above, except that it is installed on a network of cloud servers, which are located off-site and are controlled by LincDoc. For this reason, you will have less control over security and data access, when compared to the On-Premise option. However, you do not have to already have or purchase additional computing resources to implement this option.

The pricing for this version of LincDoc is a monthly fee, based on your level of usage.

Freeform

This flavor of LincDoc offers basic form creation, with no optional components (lookups, signatures, etc.) and a limit of 2000 transactions per month. It is designed for submit-only eForms, such as employment applications. Typically, a simple eForm is created using Freeform, and then submitted to DocuWare or Laserfiche.

No documents or data are stored via Freeform. Instead, all content is stored in DocuWare or Laserfiche upon submission.

Mobile

This flavor emulates your existing version (On-Premise, Cloud, or Freeform), but is designed to run on an Apple iPad, which allows for easy portability and in-the-field information collection.

For more information, see LincDoc Mobile.

1.3. About eForms

An eForm is the most basic type of form. It allows you to create an electronic web-based form, which is composed of a single Microsoft Word or PDF document. The document may contain zero or more field placeholders.

An eForm may also be comprised of field metadata, sections, conditions, actions, signatures, events, form security, and database lookups. 

The number of eForms you can create is directly tied to your software license key.

Note: Contact sales@lincware.com if you need to expand the number of eForms.

1.4. About Document Packages

A Document Package is an expanded set of components, which, building upon the eForm capabilities, allows one or many related Word or PDF source documents to be assembled based on predefined business logic.

Conditional text (such as phrases, paragraphs, or pages) is also possible within any single Word document.

The number of Document Packages you can create is directly tied to your software license key.

Note: Contact sales@lincware.com if you need to expand the number of Document Packages.

1.5. About Client IDs

When an eForm or Document Package is built within LincDoc, all source documents and data are contained within a Client ID. This Client ID is created when your license key is configured within LincDoc. Administrators have access to every source document within the Client ID, and it allows you to group stored documents into groups.

In a simple organization, perhaps it is acceptable to have all forms accessible by everyone with access to LincDoc, or to only need limited administrative control. However, in larger organizations, where hundreds of documents may be used, Client IDs can be used to determine the visibility of forms based on need (known as multitenancy).

For example, you may have a Client ID for Human Resources and a Client ID for Sales, if these two departments rarely share forms. That way, Human Resources doesn't have to sift through piles of Sales forms, and the Sales department doesn't have to deal with any Human Resources forms.

In addition, each Client ID can have separate administrators, allowing you to even assign and limit administrator access within specific departments.

For more information, see Specifying Your Client ID.

1.6. Using Your Existing Infrastructure with LincDoc

LincDoc can connect with your current databases (for data extraction and inclusion within eForms), your current LDAP user directory (for single-sourcing of connection information), and repositories (for connecting with internal Document Management Systems).

Proceed to one of the following topics below for more information:

Using Your Databases with LincDoc

LincDoc allows you to pre-fill fields in eForms and complex Document Packages by pulling data from external database systems such as MySQL, Oracle, PeopleSoft, or even a custom system. Critical and common data, such as employee numbers, part numbers, customer names, or dates populate automatically, which can significantly enhance the efficacy of any eForm creation process. In addition, using an external database to populate your eForms can help you to eliminate duplicate data entry and reduce the need to re-key existing data.

You can connect to up to 20 data sources. Not only can you read data, you can also write data to a staging table in an external database for use in a reporting system or ingestion into a third-party application such as SQL or Oracle.

Note: LincDoc does not write directly to a third-party application database unless otherwise approved and configured by that third-party application vendor.

Using User Directory Integration

You can have LincDoc connect to your existing LDAP v3-compatible directory (such as Microsoft Active Directory). When connected, you can use the same user/group login credentials and security that your organization currently uses to access LincDoc. You won't have to have special username/password combinations for connecting to LincDoc. The same information you use to access your other corporate assets can be used for LincDoc as well.

Connecting to Repositories and File Shares

LincDoc's Connector tool allows you to connect your eForms with your internal Document Management System (DMS) to efficiently integrate captured data via forms and documents.

This tool is ideal if you are already using DocuWare, Laserfiche, Sharepoint, or other Enterprise Content Management (ECM) systems. It also allows you to write documents and data directly to your ECM system, in order to broaden user access to documents.

You can also use it with cloud-based tools such as Box.net and FileShare.

For more information, see Configuring Storage Repositories.

1.7. About Electronic Payments

LincDoc can integrate with the most popular and flexible payment platforms to assist mobile sales teams, in-office eForm transactions, or general online purchases or fee collection processes. This integration allows you to decrease the time required to collect income and payments.

LincDoc can work with the following payment platforms:

  • Amazon
  • Google Checkout
  • PayPal

1.8. About eSignatures

LincDoc is configured to accept (and encourage) real digital signatures for any eForms. You can have finger-based signatures (on an iPad), mouse-based signatures (on a desktop/laptop computer), or Clickwrap electronic signatures (as in PDFs).

Proceed to one of the following topics for more information:

Clickwrap Signatures

Clickwrap signatures are electronic signatures that do not require a digital certificate or signature capture pad.

LincDoc offers a simple method of obtaining electronic evidence of user acceptance to the data entered into a LincDoc eForm. The application's data entry process ensures a level of authentication verifying the identity of the current user.

Once the necessary security information if provided, the data is written to the eForm, and cannot be changed because it is written to an image format or a secured, read-only PDF document.

This signature method is useful if you want an easy way for users to sign-off or approve an eForm, or if you want to keep your eForms simple and you do not need the most secure type of e-signature.

For more information, see Using Clickwrap Signatures.

Authenticated Digital Signatures

You can use this feature to allow a LincDoc user to sign a document based on their Active Directory or LDAP credentials. When enabled, the user is prompted for their Windows password, and LincDoc locks the document with the server-signing certificate using their name as the signer.

This signature method is useful if you perform a large number of internal eForm signings, or if you want to provide a fast way for internal users to sign documents.

For more information, see Using Authenticated Digital Signatures.

Mobile Signatures

When purchased with the Mobile Server Manager, this feature allows you sign PDF documents generated from a mobile device (such as an iPad). When signing, your figure is used as a stylus, creating the signature directly on the device's screen.

You can also use a mouse as a stylus, but you must be using an HTML 5 compliant web browser.

For more information, see Using Mobile Signatures.

Topaz Signature Pads

This feature enables the use of Topaz signature pads within LincDoc. Topaz technology captures a graphic representation of the signature and embeds it in the subject document. This process creates an image and captures biometric data of the signature.

LincDoc captures the Topaz image and its additional biometric data and stores it in the generated PDF document. The biometric data is encrypted along with the document, meaning that there is verifiable proof that the document has been signed.

For more information on supported Topaz pads, see:

www.topazsystems.com/product/index.htm

For pricing information, contact your local LincDoc representative.

For more information on this type of signature, see Using Topaz Signatures.

2. Release Notes

2.1. About Release Notes

This section contains Release Notes and provides an overview of new features and corrected defects for all major and minor LincDoc releases.

Proceed to one of the following topics for more information on the specified version:

2.2. LincDoc 3.3.4 Release Notes

Published on: 1 Feb 2015

This section contains information about the LincDoc 3.3.4 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new features have been added with this release:

Ability to Skip Multi-value Rows in a Generated Table (5073)

When working with multi-row tables, you can now skip a row within the table (via a condition) when the table is generated. This feature is controlled using the Skip row when generating attribute, which is available when the advanced check box is selected.

You should specify this attribute for the first field in a multi-value table. The defined condition is evaluated when the form is generated (the run button is clicked). If the condition is true, the corresponding row is not displayed in the form's table.

Ability to Use Check Boxes in Multi-row Tables (5086)

When creating a multi-row table in a Microsoft Word form, the use of check boxes within the multi-row table is now supported. In previous releases, the check box entry in the Word source document had to end with a pound sign (#) . However, this character is not supported in the check box syntax within Microsoft Word. Now you can end check box entries with an underscore ( _ ) instead of a pound sign (#), which allows the check boxes to function correctly within Word and the corresponding LincDoc form.

Important: This feature is not supported when using LincDoc Mobile (on an iPad).

For more information on creating check boxes in Microsoft Word-based forms, see Creating Check Boxes in Word Source Documents.

For more information on using multi-value fields within tables (and the general usage of the pound sign (#)), see Using Multi-value Fields Inside Tables.

New Action and Function Available for Setting User Information (5120, 5121)

A new action, Set user option, allows you to dynamically configure an option that gathers any desired, arbitrary piece of information (birthday, mother's maiden name, etc.). This information is then permanently stored with the user's profile (it does not expire after the user's current session).

The following settings are available with this action:

  • User option. Specify the name of the information that is being gathered (birthday, favorite color, etc.).
  • Determine how the information is collected. Typically, you will specify a field in your form that is then populated by the user. However, you can also specify a value or select a function, as with all other calculations. For more information, see Calculations.

Once the information is specified using the Set user option action, a new function, UserOption, is used to retrieve the information from the user's profile.

 

Once you select the UserOption function, the following settings become available, as shown above:

  • option. Specify the name of the information as defined in the appropriate Set user option action (the individual action's User option setting). This setting allows the function to locate and use the correct action.
  • default. If the name specified using the option setting (above) is not found, the value defined via this setting is used.

Timeout Settings Now Available for Topaz Signature Pads (5183)

Two new settings, labeled as Signature pad timeout, are available from the client's Configure dialog box. These settings allow you to control the timeouts (in seconds) when using Topaz signature pads.

The first setting (server) is used to specify how long the web application (LincDoc) will wait for a user to launch the signature pad application and sign the form. The countdown starts when the user clicks the sign button on the Signature View, thereby selecting the signature that will be signed. A value of at least 15 seconds more than the client time out (specified in the second setting described below) is recommended.

The second setting (client) is used to specify how long the signature pad application will wait for the user to sign before automatically closing. The countdown starts when the signature pad application launches. A value of at least 15 seconds less than the server time out (specified in the first setting described above) is recommended.

Exported File Name Now Displays Version Number (5328)

In previous versions, when exporting an eForm or Document Package, the resulting .ldar file name ended with four random characters to guarantee that a unique file name was created (and no previously exported files were overwritten). Now, a number is added to the end of the .ldar file name, which represents the version of that file (based on how many times the eForm or Document Package has been saved in LincDoc). For example, if your exported file name ends with 00013, the 13th saved version of that .ldar file was used during the export process.

Ability to Immediately Access the Signature View Following Form Submission (5331)

A new setting, Show sign prompt, has been added to the view document action, which allows form users to proceed directly to a form's Signature View when the form is submitted.

When this setting is selected (checked), after the Submit button is clicked, the Signature View is immediately displayed (and  the Document Viewer is bypassed). When this setting is not selected (the default value), the Document Viewer first displays the form, and form users must click the sign button to open the Signature View.

Automatic Versioning Supported with DocuWare (5496)

In previous versions of LincDoc, DocuWare-based versioning, as provided by DocuWare file cabinets, was not supported. Now, automatic versioning is supported when LincDoc forms are sent to Docuware for storage. The following cabinets support this versioning feature: Document, Launcher, and Uploaded

Important: The Data file cabinet does not support DocuWare versioning.

Ability to Add Text to Signature Pad Dialog Box (5705, 5706)

When using On-screen Canvas signatures (also known as "mouse signatures"), you can now specify text that will appear at the top of the Signature Pad dialog box, as highlighted below.

This text is defined using the new setting Signature blurb (HTML format) setting, which appears on the eForm / Document Package tab of the Admin dialog box.

You must specify HTML text when using this setting (plain text cannot be used), and the HTML text must adhere to the following guidelines:

LincDoc will determine the validity of the HTML text when you save your form. If the text is not valid, an error message appears informing you of the issue.

Ability to Select a Subset of Lookup Results (5808)

When using a lookup action in previous versions of LincDoc, your form had to use either all of the results returned by the lookup or a single, selected result. To expand this functionality, you can now select a subset of a lookups returned results using the new Prompt to Select Some option available from the On multiple results setting. This option and its corresponding setting are available on the action's configuration dialog box, as shown below.

Note: This setting only applies when using a multi-row lookup (where multiple results are returned by the lookup). 

Once this option is selected, a screen appears allowing you to specify which lookup results will be used by your form.

For example, if your lookup returns a dozen results, but you can only put two into your form, you can use this feature to select which two items are used.

For more information on configuring lookups, including using the other available On multiple results options, see Configuring a Lookup Action.

Security Configuration Now Available for DocuWare Repositories (5813)

When configuring a DocuWare repository, a Security Config button is now available, which provides access to security configuration settings that were previously unavailable for DocuWare repositories.

Note: This dialog box is accessed by clicking the configuration (wrench) button that corresponds to the repository on the Admin dialog box's Repositories tab.

When this button is clicked, the Role Security Config dialog box appears, allowing you to specify various security settings.

For more information on configuring DocuWare security settings, click here.

Microsoft Access Database Connections Now Supported (5847)

You can now use Microsoft Access databases when create connections to external databases for lookups.

For more information on setting up a connection to a Microsoft Access database, contact LincDoc Technical Support.

LincDoc Connector for Laserfiche Installation Enhancements (5860)

The LincDoc Connector for Laserfiche, which is a Java-based Windows service that allows LincDoc to write documents and data to external Laserfiche systems, has been updated to use a newer version of Java. This new Java version provides for enhanced connection security between the two applications.

For more information on this connector and how it is installed, see LincDoc Connector for Laserfiche: Installing and Configuring.

Search indexes, defined on the Admin dialog box's Search tab (in the current search indexes list), were not being correctly displayed in LincDoc Mobile. Although the indexes were present, their order was arbitrary, and did not match the order defined in LincDoc. Now, the order of the indexes is consistent between the two versions of LincDoc (standard and mobile).

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

5309

When a folder is auto-created based on the token-based file name, the new folder now has the same owner as its parent.

5329 

Form validation message does not show field data.

5427

Groovy scripts run multiple times add to Perm Gen space.

5434 

Search fails for null values.

5745 

DeleteData does not include schema name.

5751 

Signature Receipt signature line does not stretch to cover the signature.

5796 

Docuware: Invalid Content Length.

5835 

Doc viewer image (PNG) mode does not display after signing.

5836 

Docuware: Retrieve not working, especially not with attachments.

5839 

Error appears if using a calculated label with a DRAT expression (and at least one other field has a default calculation). 

5859 

Connector test button from launcher-config.exe throws SSLPeerUnverifiedException with valid SSL certificate.

5861 

Docuware: Fix possible errors (null pointers).

5863 

Export to CSV: created-by, modified-by was a user name in version 3.0. It is now a uid.

5870 

Saving to Laserfiche fails with default file name.

5871 

Error using HTML edit link from Laserfiche 9.0 when a mapped template field is an integer field.

5873 

Left, Right should return values when string is too short.

5894 

An error ("No enum constant com.lincdoc.repo.security.ROperation") appears when attempting to edit repository security configuration.

5161

Long alert messages are truncated.

5287

Search: Out of range calendar inputs crashes application.

2.3. LincDoc 3.3.3 Release Notes

Published on: 16 Dec 2014

This section contains information about the LincDoc 3.3.3 release. This release contains both new features and corrected defects from previous releases.

New Features

The following new features have been added with this release:

New Setting to Control the Display of Check Boxes in a Checkbox Group (5)

In previous releases, check boxes in a checkbox group could only be displayed in a single column. It many check boxes were present in the group, the column could get very long. Now, you can use the Checkbox columns attribute to display the check boxes across multiple columns. In addition, you can control the arrangement of the check boxes using the left-to-right attribute, which appears immediately below the Checkbox columns setting. When this attribute is selected (checked), check boxes are listed in order from left to right across each column and then continue on the following row. When this attribute is not selected (cleared), the check boxes are listed in order from top to bottom, with each column being populated before the next column is used.

For more information, see Using Check Boxes.

Number of Allowed Search Indexes Increased (5040)

In previous versions of LincDoc, only five search indexes could be added to the current search indexes list on the Admin dialog box's Search tab. Now, the number of possible search indexes has been doubled, and you can add up to ten indexes.

For more information on adding search indexes, see Defining Searchable Fields.

Ability to Use Conditions to Control the Visibility of Multi-row Table Add/Remove Buttons (5042)

You can now use conditions to control the visibility of the add (+) and remove (-) buttons that appear when using a multi-row table in a form. In previous versions, these buttons were always visible. These buttons, as they appear on a form, are shown below.

The Show add button and Show remove button settings on the Fields/Sections tab of the Admin dialog box are used to specify these display conditions.

Note: These buttons are only present when a multi-value field is selected on the Admin dialog box and the advanced check box is selected.

For more information on defining conditions, see Creating and Editing Custom Conditions.

Ability to Hide a Form Section's Caption or Border (5044, 5051)

You can now control the appearance of the name (caption) and border used by sections. Both can be displayed or hidden, independently of each other, using the Show Section Caption and Show Section Border attributes that appear on the Fields/Sections tab when a section is selected.

For more information, see Using Sections.

New Search Filter Condition Option (EqualNoCase) Available (5047)

A new EqualNoCase option is now available when specifying search options accessed via the Search button.

This option allows you to perform a search similar to the Equal option, but where the case of the items is not taken into account (search is case-insensitive).

For more information, see Specifying Search Filter Settings.

Ability to Execute Custom Scripts with Actions or Functions

You can now execute custom Groovy scripts with both actions and functions. An example of when these custom scripts would be useful is the case where a complex calculation needs to be performed, but it cannot be adequately defined using the LincDoc calculation options.

After you create a custom script, it is uploaded using the action and function tabs on the Scripts dialog box (which is accessed via the system / scripts option).

Scripts uploaded to the action tab are available for use with actions, while scripts uploaded to the function tab are available for use with functions. You can also upload the same script to each tab, if desired.

Once uploaded to LincDoc, you can use the custom scripts as described below (based on how the script is being used):

  • Actions: Use the new run script action to specify custom scripts that will be executed with buttons or events (as defined on the Admin dialog box's Actions tab).
    Once a custom script is uploaded to LincDoc, it can be run like any other DANG action. In the following example, a script (called my_script) has been selected.
  • Functions: Specify a function's value as Script, as shown below, and then specify the custom script's name (using the id option). The script's name was defined when it was uploaded via the Scripts dialog box. In the following example, a script called my_script is being used.

For additional information on using scripts, including using the mail-pickup tab on the Scripts dialog box, contact LincDoc Technical Support.

Ability to Execute Custom Scripts on a Defined Schedule (5072)

You can now run a custom script (written in the Groovy scripting language) based on a custom schedule. These scripts are uploaded and configured using the scheduled tab on the Scripts dialog box (accessed via the system / scripts option).

Details regarding this feature will be added at a future date. In the meantime, contact LincDoc Technical Support for more information.

Field Help Dialog Box Always Uses Short Label Setting for Creating Title (5099)

When creating field help, the Short label setting is now always used, by default, to create the title of the dialog box that appears when the field help is accessed. If the Short label setting has not been defined, the Label setting is used.

For more information on field help, see Using the Advanced Options.

New Function - ToBoolean (5124)

A new function, ToBoolean, has been added that allows you to convert a string to a Boolean value, if the string matches any of the configured options (if one or more entered values are considered true). This function is useful for converting a yes/no codelist to a Boolean value for a check box or condition.

For example, if your form is designed to automatically select the Red check box if the user's firstName is Bill or Sue.

The DANG calculation for this would appear as follows.

New Function - AnyRowsMatch (5125)

A new function, AnyRowsMatch, allows you to use a condition to determine if any rows in a multi-value table match a configured condition.

 

The function itself uses two parameters:

  • group with field. Select any field in the multi-value table to specify which table will be evaluated by the function.
  • where. Specify the condition that will be evaluated by the function.

The function evaluates each row in the specified table. If the defined condition is true for any row, a value of true is returned. If the defined condition is not true for any rows, a value of false is returned.

New Function - NumberOfRowsMatch (5126)

A new function, NumberOfRowsMatch, allows you to use a condition to determine the number of rows in a multi-value table that match a configured condition.

The function itself uses two parameters:

  • group with field. Select any field in the multi-value table to specify which table will be evaluated by the function.
  • where. Specify the condition that will be evaluated by the function.

The function evaluates each row in the specified table and determines the total number of rows that match the defined condition.

Size of the Required Field Indicator Has Been Increased (5149)

The size of the dots that represent required fields, whether already populated (green) or still needing to be populated (red), has been increased. Both colors are shown below.

New Signature Type Available for Creating Simple Signatures (5175)

A new signature type (Checkbox) is available, which provides a basic, check box-based signature method.

Note: A Signature module is required to use this feature. For more information on this module and how to obtain it, if necessary, contact LincDoc Technical Support.

When this signature type is used, a simplified signature interface appears, as shown below.

 

The form is signed by simply selecting the I agree to terms and conditions check box and clicking the Sign button.

For more information on using signatures, see Signatures.

Increased Control of Signing Options with Multiple Signatures (5180)

You now have greater control over the type of sign buttons that are displayed on your forms when multiple signatures are available. You can choose to allow only bulk signing, only individual field signing, or both bulk signing and individual field signing. This option is controlled using the Bulk sign drop-down list on the eForm or Document Package tab of the Admin dialog box.

 

Note: A Signature module is required to use this feature. For more information on this module and how to obtain it, if necessary, contact LincDoc Technical Support.

The following options are available from the Bulk sign drop-down list:

  • Enable individual field and bulk signing. When this option is selected, both the sign all and individual sign buttons are available, giving the user the ability to sign all of the fields or only specific fields.
  • Enable bulk signing only. When this option is selected, a single sign button appears and is automatically applied to all signature fields. Sign buttons for specific fields are not available.
  • Enable individual field signing only. When this option is selected, only individual field sign buttons are present. A sign button that applies to all signature fields is not available.

For more information on using signatures, see Signatures.

Ability to Control Executing Groovy Scripts (5181)

Superusers can now use web services to list and interrupt executing Groovy scripts. For more information on using this new feature, contact LincDoc Technical Support.

New Functions for Determining Form Field Changes (5245, 5246, 5247)

Three new functions have been added allow you to determine if changes have been made to fields in your form.

An example of when these functions would be useful is the case where you only want a Save button to appear if a form field has been altered.

The following functions are now available:

  • IsFieldChanged. Determines if specific form fields (defined using the field option) have been altered during a session.
  • IsFieldInSectionChanged. Determines if fields in a specific form section (defined using the field in section option) have been altered during a session.

    In addition, when using this function, you can click the non-calculated only check box to exclude any calculated fields from being scanned by the function. If you want the function to check all of the fields in your form, regardless of how they are populated, you should clear (uncheck) this option.
  • IsAnyFieldChanged. Determines if any form field in the entire form has been altered during a session.
     
    When using this function, you can click the non-calculated only check box to exclude any calculated fields from being scanned by the function. If you want the function to check all of the fields in your form, regardless of how they are populated, you should clear (uncheck) this option.

New Action to Show Signature Receipts (5262)

A new action, show signature receipt, is now available which allows you to create, view, and download signature receipts. Signature receipts, as shown below, display the actual signature used on your form, information about the signature (such as the name of the user who signed and the date/time), and provide buttons for downloading the corresponding signed form or just the receipt information to a file.

Note: A Signature module is required to use this feature. For more information on this module and how to obtain it, if necessary, contact LincDoc Technical Support.

When being defined, the action must be added to a signing event. In the example below, the action is executed after the form is signed (the After signing event). 

Once added, you can access the action's settings (via the edit option).

The following configuration settings are available:

  • Title. Specify the title of the dialog box that appears showing the receipt and related options.
  • Statement. Specify any text that will appear at the top of the signature receipt dialog box. For example, you can provide basic instructions on how to use the receipt (as shown in the example above).
  • Fields check box. When selected (checked), the name of the form field that was signed by the displayed signature is shown above the signature itself.
  • Logo. Specify an optional image (via the select button) that will appear to the right of the signature on the receipt dialog box. Once the logo image is added, a link containing the logo's name appears on the show signature receipt dialog box.
  • Download document button label. Specify text that will appear adjacent to the button that is used to download the signed PDF.
  • Receipt download button label. Specify text that will appear adjacent to the button that is used to download only the signature receipt.
  • Close button label. Specify text that will appear adjacent to the button that is used to close the signature receipt dialog box.
  • Post event. Specify the event ID that will be executed after the signature receipt dialog box is closed. This option is for advanced users only. For more details, contact LincDoc Technical Support.

New Security Role for Controlling Access to the LincDoc Toolbar (5332)

A new security role, desktop, has been added. It is used to control access to the LincDoc toolbar, including the Form Selection drop-down list, the run button, and the admin button.

For more information on using security roles, see Managing Security Roles.

Custom Images Available on Buttons (5338)

You can now use custom icons on your form buttons. In the following example, the custom image has been highlighted. The images used for custom icons must be saved in your resources repository.

Custom images are added to buttons using the Edit button dialog box.

  1. Create a folder called icons in your resources repository.
  2. Upload the image you want to use to the new icons folder. It is recommended that you use an image that is approximately 16 pixels wide by 16 pixels high (16 x 16).
  3. Open the Edit button dialog box for the button that will use the custom image.
  4. Click the arrow button adjacent to the Button image setting.
  5. Select the image you want to use. The image now appears on the sample button displayed adjacent to the Button image setting.

    Note: You can also click the upload image option from the menu, to dynamically add a new custom button to your repository and immediately use it for your button image. The upload image option only appears if you have added the icons folder to the resources repository.

  6. Save your changes and close the Edit button dialog box.
  7. Save your form.

The custom image will now appear on the specified button when your form is executed.

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

Use calculated field label in the window asking which signature fields to sign.

5028

Hide PDF viewer in the document viewer if a message is displayed, preventing Adobe Reader from covering the message box and rendering the page unusable. 

5029

Fix upload button in Internet Explorer 11.

5032

Fix error when locking multi-row fields.

5033

Improved error messages for optimistic locking.

5034

Do now allow configuring a document package to save to the "resources" repository.

5035

Prevent configuration of two different database repositories in the same client that would write to the same tables in the same database.

5043

Fix messagebox rendering in Internet Explorer 11. Some text was cut off on the right side.

5045

Hide "edit copy" option from search menu if it is disabled in the document package configuration.

5046

Filter tab is shown by default in Search screen (instead of Options tab).

5048

Fix loading of fields for search filters - sometimes they do not initially appear.

5049

Fix saving dates in database repository. Time zone discrepancies sometimes caused them to be off by a day.

5077

Execute Groovy scripts such that document package models are available.

5091

Email address validation did not allow many valid addresses. It now allows any valid email address.

5097

Do not render newlines in dynamic section header text as line breaks on the form. Use "<br/>" in the section header text to get a line break on the form.

5098

Do not show error for invalid field with constraint (for example: ssn, phone, email) if the value is blank and the field is not required.

5127

Do not prompt to save changes to repository configuration for a document package if no changes were made.

5128

Fix errors with the Trash folder in the repository browser.

5129

Improved referencing a field in the current row in complex situations where there may be references to multiple tables.

5130

Synchronize the check box to enable using a condition for a lookup/codelist with opening and closing the group box that shows the condition.

5140

If a data entry header image is missing, do not show an error when running the form.

5141

On import, show an error if the document package references a file from a repository and the file is not present. (for example: data entry header images).

5159

Removed undocumented feature to parse arguments from an email subject. The whole subject is available to the script anyway.

5178

Sort conditions by name in rules and buttons condition dropdown list.

5207

Add option to not store records in ld_doc and ld_doc_id_rid_map tables.

5211

Support label calculations on checkbox items.

5240

Fix some entries in the DANG function list so they sort alphabetically.

5244

Codelist typeahead is now case insensitive.

5314

Improve signature receipt consistency.

5315

Make codelist value changes immediately available through the FormDataProvider.

5356

Avoid truncation of the left edge of generated signature image with some fonts.

5384

Drop-down arrow for a codelist is sometimes unresponsive.

5403

Fix updating required indicator on checkbox groups with min/max selectable using calculations.

5407

IsFieldChanged function now works for upload fields.

5409

Fix error where signatures were lost when editing from the document viewer.

5703

Fix broken URL redirect happening certain conditions at logout.

5743

Readonly fields should have gray background.

5807

When no lookup results returned, iPad form freezes.

2.4. LincDoc Mobile 3.3.2 Release Notes

Published on: 18 July 2013

This section contains information about the LincDoc Mobile 3.3.2 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new feature has been added with this release.

Internationalization - French (5528)

LincDoc Mobile has been updated to support French labels.

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

5250

Editing a document in LincDoc Mobile sometimes caused the application to crash.

5691

During document signing, when fields with alerts were present in the eForm or Document Package, the application could crash.

5733

Updated process for previewing PDF documents to avoid an intermittent crash.

5742

Improved the file attachment naming convention when emailing documents from LincDoc Mobile.

5744

Fixed a calculation issue in the TimeFromDateTime function.

2.5. LincDoc 3.3.2 Release Notes

Published on: 5 Feb 2014

This section contains information about the LincDoc 3.3.2 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new features have been added with this release:

Ability to Require Users to Agree to Terms When Signing a Form (3)

A new plug-in is available that provides access to a special signature type. When implemented, this signature type forces a user to select a check box in order to agree to specific terms during the signing process.

For more information on using this signature type and the associated plug-in, contact LincDoc Technical Support

Ability to Easily View and Adjust Which Signature Locks a Field (6)

You can now see (and alter) which signature field, if any, will lock a selected file using the Locking signature fields setting.

Important: You must click the advanced check box on the Fields/Sections tab to see this setting.

When you click the setting's arrow button, the signature field that will lock the field is displayed in the Signature fields locking dialog box. In addition, you can use the corresponding check boxes to adjust the signature field used by the field.

New Fields No Longer Automatically Locked by Existing Signature Fields (7)

When adding new fields to an eForm or Document Package, the new fields were automatically set to be locked by existing signature fields. Now, these new fields are not automatically locked.

Scripts to Migrate Users from One System to Another (5087, 5088)

A new script utility has been added to assist in exporting and importing users from one system to another. The script generates a map of old user IDs (UIDs) to new UIDs. The UID map is then used when importing repository data from the old system into the new system.

The generated repository import script can use this data to map UIDs when importing into the new system after the users have been migrated.

New Multi-value Loop Action (5134)

The new Multi-value Loop action allows you to execute  a multi-value group's child actions for each row in a multi-value table.

For more information, see Action Details: Multi-value Loop.

PDFs Flattened Before Being Sent to LincDoc Mobile (5090)

PDFs are now flattened prior to being sent to the LincDoc mobile app, in order to guarantee a high-quality appearance for PDFs on a mobile device.

This feature is transparent to the user, and is automatically implemented by the LincDoc server.

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

If a section is to be hidden when the form is loaded, it should not be shown for a brief period of time before the condition to display calculations are evaluated. 

2

In field attribute screen for signature fields, the fields in the "Fields to lock" list were not alphabetical. 

8

Load Document Package action didn't work with "After signing" and "After declining" events. 

5001

If a URL has authentication information, the current user should be logged out.

5002

Logout action now configurable to either redirect to the login page or a configured URL.

5009

If user has read access to a file but not access to read the data, show the file instead of an error. 

5010

Use authentication information in URL even if there is a guest session. 

5041

Repository import now retains document owner, creator, create date, last modifier, and last modified date. 

5052

Fixed typo in admin interface. 

5053

Support for Laserfiche 9.1. 

5054

Fixed hidden parameters, which were broken by a library upgrade. 

5076

Fix bug where error message dialog box shown during form load is not clickable, which rendered the whole page unusable. 

5107

Web service for iPad application returns the document name after inserting a document so the iPad app can display it. 

5109

Fixed bug where lookup select prompt launched during form load was hidden. 

5110

ClientXML repository namespace change.

5112

Fix current row tracking in Row Match Value function that disrupted the tracking, causing various other things dependent on the current row to not work correctly.. 

5123

Update signature pad signing application for recent changes to Java and Internet Explorer 11. 

5136

Multiple Run Document Package actions can now be used in the same event.

5138

Fix displaying lookup select result window. (Issue not in any released versions).

5143

Required indicator on upload field does not turn green when form has been uploaded.

5156

Data Entry Header image file uses the first version.

5165

Downloading from via the OpenForm view in Internet Explorer does not work.

5167

SQL repository does not retrieve attachments when fields save as XML.

2.6. LincDoc 3.3 Release Notes

Published on: 5 Feb 2014

This section contains information about the LincDoc 3.3 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new features have been added with this release:

New Mobile App

The LincDoc mobile app (also known as LincDoc Mobile) has been completely redesigned. For complete details, including how to use all of the app's features, see LincDoc Mobile.

A few of the app's new features are described below.

Support for iOS 7

The LincDoc Mobile app now runs on the iOS 7 mobile operating system.

Improved Signature Interface

The method of signing forms with a mobile device has been updated for ease-of-use. For more information, see Signing an Individual Form/Document

Optimistic Document Locking (3115)

When a document is downloaded to your mobile device, and a change is made to the version on the LincDoc server, the document will not be able to by synced back to the LincDoc server. This feature prevents conflicting changes from existing on your LincDoc server. 

For more information, see Preventing Multiple, Simultaneous Document Changes.

New SQL Repository (3690)

The SQL Repository is a new backend storage engine that has been added for LincDoc 3.3. It provides an interface that allows administrators to quickly and easily map LincDoc fields to database tables. Currently, PostgreSQL and Microsoft SQL Server are supported, with other databases to be added in the future.

Note: PostgreSQL is shipped with the LincDoc VM (virtual machine).

In addition to eForm and Document Package data, all generated documents are also stored in the specified database.

This new storage system facilitates the following advanced features:

  • Supports writing reports against form data using any standard report writing tool (by default, Jasper reports are supported).
  • Allows fine-tuning of the tables and table columns that are used in terms of table/field naming conventions, data types that are used, indexes, security constraints (through SQL "grant" statements), etc.
  • Allows the administrator to create custom data retention logic (for example, removing any documents and corresponding data that is older than 6 months).
  • Gives the administrator the ability to write business logic in the form of database triggers, functions, and stored procedures.
  • Provides a single entity for backup purposes, with all critical documents and data being stored in a single database.
  • Enhances security by allowing the administrator to place the data on a separate server inside a separate security zone. Therefore, no sensitive data is ever stored in the LincDoc VM itself.
  • Allows the administrator to apply his/her own backup policies and/or backup software agents.

For more information on using this feature, see Configuring Storage Repositories.

Improved Browse Interface

The Browse interface (Browse dialog box) has been improved, with many new options and features.

The following new features are described below:

For complete details on using this interface, see Files and Folder - Browsing and Security.

Easy Access to Your Document Repository (3020)

The Browse dialog box has been improved to allow access to various options for the files saved in your SQL repository.

This interface is accessed using the browse button on the main LincDoc toolbar.

Some of the individual new features are described in the sections below.

Using Document-Level (Node-Level) Security (1993)

You can now configure document-specific (or folder/subfolder-specific) security using the security button.

 

For more information, see Specifying Document-level and Folder-level Security.

Selecting Multiple Files (2681)

When using the Browse dialog box, you can now select multiple files, folders, or subfolders at the same time using the items check boxes.

For more information, see Selecting a File, Folder, or Subfolder.

Viewing a File's Version History (3370, 3494)

You can now view a list of all previous versions of a file using the history button on the Browse dialog box.

Once a file is selected, clicking the history button displays the file's version history.

For more information, see Viewing a File's History.

Moving Documents (3438)

You can move documents in your directory structure by simply dragging and dropping it in the new location within the Browse dialog box.

For more information, see Moving Files or Folders.

Renaming Documents (3438)

You can rename existing documents using the Browse dialog box.

To rename a file, select the file using the corresponding check box, and then click the rename button.

For more information, see Renaming a File or Folder.

Recovering Deleted Files (3495)

When a file is deleted, instead of being immediately removed, it is first added to a Trash folder. This folder can then be emptied at a later time (similar to the Windows Recycle Bin).

 

For more information, see Working with Items in the Trash Folder.

You can easily access the links (hyperlinks) related to a file via the link button on the Browse dialog box.

For more information, see Working with File Links.

New User Registration Action (3429, 3430, 3432, 3530)

A new action is available that allows you to register new users into the LincDoc system.

Note: This action only works for an internal security provider. It does not work with the Active Directory / LDAP security provider.

Once the action is added, the register a user dialog box allows you to edit the action's settings.

The following settings are available:

  • Provider. The authentication provider that will be used to create any new accounts. For more information on providers, see Using Authentication Providers.
  • Username field. Specify the field on your form that will contain the new user's username (login name).
  • User full name field. Specify the field on your form that will contain the new user's full name (display name).
  • E-mail field. Specify the field on your form that will contain the new user's email address.
  • Add to group. The group into which new users will be added. Groups will most likely differ based on the provider you select. For more information on groups, see Managing Groups.
  • Existing user UID field. If the user that is currently being registered already exists, then the existing UID of that user is pushed into the field specified by this setting.
  • New user UID field. The UID that is created for this new user is pushed into the field specified by this setting.
  • Expire new user link. Allows you to specify when the link sent to new users will become invalid. You can active this option using the corresponding check box, and then specify the amount of time before the link becomes invalid.
  • New user email. Use the settings in this area to specify the subject and message that appears after a new user enters the necessary credentials and creates an account. You can click the html check box to specify that the message be sent in HTML. You can use DRAT expressions in these email messages.
  • Existing user email. Use the settings in this area to specify the subject and message that appears if an existing user chooses to access LincDoc with their existing account, instead of creating a new account. You can click the html check box to specify that the message be sent in HTML. A link is provided on the registration page, allowing an existing user to enter a username and password. You can use DRAT expressions in these email messages.

This action is similar to the user registration option available from the system button. The difference is that the option available from the system button allows you to make publishable URLs for distribution, and any recipient can open up the URL to self register. LincDoc prompts the users for all of their registration details. The new action allows you to make a form that can execute this registration process at any point in the form's lifecycle by attaching the action to any button or event that is executed.

Two New Field-Level Events for Multi-value Tables (3480)

Two new field-level events have been added.

  • After multivalue row add. This event occurs when a new multi-value row is added to a table (via the + button).
  • Before row remove. This event occurs immediately before a multi-value row is removed (when the - button is clicked).

For more information, see Using Event Actions

Additional Data Imported from PDF Files (3537)

The following information is now transferred from an imported PDF source document to LincDoc (based on the PDF's field settings as seen when editing the PDF in Adobe Acrobat or other PDF editor):

  • If the PDF field contains a tooltip, this information is copied into the Long Label field attribute.
  • If the PDF field uses multiple lines, the Field type setting is set to textarea, and the Multiline setting is given the corresponding number of lines. 
  • If the PDF field is read-only, the Read only condition is set to Always.
  • If the PDF is configured in Adobe Acrobat (or another PDF editor) with the requirement that it be non-blank, the Required condition is set to Always.
  • If the PDF field has a default value, the Default calculation is set to that value.
  • If the PDF field is set to invisible, the Condition to display condition to set to Never.
  • If the PDF field has a specified maximum length, the Max. length setting is adjusted to match.

New Action for Creating a Row in a Multi-value Table (3578)

You can now add a row to an existing multi-value table using the Add Multi-value Row action.

Updated Argument Limit for Max and Min Functions (3581)

The Max and Min functions can now use an arbitrary number of arguments (1, 2, 8, 22, etc.), depending on the needs of your form.

New Color Scheme for Multi-value Tables (3595)

When viewing and using multi-value tables in the Data Entry View, the colors used by the individual rows has been changed, as shown below.

Signing Multiple Documents with One Signature (Batch Signing)

You can now sign more than one document with a single signature. This feature is available with both standard (web-based) application and in LincDoc Mobile.

For more information, see Using Batch Signing.

New Signature Information Dialog Box (3611)

A new dialog box can be added to show signature information. This dialog box can be accessed from the following areas:

The following example shows the button used to access the new feature in the Document Viewer.

An example of a Signature Info dialog box is shown below.

This dialog box displays the name of the signer, the date of the signature, the signer's system information, an image of the signature, and individual document details.

For more information, see Viewing Signature Details (Signature Log).

Import Global Fields from Document Package (3618)

The new import from Document Package button on the Global Fields dialog box (accessed using the global fields option via the admin button), allows you to copy fields from an existing Document Package or eForm and add them to the current form.

When clicked, you can select the desired Document Package or eForm and the individual fields to import.

New Copy Condition Option (3648)

You can now copy an existing condition using the condition's arrow button. The menu that appears when this button is clicked displays a copy condition option.

Sort Condition List in Alphabetical Order by Name (Ascending) (3661)

Listed conditions (in any condition drop-down list) are now sorted alphabetically (A-Z ascending, case ignored), with numbered conditions coming before lettered conditions. However, the Always and Never options are always at the top of the list, with the remaining conditions listed below those two options.

New Formatting Option for Number-to-String Functions (3663)

The DecimalToString and IntToString DANG functions now have an additional option available that allows you to format the string created by the function.

For more information on the allowed formats, click here.

Reorganization of Reports Options (3674)

The Reporting feature's options have been slightly redesigned and reorganized.

From the system button, the reports option allows you to access the Reports dialog box. This dialog box allows you to both view and edit existing reports as well as create new reports.

On the main LincDoc toolbar, the Report button opens the Run Reports dialog box, which allows you to run reports created via the Reports dialog box (described above).

For more information, see Generating Reports.

Search Results Now Show Attachments (3675)

The Search dialog box now shows document attachments directly in the returned list of matching documents.

 

Ability to View Uploaded Document (3676)

You can now download and view a file that has been uploaded to a form (via an upload field on the Data Entry view). The feature allows you to view files that may have been uploaded by other users.

You can now search for forms using date and time periods.

Firefox and Chrome Browsers Now Use Built-in PDF Viewers in the Document Viewer (3703)

When viewing a PDF in the Document Viewer, Chrome and Firefox now use their internal PDF viewers. These viewers are included with the browsers themselves.

Codelists Now Populate When a Partial Entry Matches a Selection (3784)

When working with codelists, typing a partial entry will now automatically populate the corresponding field with a full result, if a match is found.

In the following example, when Marr is typed, the matching entry (Married) is automatically selected.

DANG Dialog Box Can Now Be Expanded (3846)

The DANG rule wizard dialog box will now resize correctly if made larger than its original size (the size used when it first opens).

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

2062

Check boxes would sometimes appear twice.

2258

Two character, unique document identifier generates validation error.

2751

Two datetime datatype options while creating calculation variable.

2998

Better messages for user/group search.

3360

Signature field: Peer not authenticated upon signature.

3487

When loading a codelist fails, error message did not indicate the affected field.

3488

FieldCodeListConfig does not check for a null return value.

3502

Word generation calculation referencing repeat table uses wrong index.

3515

Import CSV to database - reserved words removed.

3520

The Today function returned bad results.

3546

Browse: window resizes back to default size on select.

3553

Message boxes: Missing consistency with "X" close button.

3554

Inconsistencies with the system / client login provider option.

3555

When adding a new event, text inconsistencies exist.

3559

Sign prompt appears behind Document Viewer when using sign button on Browse dialog box.

3560

Source Document: Improperly named check box returns String out of index.

3561

Amazon: Warning: Unable to validate the transaction signature with Amazon.

3564

Offline setting executing without being selected.

3570

Dragging a section onto itself causes "-1" error.

3601

About LincDoc: Version text box is cut off.

3603

Users and groups: Error when clicking on another user name.

3609

Document Package "Unsaved Changes" message moved to the title bar.

3614

Adjusting column sizes in Browse dialog box in Internet Explorer 10 hides all columns.

3616

Amazon: Typo in credit card action configuration screen.

3647

When importing a file, a "null" error appeared.

3654

Multi-value fields were not able to filter codelist lookups.

3655

CSV or XML export causes output format document to be generated.

3659

Newly created section moved to end of fields.

3666

Improved wording in the calculation wizard.

3669

Retain field order when moving several fields to another section.

3672

Available search fields remains hidden in columns.

3678

New folders, which are created after a refresh action is performed, are not listed on the Browse dialog box or when editing an eForm.

3686

Edit/view/sign action save error.

3700

Display message when repository configuration is updated.

3701

Clicking the Upload button in the Browse dialog box's upload dialog box closes the interface.

3705

eForms cannot be saved - a "client ID missing in context" message appears.

3716

Unable to add new types from the Browse dialog box.

3718

Postgres JDBC Repository engine retrieves all datetime values as date only.

3719

JDBC repository does not remove fields from the repository mapping.

3720

Unmapped alert (!) shown even after the tables columns are mapped.

3721

Typo in Execute DDL prompt.

3722

DDL can be executed without selecting it.

3723

In multiple mappings, two fields are added at a time.

3724

Search icon for on Fields/Sections tab are not shown correctly.

3726

Cannot convert field from multi-value to non-multi-value.

3727

Removing privileges for a security policy record does not get saved.

3728

Improved wording of "node exists" error message.

3729

Zip field constraint improvement.

3731

Support timeout warning in Open mode.

3736

Error in login window in latest 3.3 release.

3737

Disabled "Show edit UI" privilege allows edit copy in browser history dialog box.

3739

Enabled "Read" privilege from Folder Security allows user to access the "Security".

3740

New column does not show in table, but is present in Multiple Mapping key field.

3743

LWSA: Cannot have same host name when there is more than one app context.

3744

Error message inconsistency while creating a Doc Package with description more than 100 characters.

3746

Browse: Moving files to another location causes "Already exists" error.

3749

Error when generating a document with no documents.

3753

After renaming, Browse file icon changes on refresh.

3756

Disabled condition row button in global fields.

3758

Error in label Calculation.

3765

DocuWare:  Clear (delete) attached files if cleared in form.

3766

Problem setting up field level lookup.

3772

Edit Document alert in retrieving documents through Browse and Search dialog boxes.

3773

User-requested password reset emails users that have been deleted.

3777

JDBC Repository - testing for valid system table names.

3779

Incorrect error message in Laserfiche mapping.

3781

Alignment issue in Lookup configuration.

3782

Inability to scroll through lists: repositories, providers, and databases.

3785

Canceling the Edit Condition unselects the condition from the list.

3786

Browse: Menu bar options for a file is not refreshed after rename and edit copy options are used.

3787

Browse: Link in menu bar should be disabled if more than one files is selected.

3789

Auto-mapped fields disappear from table when a mapping row is added.

3790

Removing mapped field from a table unmaps the field, but is draggable to map.

3792

Save prompt appearing twice after adding provider.

3793

JDBC advanced lookup error unclear when field names do not match.

3794

Inconsistency in Remove Action when Read access is denied.

3795

Access denied in inheriting policy from parent.

3797

Signature Info window requires REPORT_ADMIN role. It shouldn't.

3798

Select all in Browse does not work after sorting.

3799

Error in closing the delete file prompt in Browse dialog box.

3811

Browse dialog box left-hand contents disappear when adding or deleting a folder.

3812

Browse: Selecting default database gives visual access to all client ids.

3815

Correctly handle check boxes where the states are switched.

3821

Class cast exception on server batch signing.

3831

For an On Login Event event, message displayed on a page of white space.

3832

Edit/view/sign action subsequent close action does not close original window.

3836

Browse: Token not functioning correctly.

3837

Search filter option "Filename" gives error.

3842

Docuware: Cannot run form from launcher.

3843

Docuware: Can not update form from launcher.

3844

Multiple files cannot be moved to target folder in Browse dialog box.

3847

Form admin: editing a form causes an error.

3850

Browse: Token created via browse folder securities does not work.

3853

Error when changing field type from Text to Upload.

2.7. LincDoc 3.2.8 Release Notes

Published on: 15 Nov 2013

This section contains information about the LincDoc 3.2.8 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new features have been added with this release:

New Codelist-specific Functions (3673)

Two functions have been added to LincDoc: CodeListLabel and CodeListDescription.

These functions allow you to use standard function calculations to create label and/or descriptions for codelist-type fields.

For more information on using functions and calculations, see DANG Rule Wizard.  

LincDoc Mobile Server Version Verification (3867)

The communication between mobile devices and the corresponding server has been enhanced to allow for backward compatibility between LincDoc 3.2 and LincDoc 3.3.

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

3859

Transparent signature images, which are sometimes submitted by LincDoc Mobile, were not displayed correctly. Instead of the signature appearing, several black rectangles were displayed.

3870

When a form definition was exported (as an .ldar file), dynamic section headers were not included in the exported file.

3874

When a form definition was exported (as an .ldar file), field Label Calculation information was not included in the exported file.

3875

Generation calculations did not work correctly for codelist field types when used in forms that were based on a Word/ODT source document(s).

2.8. LincDoc 3.2.7 Release Notes

Published on: 15 Nov 2013

This section contains information about the LincDoc 3.2.7 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new feature has been added with this release.

Topaz Signature Application Security Updated (3833)

The security for the Topaz signature application has been updated. It now works with the latest Java release (1.7.0_45).

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

3854

The Topaz signature application was launching twice when used in Internet Explorer.

2.9. LincDoc 3.2.6 Release Notes

Published on: 23 Oct 2013

This section contains information about the LincDoc 3.2.6 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new features have been added with this release:

Uploading a Signature Stamp (2726)

You can now add a signature stamp to your user profile. A signature stamp is an image that can be used in place of a script font representation of a signature. It works with either a clickwrap or authenticated digital signature.

For example:

Signature stamps allow you and other users to personalize a signature so it can be quickly determined if a document was "signed" with something unique to the signer.

Proceed to one of the following sections for more information:

Adding a Signature Stamp

You specify your individual signature stamp using the Signature Stamp options on the Preferences dialog box (which is accessed via the User Profile button's profile option). 

  1. Click the upload button.
    The File Upload dialog box appears.
  2. Click the Browse button to locate the file you want to use as your signature stamp.
    Note: You can upload JPG and PNG image files.
    Once selected, the file's name is displayed on the File Upload dialog box.
  3. Click Upload.
    The selected file is displayed to the right of the Signature Stamp option on the Preferences dialog box.

    Note: You can remove the selected signature stamp file by clicking the Clear button (to the left of the image). 

Using a Cursive Signature Image

With the implementation of signature stamps, you now have the option of having LincDoc automatically create a cursive signature image if no signature stamp has been specified for the user signing the form.

This behavior is controlled using the Create cursive signature image if no stamp present check box on the Fields/Sections tab. This option is only present when LincDoc Login is selected from the Signature type drop-down list.

For more information, see Using Signature Stamps.

Dynamically Defining a Section's Description (3652)

You can now use conditions and custom text to create dynamic section long descriptions to complement dynamic section headings. You activate this new option using the dynamic check box on the Fields/Sections tab.

Note: This option only appears when you click a section in the Fields/sections list on the left side of the tab. 

When you click the dynamic check box, the configure dynamic header button appears.

Click the configure dynamic header button to access the Configure header for dialog box, which allows you to fully configure a dynamic long description for the section.

Using this dialog box, you can create a dynamic section description by creating a condition and then defining the text for the description.

  1. Create a condition using the options in the condition column. For more information, see Creating and Editing Custom Conditions.
  2. In the header column, specify the text that will be used if the corresponding condition is true using any combination of the following two options:
    • Type text directly in the large text box.
    • Use the drop-down list above the large text box to insert the current user's username, the current user's regular name, or field values from your form.
  3. (optional) Add additional conditions using the button to the right of the large text box.

    Note: The first condition in the list that is true is the one that is used to dynamically create the section header.
  4. Once you are done defining your condition, click save at the top of the dialog box.
    In the following example, a long description has been designed to use an applicant's first and last name.
     

Exporting Database Tables to a CSV File (3679)

You can now download database table contents to a CSV file on your local system. This feature allows you to edit the table data in a CSV file, and the upload the altered data back into your database (using the corresponding upload button).

For example, you can create an updated CSV file with newly added data, and then upload the new file data to your database. You can also verify the current contents of a database table using a local file without having to connect directly to the database.

Tip: It is recommended that you name your CSV file using the corresponding table name. In addition, the first row of the file should be a header row, and it should contain the column names.

This option is available in the following two locations:

  • On the Databases dialog box (which is accessed using the databases option from the system button)
     
  • From the codelist dialog box (which is used when creating a JDBC codelist)
     

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

3741

Added the America/Panama time zone to the list of Time zone drop-down list on the Preferences dialog box. 

3748

A default repository was not automatically used on the save action configuration screen. 

3752

In Docuware, re-adding a previously deleted attachment did not work correctly, and an error occurred.

3754

When you attempt to use a LincDoc Login signature as a guest user, the error message that appears has been improved and is more informative.

3761

The blank dialog box that appeared with certain signature types has been fixed.

3762

Extraneous signature data that was being written to the server logs has been removed.

2.10. LincDoc 3.2.5 Release Notes

Published on: 11 Sept 2013

This section contains information about the LincDoc 3.2.5 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new features have been added with this release:

Ability to Dynamically Define a Section Heading (2995)

You can now define a section's heading, as it appears on the eForm's or Document Package's Data Entry View, using the Calculated heading? option instead of using only a static heading. This option allows for the creation of dynamic section headings based on actual form input.

Important: Only the section heading on the form's Data Entry View and in the Document Viewer are affected by this option. The section's heading on the Fields/Sections tab can only be changed using the Section name text box.

The option is available when you select a section on the left side of the Fields/Sections tab, as shown below.

In previous versions of LincDoc, only a static name could be given to a section (via the Section name text box).

If you click the Calculated heading? check box, you can access either the Calculation Wizard or the standard calculation editor via the corresponding arrow button (highlighted above, to the right of the check box). From this point on, you edit the heading's calculation just like any other calculation.

In the following example, the first section's heading is based on the information in the Primary's Last Name entry field. Once a value is entered in this field, the section heading is automatically updated.

New Function for Text Manipulation of a Field's Label (3651)

You can now define a field's label, as it appears on the eForm's or Document Package's Data Entry View, using the Label Calculation? option instead of using only a static label. This option allows for the creation of dynamic field labels based on actual form input.

Important: Only the field label on the form's Data Entry View and in the Document Viewer are affected by this option. The field's name on the Fields/Sections tab can only be changed using the Label text box.

The option itself is only visible when you click the advanced check box in the Field attributes area of the the Fields/Sections tab, as shown below.

In previous versions of LincDoc, only a static name could be given to a label (via the Label text box).

If you click the Label Calculation? check box, you can access either the Calculation Wizard or the standard calculation editor via the corresponding arrow button (highlighted above, to the right of the check box). From this point on, you edit the label's calculation just like any other calculation.

In the following example, the Date of Birth label is based on the entered information in the Primary's Last Name and Primary's First Name entry fields. Once a value is entered in either of these two entry fields, the label's name is automatically updated.

 

Better Error Messages for Failed Logins (3658)

The error messages that appear after a failed login attempt have been improved to better describe the reason for the failure.

The messages are now more specific as to the cause of the failure, including username problems, password problems, disallowed logins, or authentication failures.

New Option Allowing the Run Doc Package Action or eForm Action to Open a New Browser Window (3692)

When using the Run a Doc Package or eForm action, you can now specify whether or not you want the executed Document Package or eForm to open in a separate browser window or tab.

Note: The choice between a browser window or tab is based on your browser's settings. It is not controlled by LincDoc.

This behavior is controlled using the Open in new browser window/tab? option on the run a doc package or eForm dialog box, as shown below. When the option is selected (checked), the Document Package or eForm will open in a new browser window/tab.

For more information on this action, see Action Details: Run a Doc Package or eForm.

Ability to Sort Fields in a Section Alphabetically (3698)

You can alphabetically sort all of the fields in a given section on the Fields/Sections tab using the new sort fields option. This option is accessed by right-clicking the section whose fields you wish to sort.

In the following example, the NEW SECTION has been selected (right-clicked), and the option has been highlighted. 

Once the option is clicked, the fields in the section are sorted in ascending (A-Z) order. 

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

3580

When using the show HTML action, the action's HTML message would sometimes appear twice.

3684

Modifying a condition in a rule (such as the conditions parameters), when a custom condition was being used, changed the selected custom condition to Always.

3694

Fixed canvas signatures so that blank signatures are no longer accepted.

2.11. LincDoc 3.2.4 Release Notes

Published on: 3 Sept 2013

This section contains information about the LincDoc 3.2.4 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new features have been added with this release.

Initial Login Page Appears Following a Logout

For cloud customers: after logging out of LincDoc, the same login screen that you initially used to access the session is now displayed automatically, allowing for easier additional logins.

Conditions Listed in Alphabetical Order

All list of conditions, which appear when using certain options on the Field/Sections tab (such as the Condition to display, Required, Read only, and Alert condition options) are now listed alphabetically, in ascending (A-Z) order.

Field Option to Prevent Multi-Value Tables from Automatically Expanding

In the advanced case of having a repeating source document where it is desired to not have a multi-value table in that document expand out,  you can now use the no_multirow_expand option in that source document's field definitions to prevent the expansion of multi-value tables. This option is only available in Microsoft Word source documents.

For example: <<product#[no_multirow_expand]>>

Note: You can use the hidden option in conjunction with the no_multirow_expand option, as long as the options are separated by a comma within the square brackets (for example: <<product#[hidden, no_multirow_expand]>>)

For more information on the hidden option, see LincDoc Markup - MS Word/OpenOffice.

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

3629

Document Package list filter did not work if no Document Package was selected.

3634

Read-only currency fields appeared editable in forms.

3639

When a form validation error message contained a percent sign (%), it did not display properly. 

3677

The database table upload modified the column names that contained underscores ( _ ). All underscores were automatically removed. 

3687

A codelist that was dependent on itself caused an infinite loop.

2.12. LincDoc Mobile 3.2.4 Release Notes

Published on: 19 Sept 2013

This section contains information about the LincDoc Mobile 3.2.4 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new feature has been added with this release.

Allow Min and Max Functions to Accept Variable Arguments (3582)

The Min and Max functions can now use any number of variable arguments, which is the same behavior available in the standard (non-mobile) version of LincDoc.

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

3473

When you delete a LincDoc document, a confirmation message did not appear allowing you to verify the action. 

3496

A currency formatting issue existing, whereby trailing decimal zeros were incorrectly truncated. 

3497

The iPad app could not retrieve and use custom user attributes defined on the server.

3544

Match server did not allow circularity of dependencies in field calculations. Field calculations that depend on the current field value (directly or indirectly) now execute once as on the server. 

3660 

The form page was displayed even if it did not contain any visible sections. It in now hidden in this case.

3670

The app could crash when a user rapidly paged forward or backward in the generated Document Viewer.

2.13. LincDoc 3.2.3 Release Notes

Published on: 17 Aug 2013

This section contains information about the LincDoc 3.2.3 release. This release contains both new features and corrected defects from previous releases. 

New Features

One new feature has been added with this release.

New Loop Function

The new Loop function can be used with a multi-value table, allowing you to perform calculations (a running total) on dynamically added form entries.

An example of the loop in a LincDoc calculation is shown below.

Note: In this example, two images are used to show the calculation, since you need to scroll inside the Calculated field dialog box to view the entire calculation.

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

 3591

When creating a new condition (using the Condition to display option on the Fields/Sections tab), the newly created condition is now automatically selected in the corresponding drop-down list, and will be used in the form without any further action by the user. Previously, after creating the new condition, you would also have to select it from the drop-down list. 

 3604

If a backslash ( \ ) was used when creating token-based document file name (in the Token-based name text box on the eForm tab), an error message appeared when the eForm or Document Package was saved. Now all backslashes ( \ ) are automatically converted to forward slashes ( / ). In addition, any spaces around the slash are removed.

For example: If a file is created using a customer's first and last name and is specified as "Smith \ John", the actual file name would automatically be converted to "Smith/John". 

3606 

The condition operator "contains" was not returning proper results. 

3607 

If a condition was created and used in multiple places, including as a rule on a field-level event, and the condition was later deleted, the field-level events no longer displayed properly. Furthermore, the rule could not be edited or removed. Now the application displays a warning about such issues and allows them to be fixed. 

3608

When using PDF source documents that contain check boxes, and the default check box states of "Off" (cleared) and "Yes" (checked) were not used, and only a single state was defined (a replacement for one state existed, but not for both), an error message would appear. These types of PDFs (PDFs with single-state fields) are now allowed and will not produce an error.

3620

If a field has its Condition to display option set to the value of another field's codelist, and the other field's codelist was changed to a different codelist, the Condition to display option for the dependent field was not recalculated correctly. For example, if "field2" is set to display only when "field1" is set to "yes", and "field1" is set to "no", "field1" was correctly updated, but "field2" still displayed, even though it was expected to be hidden.

2.14. LincDoc 3.2.2 Release Notes

Published on: 20 Sept 2013

This section contains information about the LincDoc 3.2.2 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new features have been added with this release:

Plug-In Version Checking and Display (3493)

LincDoc  now performs a check of all installed plug-ins, and verifies that they are compatible with the current version of LincDoc.

You can also view your current plug-ins, as well as the version of LincDoc needed to use the plug-ins, by selecting about LincDoc from the help button on the main LincDoc toolbar.

The About LincDoc screen appears, showing both the current version of LincDoc, as well as a list of currently installed plug-ins and the version of LincDoc needed for the plug-in. In the following example, the Credit Card Plugin has been installed, and requires LincDoc 3.2.2.13 to function correctly.

 

New Action for Manipulating a Document Created Using the "Run a Doc Package or eForm" Action (3514)

A new action has been added that gives you the ability to edit, view, or sign an eForm or Document Package that has been launched using the Run a Doc Package or eForm action, and is associated with a particular field in your original eForm or Document Package.

To use the action, you need to specify the following information:

  • action. Allows you to select the action that will take place regarding the eForm or Document Package. The following options are available:
    • edit. Alter an existing copy of the form.
    • edit copy. Alter a new version of the form, leaving the existing copy unaltered.
    • view. Examine the form in the Document Viewer.
    • sign. Examine the form in the Signature View, and complete any necessary signatures.
  • docID field. Specify the field in the original form that contains the document ID.
    Note: You can use the DocId function to set a field in your form to the document ID. 
  • event ID. Used to specify custom events added using the Add Event button on the Admin dialog box's Actions tab.

Tip: If you want to provide the ability to perform multiple actions (for example, edit and view), you can add multiple instances of this action, and assign each option to a custom button. 

A new advanced option allows you to specify a particular authentication provider directly in a hyperlink.

When adding links (which are DRAT expressions), you can specify the authentication provider using the seventh parameter in a link.

In the following example, an Email action uses a link in its body text to specify the authentication provider as "mainActiveDirectory". Notice the six colons prior to the authentication provider name, which act as notations for the six (non-used) parameters.

 

Since this option is considered an advanced option, you should contact Technical Support for further assistance.

New IsWebServiceSync Function (3557)

A new function, IsWebServiceSync, is used when syncing data that was initially recorded offline (such as using an iPad at a remote site) to your main service once a connection is re-established.  

This function is useful for preventing actions from occurring during the "After signing" event that should instead be done during the "After sync signing" event.

No parameters are available for the function. Instead, it simply returns a "true" or "false" value, based on the whether or not a data sync is currently being performed.

Document Viewer Image Display Improvements - Scrollable PNG View (3573)

In previous releases of LincDoc, if your eForm or Document Package was made up of several pages, each page was displayed individually when viewing the document in the image (PNG) view. Now, you can scroll down and automatically see all of the available pages, one after another.

For more information on the Document Viewer and the different view options, see Using the Document Viewer.

Oracle and MariaDB (MySQL) Supported for Database Lookups (3575, 3542)

When adding database connections (for the purpose of database lookups), you can now connect to Oracle or MariaDB (MySQL) databases.

These options that control these lookups can be found when defining a new database from the Configure database dialog box.

  1. On the main LincDoc toolbar, click the system button, and select the databases option.

    The Databases dialog box appears.
  2. Click the new database button.

    The Configure database dialog box appears.
  3. Click the Driver drop-down list.
    The new database options appear in the list, as shown below.
     

Ability to Sort Order of eForms/Document Packages on the Main Selection List (3590)

You can now specify the order of eForms and Document Packages in the main selection drop-down list (on the LincDoc toolbar).

The Sort order option on the eForm/Document Package tab allows you to specify a number, which is used to determine the current eForm's or Document Package's position in the list.

 

The numbers are relative to other specified numbers for other eForms or Document Packages. For example, if you have one item set to "1" and another set to "3", but none set to "2", the item set to "3" will actually appear second in the list.

You can click the clear button to remove any current number.

Important: If a number is not specified for an eForm of Document Package, it will appear below all items that do have a specified order number, and will be listed based on the item's identification number, which was automatically assigned when the item was created.

Credit Card Transactions Supported via Amazon Marketplace (3372)

You can now add credit card transactions via Amazon Marketplace. This feature is offered using a plug-in and requires a specific license to use.

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

3533

Required fields did not change colors, as expected, when populated via and action or database lookup. 

3534

Extra characters were appearing in codelist error messages.

3535

PDF check boxes can now be updated during the signing process. 

3539

Allowed upload file types can now be configured in the database. 

3540

Multi-row calculations were not executed when expected (after row values were updated). 

3541

When mapping a Credit Card Return action using Amazon Marketplace, a cancelled mapping (when a user would begin to click and drag an item but not complete the mapping) would result in the existing mapping being deleted. 

3545

Added items to the help for date/time format information.

3548

An error in the database initialization script caused an exception when deploying version 3.2.1.7 to a system that had never hosted LincDoc. 

3551

Signature image overlay text was being used even when it was disabled.

3552

Error appeared when sorting the repository browser. 

3556

Fixed issue with the calculation wizard that caused additional conditions following an if/then/else statement to display poorly.

3565

When using Internet Explorer 10 and viewing a form in PDF mode, the Adobe Reader instance was not closing correctly. 

3566

After completing credit card processing on Amazon, the return message from Amazon would appear in a open form. It now appears on the user's desktop. 

3574

Fixed "Comparison method violates its general contract!" error that appeared in repository browser when sorting. 

3585

When using a multi-value table, multi-value codelists were not populating correctly.

3596

For web services (such as iPad sessions), keep track of the username used at login time, and check against that for subsequent authentications in the same session to prevent the "already logged in" error when using alternate (different capitalization) forms of the username. 

3597

When using the Adobe Reader PDF viewer in Internet Explorer 10, a PDF with signatures was the only one that could have focus, and the LincDoc Document Viewer would become unusable.

2.15. LincDoc 3.2.1 Release Notes

Published on: 7 Aug 2013

This section contains information about the LincDoc 3.2.1 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new features have been added with this release:

Enhanced Time Zone Sorting

When selecting a time zone, the information displayed has been more logically sorted, and additional information (such as the GMT offset) is displayed, allowing you to more easily locate the desired time zone.

Note: If  you are using a timezone setting that is no longer supported, the application will attempt to find the best match. However, if no match is found, you will need to redefine the setting manually.

The following example shows the Time zone drop-down list on the Preferences dialog box, which is accessed by clicking the User Profile button in the upper right corner of the interface and selecting the profile option.

For more information on this button, see About Interface Components.

The contents of the drop-down list are shown below.

Ability to Disable Individual Repositories

You can now deactivate individual repositories, instead of deleting them entirely, allowing you to easily add them back in later, using the Disabled check box on the Repositories tab.

 

Ability to Add Missing Index Fields

In previous version of LincDoc, adding an index field after documents were created had caused some functions to report results incorrectly. A button has been added in the Document Package-level repository that allows you to ensure that there is a node for each index field.

The button is located on the Configure dialog box.

This dialog box is accessed by clicking the appropriate Configure button on the Repositories tab.

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

3066 

Laserfiche 64-bit connector failed during a test.

3421 

JCR search misses results where the node for an index field is missing.

3435 

Blank field attributes in new Document Package. 

3439 

Exception at document generation time related to missing imageio classes. 

3444 

Codelist delete button doesn't work in OS X Chrome and Safari.

3472 

"Failed" message in browser when attempting to use magic button to sign - 64-bit connector.

3474 

Cross browser admin interface: Configure system help call out display is covered.

3475 

Cross browser admin interface: Question mark icon is not displaying correctly.

3476 

Cross browser admin interface: The + icons are not centered and are flush next to edge.

3477 

Cross browser admin interface: Internet Explorer font is smaller on the Calculation Wizard. 

3484 

Index problem with buttons in multi-value tables.

3489 

Client Provider: Provider is visible even when it is set to not be visible. 

3508 

CSV file upload interface - mapping component rendering as a vertical line.

3510 

ZK Read Only text boxes are too light.

3513 

Token Based Filename uses UiDataFormat instead of ValueConverter.

3517 

Add or edit JDBC Advanced Lookup shows NPE.

2.16. LincDoc 3.2 Release Notes

Published on: 16 Aug 2013

This section contains information about the LincDoc 3.2 release. This release contains both new features and corrected defects from previous releases. 

New Features

The following new features have been added with this release:

Uploading a CSV File into an Existing Table

You can now upload a CSV file into an existing table. A CSV file can be added when editing a JDBC lookup or configuring a database.

When editing a JDBC lookup, the upload button appears on the codelist dialog box, which is displayed when you click the edit button for an existing codelist.

The codelist dialog box and corresponding upload CSV button are shown below.

You can also use CSV files to update tables via the Databases dialog box (which is accessed using the system button). Each database has its own individual upload button, as highlighted below.

New Token-Based Name Creation Interface 

You can now use tokens to dynamically generate a document's path and name. This option is available from the eForm tab.

When you click the corresponding arrow button (highlighted above), the Token-based path for generated documents dialog box appears.

This dialog box allows you to used the tokens (displayed on the Tokens tab) to define path and file information.

You can perform the following actions using this dialog box:

  • Add a token tag by selecting a token from the Tokens tab, and clicking the Add button; by double-clicking a token; or by dragging-and-dropping a token into the Path text box.
  • Modify a token tag by selecting it in the Path text box, and clicking the Modify button; or by double-clicking the token in the Path text box.
  • Delete a token tag by selecting it in the Path text box, and clicking the Delete button; or by dragging-and-dropping it outside of the Path text box.
  • Move a token tag using the Left and Right buttons.
  • Remove all of the contents of the Path text box by clicking the Clear button.
  • View the full DRAT content of the tags in the Path text box by clicking the Show DRAT check box. When this check box is cleared (unchecked), the tags display using a simple format.

    Tip: You can also hover your mouse pointer over a tag (that is currently using the simple format) to view the DRAT content. 

New Generation Calculations

A new type of calculation, Generation, is now available. This calculation is executed when documents are generated. You set the calculation on the Fields/Sections tab.

Note: This calculation is only available when you click the advanced check box.

An example of when this type of calculation would be useful is if you want to reformat a date from the default format (01/01/2013) to a text format (such as January 1, 2013) when your document is generated.

Offline Lookups on iPads

When using the iPad app, offline lookups are now available. Offline lookups allow you to reuse existing data when not connected to a server (when "in the field"). They retrieve all available data from a server at once, which allows them to then use a filter that can be evaluated by an offline device (such as an iPad). Any lookup that uses a DANG condition may be used offline, as all of the data may be retrieved by using a "always" condition, and offline devices can evaluate the DANG expression.

Updating Other Fields When Applying or Declining Signatures

You can specify fields that will be updated on PDF documents when the documents are signed.

These fields are selected using the Fields to update when signing section of the Field attributes (on the Field/Sections tab).

Use the check boxes in this section to specify the fields that will be updated when applying the signature.

The selected fields are then updated after the signature field value is created and set to the form data, but before the signature is stamped on the document, allowing these field values to be written to the document at the same time as the signature.

You can also specify fields to update when a signature is declined using the Fields to update when declining section of the Field attributes.

The selected fields are updated when a signature is declined and the document is not signed.

New "Clear Multi-value Table" Action

You can now clear all values from a multi-value table using the Clear Multi-value Table action.

When this action is used, you need to specify the field in the table that will be cleared when the action is executed.

For more information on using actions, see Actions.

Password Reset Question/Answer Required

In order to enhance the application's security, you are now required to set up a password reset question and answer when you login, if one is not already set.

You can also update the information at any time using the profile option available from the User Profile button, as shown below.

The Preferences dialog box appears, showing the security question options.

Password Reset (Security Question) Answer Securely Stored in Database

The answer to the password reset question (shown below) is now cryptographically hashed in the database for enhanced security.

Database Authorized Provider Username is Case In-sensitive

Usernames and email addresses for internal authentication provides are no longer case-sensitive.

In addition, you can no longer have duplicate usernames for the DB authentication provider.

New User Registration Feature

The new user registration feature allows for the easy creation of new LincDoc users. The feature generates a path (URL) to your LincDoc instance, which you then distribute to the potential new user (typically via an email message). The new user accesses LincDoc via the path, provides all of the necessary login information, and a new LincDoc account is dynamically created.

The feature is accessed using the system button on the main LincDoc interface, as shown below.

 

For more information, see Registering a User.

Deleting an Existing Path

If a path has already been defined but is no longer needed, you can click the Delete button to remove it.

Viewing a Path's Link

You can view the link associated with a defined path by clicking the Link button on the User Registration screen.

The link appears in its own dialog box, allowing you to either click it directly or copy it.

 

This link can be copied and emailed to the prospective new user.

Default Authorized Provider, Groups, and Roles Now Automatically Set for New Clients

When a new client ID is added, a new internal authentication provider is automatically created, and several default groups are added. 

The following default roles and groups are used.

group

roles

parent groups

Users

login

 

Administrators

admin

Users

Form Admins

form-admin

Users

Report Admins

report-admin

Users

User Admins

user-admin

Users 

For more information on roles and groups, see Security.

Additional File Types Available with "Append Files to Uploaded Documents" Action

The following additional file types can now be uploaded when using the Append Files to Uploaded Documents action:

  • .jpg
  • .jpeg
  • .tif
  • .png
  • .gif

Ability to Determine if Template Data is Included with Uploaded Files in Laserfiche

By default, template data is no longer automatically saved with uploaded files (stored as separate documents) in Laserfiche. If the template data is needed with uploaded files, you need to activate the option.

To locate this option, open the Repositories tab, and click the edit button for your Laserfiche repository. The Configure dialog box appears, and the option is displayed (as highlighted below).

For more information, see Laserfiche Repository Configuration.

Ability to Reorganize Prompt Columns for Lookups

You can now alter the order of the information that appears as prompts once a lookup action has been initiated in an eForm or Document Package. Prompts give users the ability to select specific lookup results.

When working with a lookup action, you can access a specific lookup using the edit button via the drop-down list in the lookup column, as shown below.

 

Once you access a lookup, the lookup dialog box appears. The Prompt columns tab on this dialog box displays the available prompts for the selected (accessed) lookup.

 

The rows can now be reorganized by dragging and dropping them in new locations. When you click and hold your mouse button on a specific entry (row) and begin to move it, a "check mark" icon appears, showing you that the selected item is being moved.

 

When you release your mouse button, the selected item is moved and the displayed prompts are reorganized.

For more information on lookup actions, see Database Lookups.

Creating CodeLists Based on the Values from Multi-value Fields

You can now dynamically populate a codelist based on values you set in specific fields in an eForm or Document Package. This new type of codelist is specified using the Multi Value Field option from the Type drop-down list when creating a new codelist, as shown below.

When this type of codelist is created, the codelist dialog box appears, allowing you to set up the codelist using an existing multi-value field.

  1. (optional) Provide a description of the new codelist in the corresponding text box. This description appears below the name of the codelist when selecting it from the Codelist(s) field on the Fields/Sections tab.
  2. Using the Any field in source table drop-down list, select any existing field in the table that will be used to create the codelist. This option is used to determine the table for the codelist. Any field in the table can be selected.
  3. Click the refresh button.
  4. (optional) Click the auto-map button, which, in most scenarios, automatically populates the code, label, and description drop-down lists using the first three rows in the selected table.
  5. If necessary, specify the following information using the corresponding drop-down lists (if you did not use the auto-map button or if the auto-mapping is incorrect):
    • code. The field that will be used to specify the information that will be stored in the database and generated documents.
    • label. The field that will be used to create the main entry seen in the codelist - the item that will appear and be selected from the drop-down list on the form.
    • description. The field that will be used to create a description of the main entry. This description will appear below the specified label
  6. Click save.

For example, if "1" is specified for code, "blue" is specified for label, and "the color of the item" is specified for description: The corresponding drop-down list on the form would show "blue" as an option, with "the color of the item" appearing immediately below the "blue" selection. If "blue" is selected, the value of "1" would be submitted via the form and stored in the database.

Once the codelist is defined, it can be dynamically created using the specified fields directly in the corresponding eForm or Document Package.

Adding an Uploaded File After a Specific Source Document

When using an upload field type, you now have the option of specifying after which source document the uploaded file should appear using the Append after option. This option provides better control over where uploaded files appear in your final form.

 

When you upload your file, the file will appear after the selected source document.

Purchases Using Amazon Marketplace Now Supported

eForms and Document Packages can now use Amazon Marketplace to support online purchases. 

New Credit Card-based Features

Several new features have been added that facilitate credit card usage with your forms.

New Document Package Event

When creating a Document Package, you can now specify actions and rules that will take place after a credit card is approved using the After credit card processing event.

Two New Actions

Two new actions have been added for dealing with credit card transactions: credit card payment and credit card return.

New System Command

The new command available from the system button, accept credit card terms, allows you to set up credit card payment information in your LincDoc installation.

Changed Behavior

The following changes in the way the application behaves should be noted, especially if you are upgrading from a previous version.

Close Document Viewer after declining, add default rule to show document

Prior to LincDoc 3.1.3.27, declining a signature field did not make any changes to the generated document, and, therefore, did not close the Document Viewer and open a new one as the document had not changed.

Now, when a signature is declined, the Document Viewer can be closed and reopened, with any fields selected for updating after a declined signature being automatically updated, using the After declining event.

If you are upgrading from LincDoc 3.1 to 3.2, you will need to update your form configuration appropriately. In most cases, this update will consist of adding the "view document" action to the After declining event.

Corrected Defects

The following table provides a list of the most important defect resolutions.

IDDescription

3139

 log4j level resets to DEBUG after tomcat restart

3150

Selecting multiple fields in the Field/Section tree using the SHIFT key does not work correctly. 

3272 

Do not allow slash (/) in lookup or codelist id 

3309 

Token-based name picker interface: ability to clear tag on modification and save it 

3310 

Token-based name picker interface: Fields tab has an extra blank column 

3320 

Cannot add custom property to JDBC database configuration 

3321 

Editing a named rule does not trigger the "this form has unsaved changes" message

3338 

DocPkgCombobox creates a RepositoryManager for each document package 

3364 

Laserfiche: Uploaded fields from an iPad do not get populated into repository 

3369 

Admin user cannot import ldar or create new Document Package

3373

Poor error message when it is not possible to append upload type

3377

Error after generate does not force regenerate

3379 

"Incorrect username or password" message when changing admin password for the first time 

3380 

NPE shown at login 

3388 

Security access checking broken 

3390 

Error saving user profile when it is not possible to change username 

3423 

DocRequest logs in as guest and then goes to login page 

3436 

LDAR import fails when replacing a Document Package with named actions or conditions 

3459 

Signature field: Signer name field does not keep selected field displayed 

3460 

Search: Generated forms do not appear to be searchable on local server

3464 

No columns listed for views in JDBC lookup 

3469 

NPE while signing from email link 

3. System Requirements

3.1. Hardware and Virtualization Specifications

This topic describes the support platform configuration on which LincDoc can be installed, and the individual requirements for the system (computer) running LincDoc.

About Supported Platforms

For On-Premise deployments, LincDoc is shipped as a fully contained 64-bit Ubuntu Linux 12.04 virtual appliance which is offered on the following platforms:

  • VMware (ESX/ESXi 4+, but 5.1+ is recommended); VMware Server or Player are NOT supported
  • Microsoft Hyper-V (Windows 2008 R2 or higher)
  • Oracle VirtualBox 4+
  • Citrix XenServer 5.5+

About Individual Platform Requirements

On any of the platforms listed in the previous section, the minimal requirements for the LincDoc system to run are as follows:

  • 40 GB virtual disk
  • 2 GB RAM (4 GB recommended)
  • 1 virtual CPU (2 CPUs recommended)

Note: Even though the underlying operating system is Linux, no Linux knowledge is required to administer or use the LincDoc application.

3.2. Supported Web Browsers

Several web browsers can be used to access LincDoc. However, specific versions must be used. In addition, if you are using certain signature options, the supported versions vary slightly.

About Supported Browsers (General Use)

The following browsers and versions are supported for general LincDoc usage:

  • Internet Explorer 8 (and above)
  • Firefox 4 (and above)
  • Chrome 10 (and above)
  • Safari 4 (and above)

About Supported Browsers (Canvas Signatures)

For canvas signature support (such as signing with a mouse or trackpad), the following browsers and versions are supported:

  • Internet Explorer 9 (and above)
  • Firefox 4 (and above)
  • Chrome 10 (and above)
  • Safari 4 (and above)

3.3. Requirements for Administrators

The requirements for administrators differs from the requirements for general end users. Review the information below carefully.

About Web Browsers for Administrators

Most LincDoc administrative tasks are done via a web browser.

Important: It is strongly recommended that either Google Chrome 15 (and above) or Firefox 18 (and above) be used for administering the LincDoc system.

The reason for using these browsers is that the administration interface is highly Javascript intensive, and the browsers listed above have more powerful Javascript engines. For end users, the interface is less complex, so it is acceptable to use older browsers or different browser types.

Note: Administering LincDoc from a mobile web browser is not supported.

About the Forms Authoring Tool

LincDoc can work with these types of source documents:

  • PDF. Created using Adobe Acrobat Pro version 9+ (or Adobe Livecycle Forms)
  • DOC/DOCX. Created using Microsoft Word 2003+
  • ODT. Created using OpenOffice (or LibreOffice)

There are some limitations to be aware of when choosing your forms authoring tool. The following table summarizes the issues to consider.

Source document format

.doc

.docx

.odt

.pdf

Supports multivalue?

yes

yes

yes

no

Can produce TIFF output?

yes

yes

yes

yes

Can produce PDF output?

yes

yes

yes

yes

Can produce DOC output?

yes

no

no

no

Can produce DOCX output?

no

yes

no

no

Can produce ODT output?

no

no

yes

no

Supports conditional paragraphs? (Document Packages only)

yes

yes

yes

no

Supports cryptographic digital signatures? (requires the appropriate LincDoc signature module)

no

no

no

yes

Supports clickwrap signatures? (requires the appropriate signature module)

no

no

no

yes

Supports mouse/canvas signatures? (requires the appropriate signature module)

no

no

no

yes

Supports authentication signatures? (requires the appropriate signature module)

no

no

no

yes

Can be used for iPad-based forms?

no

no

no

yes

Supports repagination? (Document Packages only)

yes

yes

yes

no

About the LincDoc Connector

The LincDoc Connector tool is used to send/receive documents and data to/from third-party platforms. Currently, there are connectors for sending information to a Windows file share and Laserfiche. The connector software installs as a Windows service on the server to which the documents and data are being written.

3.4. Requirements for End (General) Users

The only software requirement for end users is a relatively up-to-date web browser. However, if a signature pad is going to be used, you should review the list of supported models.

The requirements for administrators are more extensive. 

About Supported Web Browsers

For a complete list of supported browsers, see Supported Web Browsers.

About Supported Signature Pads

For signature pad support, each user with a pad must have the latest version of the Java runtime environment installed on a PC running Windows XP or other more recent Windows desktop OS.

The following signature pad models from Topaz are supported:

Note: Any model number may have "-R" at the end.

  • T-S460-HSB
  • T-LBK460-HSB
  • T-LBK750-BHSB
The following models will likely work, but are untested:
  • T-S461-HSB
  • T-S261-HSB
  • T-S261-KHSB
  • T-L462-HSB
  • T-LBK462-HSB
  • T-LBK462-KAHSB
  • T-L460-HSB
Some support for Topaz pads on Macintosh may be possible. Contact support for further information. 

3.5. Requirements for LincDoc Mobile

You can download LincDoc Mobile from the Apple App Store.

The following iPad generations are supported with the current version (3.x):

  • LincDoc Mobile versions 3.1 and 3.2 support all generations of iPad.
  • LincDoc Mobile version 3.3 supports second generation and higher iPads.

The following iOS versions are supported with LincDoc Mobile.

 

LincDoc Mobile 3.1 

LincDoc Mobile 3.2 

LincDoc Mobile 3.3 

iOS 5.1.1* 

 X

 X

 

iOS 6.x

 X

 X

 

iOS 7.x

 X

 X

X

iOS 8.x

   

X

* iOS 5.1.1 is only supported with first generation iPads. 

4. LWSA (LincWare System Administration) Portal

4.1. About LWSA

LWSA (short for LincWare System Administration) is a utility that essentially "bootstraps" a generic Ubuntu Linux system to prepare it so that LincDoc can be installed on the system. Note that knowledge of Linux is not necessary to use LWSA.

Two user interfaces allow you to interact with LWSA:

  • A simple menu interface through the Linux system console. The primary use of this interface is to set up the IP address of the system so that the web portal can be used.
  • A more detailed web portal. From this interface, you can start/stop critical services, apply software license keys, set up SSL certificates, and choose which version of LincDoc will be used.

4.2. Accessing the System

You can log into the system using either the system console or via a web browser.

Proceed to one of the following topics for more information:

Logging in from the System Console

You can log in using the Linux system console.

  1. Open the system console. You should see a login prompt similar to the example below.
  2. Login with the username (lwsa) and the password (chosen when the system was first installed).

Note: If the screen appears blank, you may have to press a key to deactivate the screen saver.

Logging in from a Web Browser

You can access LWSA from a web browser using the URL provided by the system console. 

  1. Open the system console so that you can see the necessary URL (in the example above, the URL is: http://10.9.0.56:8080/lwsa).

     

    Note: If the console does not show a valid URL, you must first login using the console method, and follow the menu prompts to set up networking.

  2. Type the URL in the web browser of your choice.

    A login screen appears.

  3. Specify the username (lwsa) and password (chosen when the system was first installed).

    The LWSA interface appears, with the General tab selected.

4.3. Using SSL Certificates

LincDoc requires the use of SSL certificates in order to ensure the security of data being transferred between web browsers and the server back end. The process begins by logging in to LWSA (using the web portal, and not through the system console), and generating a certificate signing request (CSR).

  1. Open a browser and log in to LWSA.
  2. Click the SSL Certificate Signing Requests tab.
  3. Click the create button.
  4. The Create new certificate signing request dialog box appears. Populate all of the fields as needed for your organization. For the signature algorithm, just use the default value if you are not sure.
  5. Click generate CSR.
  6. Click SAVE.
  7. Cilck show CSR, and copy the displayed information (CTRL-C).
  8. Paste the CSR into your SSL provider's application form, and proceed through their application process. The certificate must be compatible with the Apache web server running on Linux. Refer to your SSL provider to confirm this fact.
  9. At this point, your SSL provider should have provided you with the SSL certificate; open it in notepad and copy it.
  10. Return to LWSA, and click the SSL Certificate Signing Requests tab.
  11. From the displayed list, select your original CSR.
  12. Paste the SSL certificate into the text box set SSL certificate for this CSR. Optional: paste one or more CA certificates (in any order) into the text box set CA certificate chain/bundle for the above SSL cert. Refer to your SSL provider for details. Note: sometimes these CA certificate(s) are referred to as a "chain" or "bundle" file.
     
  13. Click SAVE.
  14. Click the Application Contexts tab.
  15. Click edit settings for Apache virtual hosts.
  16. Verify that the uses SSL? checkbox is selected.
  17. Click apply SSL cert from CSR, and select the appropriate CSR.
  18. When complete, your dialog box should appear similar to the following example. Note: custom Apache VirtualHost statements and link to existing VirtualHost? are advanced options and should only be used under guidance from LincWare staff.
     
  19. As the example above demonstrates, verify the following:
    • The enabled check box is selected.
    • A single asterisk ( * ) is used in the virtual host IP address text box.
    • The port number is set to 443.
    • The add "Listen" directive for port? check box is NOT checked.
  20. Click check configuration to verify that your settings are configured correctly.
  21. Close the Apache virtual hosts dialog, and click SAVE.
  22. Go to the services tab.
  23. Click the appropriate button to restart Apache.
  24. Open a browser and navigate to the following URL:
    https://yourLincDocSystem/lincdoc/
    You should see a login page, and no warnings about a browser security issue.
    The SSL certificate is now installed and working properly.

Using a self signed SSL certificate

Follow the above steps beginning from #14, but in step #17 instead of clicking apply SSL cert from CSR, use create test SSL certificate. This certificate is for testing only, and is not supported in production environments in any way.

4.4. Using the remoteadmin Service

The remoteadmin service allows LincWare personnel to remotely access the LincDoc VM to perform various administrative/troubleshooting tasks such as reviewing system logs, applying non-standard configuration items, installing custom plugins, etc.

From time to time, you may be asked to enable this service.

It is required that the LincDoc VM be able to connect to port 443 at remoteadmin.lincware.com. In some environments, this arrangement may necessitate creating a new rule in the firewall.

Important: The firewall needs only allow outbound access through the firewall to remoteadmin.lincware.com.

The service is enabled via the LWSA Services tab.

  1. Login to LWSA using the browser of your choice.
  2. Once logged in, click the Services tab.
  3. Click the start button (as highlighted below) to enable the remoteadmin service.

    Note: When the service is started, it establishes an SSL connection back to remoteadmin.lincware.com. The encryption algorithm used is PKCS #1 RSA encryption, with a 2048 bit modulus.

  4. Once the remote setup is complete, click the stop button, adjacent to the start button, to disable the service.

4.5. Accessing system logs

Viewing system logs

To access the system logs, log in to the LWSA web portal. Click on the "services" tab. Press the "log viewer" button.

On the next screen select "Tomcat catalina.out". Use the controls to either scroll through the log file, or download it and use your favorite editor to view it. Note that the beginning of the file has the oldest log messages; the most recent messages will be at the end of the file.

Changing the logging level

The amount of detail logged is controlled by the "logging level" dropdown control shown in the above screenshot. The most detailed amount of logging is "debug", with less information logged at each level up to "error". Generally speaking we recommend running at level "info" for a stable production system.

5. Accessing the LincDoc System

5.1. Logging Into LincDoc

You access the LincDoc system by accessing a URL that is specific to your environment. When this URL is accessed, your environment's LincDoc login screen appears, allowing you to specify a username and password.

Note: Your URL is created and assigned to you during the initial LincDoc configuration phase. If you do not know your URL, contract your local LincDoc administrator or Technical Support.

About the Login Screen

The login screen is your initial point of entry. It allows you to specify the following information:

  • Your provider (which the system security uses to determine who can access the application)
  • Your username
  • Your password
In the following example, three providers are listed (and highlighted), along with the typical username and password text boxes.
For more information on providers and how to configure them, see Using Authentication Providers.

Configuring Your Login URL

You can adjust your URL to show only specific information, such as only the providers associated with a particular client ID. In addition, you can remove the ability of the user to choose a provider, and instead specify the provider directly in the URL.

Displaying Providers Specific to Your Client ID

If, by default, your LincDoc login screen displays a large list of providers, it may be helpful to limit this provider list to only those associated with a specific client ID.

In the following example, notice how a large number of providers appears above the username text box.

You can reduce the number of displayed providers by specifying a client ID directly in your login URL. 

  1. Verify that you know the name of the client ID you want to use.
  2. Add the name of the client ID to the end of your standard URL, after the "/login" portion.  Be sure to separate it from the standard URL with a forward slash (/).
    For example, if your client ID is "forms1", your URL would appear similar to the following (as shown in a Chrome web browser):
  3. Press ENTER.
    Your login screen is updated, and only the providers associated with the specific client ID are shown, as well as any client ID-specific branding (in the example below, a custom login logo is being used).
     

Specifying Providers Directly

If you want to verify that users only access a specific provider, or remove any possible confusion caused by displayed multiple providers, you can adjust your LincDoc URL to automatically use a specific provider. 

  1. Verify that you have specified your client ID in your URL, as described in Displaying Providers Specific to Your Client ID above.
  2. Add the provider name to the end of the URL. Be sure to separate it from the previously defined client ID entry with a forward slash (/).
    For example, if your client ID is "forms1" and the provider you want to specify is called "system", your URL would appear similar to the following (as shown in a Chrome browser):
  3. Press ENTER.
    The resulting login screen does not allow a user to specify a provider, but simply shows the username and password text boxes.
     

5.2. Specifying Your Client ID

Your client ID acts as a container within LincDoc. It stores all field definitions, source documents, generated documents, and data.

Determining Your Current Client ID

Once you log into LincDoc, you can view your current client ID using the profile button.

  1. Log into LincDoc.
  2. Select switch client ID from the profile button on the right side of the interface.
     
    The Switch Client ID dialog box appears, showing the currently selected client id.
     

Switching Your Client ID

You can change your current client ID using the Switch Client ID dialog box.

Note: In most cases, a single client ID is sufficient. Therefore, you may not see any additional options beyond your current client ID.

  1. Access the Switch Client ID dialog box as described in Determining Your Current Client ID.
     
  2. Using the drop-down list on the dialog box, select a different client ID from the currently displayed (and active) ID.
    Your ID is changed.

Note: If no additional IDs are available from the drop-down list, you do not have access to additional client IDs.

Creating Additional Client IDs

Client IDs are created when your license key is generated. If you find that you need additional client IDs, contact LincDoc Technical Support.

5.3. Customizing Your User Profile

You can access and edit your profile settings, if desired, using the profile button on the LincDoc toolbar.

  1. Click the profile button, which should be labeled with your profile name.
  2. Select profile from the options that appear.
    The Preferences for dialog box appears.
  3. Edit the following information, as desired:

    Note: Not all settings can be edited from this dialog box.

    • Username. Displays the user's identity for use in logging into LincDoc.
    • Name. Displays the user's actual full name.
    • Email address. Displays the user's email address.
    • Time zone. Displays the time zone for the user's current location.
    • Signature stamp. Allows you to upload, download, or clear the current signature stamp.

      Note: If a signature stamp has been defined, it is displayed adjacent to the Signature stamp settings.

    • Change password. Allows you to create a new password. When this check box is selected, additional text boxes appear, allowing to you define the new password.
    • Change security question. Allows you to access the user's security question, which acts as a security feature to verify the authenticity of the user.
    • Question. When the Change security question check box is clicked, this text box allows you to define a question used to verify your identification when resetting your password.
    • Answer. When the Change security question check box is clicked, this text box allows you to provide the answer to the specified security question.
  4. Type your current password in the Password text box, which verifies your identification before saving any profile changes. You always need to specify your password in this text box when making changes to your user profile.
  5. Once all changes are complete, click save.

6. About the LincDoc Interface

6.1. About the LincDoc Toolbar

The LincDoc toolbar displays several components. When used together, they enable the quick, accurate creation of eForms and Document Packages, as well as access to simple management and administration features.

The toolbar itself is highlighted below.

Form Selection Drop-Down List

This drop-down list, the primary option in the interface, allows you to determine which eForm or Document Package will be manipulated by other other toolbar buttons. The list itself contains the unique identifier and full description of each eForm or Document Package that you can access.

When an eForm or Document Package is selected, you can run (view in the Document Viewer), edit, or delete the selected item. You can also search for documents generated from the selected eForm or Document Package definition.

Note: Not all buttons on the toolbar are directly affected by the selection on this drop-down list.

Run

Once an eForm or Document Package has been selected using the Form Selection drop-down list, clicking run opens the item in the Document Viewer, and allows you to begin entering data.

If needed, you can open multiple Document Viewer instances at one time by selecting multiple eForms or Document Packages, and click run for each one. 

The search option allows you to locate and retrieve previously saved Document Packages or eForms.

After selecting a specific eForm or Document Packages, selecting search will list all relevant content to which the specific user has access. You may select from previously saved search parameters or create new criteria. The search screen is configured by adding parameters under the Search tab in the Admin interface. For more information, see the Search section.

Browse

The browse option opens the Browse dialog box, which allows you to view and manipulate folders and files in your directory structure.

Admin

The admin option allows for the creation, modification, and deletion of eForms and Document Packages.

Clicking the button displays a list of additional options, each of which can then be clicked.

Click one of the following links below for more information on these additional options:

User Profile

The interface is also defined by individual user profile parameters, which can be set using the profile button. This user information is established according to the user's role within the organization's LincDoc community.

Note: In the following example, the user name below the profile button is blurred, for security purposes.

For more information, see Customizing Your User Profile.

System

The system button provides a method for maintaining individual and group access to documents, monitoring LincDoc connectors, and other application-wide security settings.

Clicking this button displays a list of additional options. This list varies based on your user security level. For administrators, this button provides the ability to maintain the LincDoc appliance. 

Help

The help option provides a method for accessing LincDoc online help/documentation, opening a support ticket with the development staff, or viewing your license agreement. The current LincDoc version information can also be found here.

Windows

The windows button provides you with access to the list of currently opened windows (if any), and allows you to optionally tile the open windows on the workspace.

Hidden window are shown in italics, and can be re-displayed by selecting them. In the following example, the first two windows are current hidden.

Logout

Closes the current LincDoc session.

6.2. About Form Views

Several different views are used through the form creation process, with both eForms and Document Packages. It is recommended that you become familiar with these views before using LincDoc.

Proceed to one of the following topics below for more information:

Administration View

This view, also known as the Admin View, is the view used to build your form. Using this view (which is part of the Admin dialog box), you create and define the sections and fields that will be used in your form.

More specifically, the Fields/Sections tab on the Admin dialog box contains the relevant options.

This view (and the Admin dialog box as a whole) is accessed using the new option (for new eForms or Document Packages) or the edit option (for existing eForms or Document Packages) from the LincDoc toolbar's admin button.

 

For more information, see eForm Administration.

Data Entry View

After a form is created using the Admin dialog box (including the Fields/Sections tab and the other options on the other tabs), you can run (execute) the form, which provides access to the Data Entry View. This view is used to actually input information into the completed form.

 

This view is accessed by clicking the run button on either the LincDoc toolbar ... 

... or on the Admin dialog box itself.

Once the form's data is added using the Data Entry View, the form is submitted via the Submit button at the bottom of the Data Entry View, and the final form appears in the Document Viewer.

For more information, see Running a Form.

OpenForm View

This view is essentially the same as the Data Entry View, except that it runs in a dedicated web browser window or tab, instead of in the LincDoc interface.

Note: In the following example, the links on the web browser are obscured for security purposes.

You access this view using the link that appears when you click the link button on the Admin dialog box. 

When this button is clicked, the URL for your form is displayed on the Direct link dialog box, allowing you to either click it or copy it.

Note: In the following example, portions of the link are obscured for security purposes.

Also, this view allows you to pre-fill fields on the form. This is done by adjusting the direct link (URL) to have the field ID plus the value you wish to have for that field. The example below shows the normal direct link for running the form with ?prcRep_pn=Demo added at the end of the URL to pre-fill the "Sales Rep" field (field ID = prcRep_pn) with the value "Demo".

More URL formatting:

  1. Single field pre-filling. Add a question mark (?) to the regular direct link for running the form, the field ID, the equal sign (=), and the field value. For example, https://demo.lincware.com/lincdoc/doc/run/main/demoOB?prcRep_pn=Demo
  2. Multiple fields pre-filling. Separate the fields with the ampersand (&), i.e., add a question mark (?) to the regular direct link for running the form, the 1st field ID, the equal sign (=), the field value, the ampersand (&), the 2nd field ID, the equal sign (=), the field value, and so on. For example, https://demo.lincware.com/lincdoc/doc/run/main/demoOB?prcRep_pn=Demo&epl_id=55555
  3. Field value that includes a space character. Substitute the space character with %20, i.e., add a question mark (?) to the regular direct link for running the form, the field ID, the equal sign (=), the 1st word of the field value, %20, and the 2nd word of the field value. For example, https://demo.lincware.com/lincdoc/doc/run/main/demoOB?prcRep_pn=Demo%20User
  4. Date type field value. Keep in mind that the date format in the URL is yyyy-MM-dd, i.e., add a question mark (?) to the regular direct link for running the form, the field ID, the equal sign (=), and the date. For example, https://demo.lincware.com/lincdoc/doc/run/main/demoOB?today_dt=2099-12-31 

Note: This is only for links to running the form. This is not applicable for links to editing a previously saved form, but a similar result may be achieved if you use a custom event.

Document Viewer

The Document Viewer is used to display the "final" form, after the form has been created and submitted via the Data Entry View.

This view also allows you to download, email, and sign the form (if applicable). For more information on this view, see Using the Document Viewer.

Signature View

This special view is launched from the Document Viewer. It only appears if you have signatures in your form.

Note: In the following example, the user name has been obscured for security purposes.

For more information, see Signing the Completed Form.

6.3. About Terminology

This is a list of the most common terms used throughout this documentation:

Term

Definition

action

Actions are units of work that are fired in response to form events.

For example, sending an email containing a hyperlink to a document or displaying an alert message.

alert

A message box that is displayed to the end user during the data entry process.

authentication provider

See provider.

batch signing

A feature that allows you to sign multiple documents with a single signature.

bulk signing

A feature that allows you to sign multiple signature fields, in a single document, with a single signature.

boolean logic

A rule based on true or false, yes or no or the presence of one of two clearly opposed values.

calculated field

A field that is calculated by, or from a value(s) of another field.

click wrap signature

A type of signature whereby a user enters in their name and it is inserted into the generated document.

client ID

A container within LincDoc that stores all field definitions, source documents, generated documents and data. These cannot be created at the user level, but instead are directly tied to your license key - as created when you acquired LincDoc. In most cases, you will only have access to a single client ID, although multiple client IDs can be purchased, if needed.

codelist (code list)

Codelists are objects within LincDoc that drive drop down choice lists.

For example, a form question that has a yes/no answer.

There are multiple types of codelists available, including simple, advanced, and JDBC.

condition

Conditions are Boolean expressions that are evaluated throughout the lifecycle of an eForm in response to form events. When the conditions are true, then certain actions are allowed to happen based on the configuration of the eForm.

condition to display

Logic used to conditionally display or hide a field or section. Sometimes abbreviated as "c2d".

conditional text/paragraph

Refers to a snippet of text inside a Microsoft Word (or OpenOffice) source document that is conditionally shown in a generated document. The condition of the text is evaluated at document generation time, if the condition is true then the text is included else it is not included.

CSV

Short for Comma Separated Values, which is a type of text output where each field's value is separated by a comma. Values that may contain commas may be surrounded by double quote characters.

For example: "Jane","Smith","123 Main Street","Southtown","IL","65099"

DANG

Short for Data And Number Generator, which is a key component of the LincDoc administrator interfaced used to create conditions, actions, and calculations.

data entry

The term used to describe the process of an end user filling out the form fields of a particular eForm or Document Package.

DDL

Acronym for drop-down list.

document

A file created using an eForm of Document Package. Basically the "filled-in" version of an eForm or Document Package. Also known as a generated document.

document inclusion logic

Boolean logic rule that selects a document based on the existence of a specific field or fields.

Document Package

Extends what an eForm can do by allowing one or many related Word or PDF source documents to be assembled based on predefined business logic.

document repository

A searchable storage area where documents and data are saved. LincDoc has its own internal document repository, and third party repositories such as Laserfiche are also supported.

document viewer

The window in which the generated document is displayed.

DRAT

Short for Document Refinement Annotation Transformer, which is an extension of the LincDoc markup language for more sophisticated field resolution scenarios.

drop-down list (DDL)

An eForm control that when clicked on presents a list of choices from which the user must choose one.

eForm

An electronic web form composed of a single Microsoft Word or PDF document. The document contains zero or more field placeholders. It is also comprised of field details, sections, conditions, actions, events, and lookups.

end user

Any person who uses LincDoc to complete a preconfigured eForm or Document Package.

event

Help describe significant points in time during the lifecycle of an eForm or Document Package.

Examples of events include "on load" which fires when an eForm is first executed, or "on generate" which fires when the end user has completed the data entry process and is ready to generate their document.

field

A placeholder inside a source document for the purpose of filling with data either manually or from a database.

fields document

A source document used for the sole intention of field placeholders only, it is never meant to be part of a generated document. This technique is often used with more complex document packages which have many source documents: the fields document consolidates LincDoc fields to a single entity.

flattening

The processes of removing the ability to change field values in a PDF form.

function

A system calculation that returns a single value given zero or more inputs.

generated document

See document.

global field

Field definitions that can be applied to any field of the same name or pattern when creating a new eForm.

inclusion logic

The use of Boolean logic to determine if a paragraph or document should be included when generating a new document.

input constraint

A simple input mask or regular expression that can be applied to a field to enforce what data is allowed for a field.

JDBC

Short for Java Database Connectivity.

LDAP signature

A type of signature in LincDoc whereby the user "signs" the document by being prompted to re-enter their LDAP password at the time of signing. Often used in combination with the Active Directory integration module.

LDAR

Short for LincDoc Archive. An eForm definition can be exported as an .ldar file, and imported to another LincDoc VM.

LincDoc administrator

The person responsible for creating eForms and corresponding field elements, conditions, lookups, actions, etc. within the LincDoc system for the end user community.

LincDoc markup language

The term used for "<<...>>" and "<<<...>>>" expressions inside Microsoft Word documents that respectively identify fields and conditional paragraphs.

lookup

A query that searches for data in an external system.

LWSA

Short for LincWare System Administration Portal. Portal for all server level configuration options.

multi-phase signatures

The term is used to describe a document that contains multiple signature fields, and those signatures are not all signed in the same browser session: the signatures happen in different phases.

multitenancy

A type of software architecture where a single instance (installation) of the software runs on a server, but is designed to virtually partition (divide) its data and configuration. In this arrangement, each client organization (known as client IDs in LincDoc) uses a customized, virtual application.

In the LincDoc environment, multitenancy is used to separate sets of forms and data.

multi-value field

A repeatable field that takes on multiple values. These are sometimes called "multi-row fields" or "pound fields" (because in the LincDoc markup language they are always terminated by a pound sign (#)). These field types are only available in Word source documents.

Example:

  • An eForm that captures a list of part numbers. 
  • A field that captures multiple quantities would be marked as quantity# and would represent quantity1, quantity2, quantity3, etc.

node

A specific item within a repository, accessed via the Browse dialog box. Nodes can be documents, files, or folders.

OpenForm

The term used to describe when an eForm is launched in a separate browser window (or iframe), and none of the normal LincDoc desktop controls are present (for example, no top toolbar with buttons for search, run, help, logout, etc.).

This method is the preferred way to run eForms for end users because it is very directed in the sense that all they can do is complete the form in front of them.

paragraph inclusion logic

A condition that shows or hides a paragraph in a generated document. Only applies to Word source documents.

parse/reparse

The process of resolving/finding fields in a document. A reparse operation typically takes place whenever a source document is altered.

PDF

Acronym for "portable document format".

pound field

Another name for a multivalue field.

provider

Also known as authentication providerActs as a container for a specific set of users and groups. They can be created to control application access. They are created at the client ID level, making them available to other users with access to your current client ID.

required condition

Refers to a condition attached to a particular field that determines if the field must be non-blank before proceeding. Just before document generation time the condition is evaluated. If it is true and the corresponding field is blank then processing stops – the user is shown a warning message that they must fill in the field before proceeding.

section

The term for a container/area within an eForm that contains one or more related fields.

signature

Both a person's name, used to formalize a document, as well as a general term for the information that applies to all form fields to which a signature itself is applied. For more information, see About Signatures and Stamps.

signature receipt

A signature feature that displays the actual signature used on a form, information about the signature (such as the name of the user who signed and the date/time), and provides buttons for downloading the corresponding signed form or just the receipt information to a file.

signature stamp

An image that can be used in place of a script font representation of a signature, and is a digital representation of your actual signature. For more information, see Using Signature Stamps.

source document

A Microsoft Word or PDF document containing zero or more fields. In the case of Word, the LincDoc markup language is used to denote fields. For PDF, FDF fields are used. Adobe Lifecycle forms are also supported. 

source document library (templates)

The library of documents available to users in LincDoc.

SQL repository

A back end storage system that is based on a relational database. Currently, this database must be either PostgreSQL or Microsoft SQL Server.

Note: This feature is available with LincDoc version 3.3 and later releases.

subject matter expert

When designing a new eForm, this is the person who has the knowledge and expertise to provide guidance on the finer details of the form. This person also has a thorough understanding of the business processes and high level workflow logic that often accompany an eForm.

stamp

An electronic record, used with signatures, that captures details essential to demonstrate the authenticity of the signature. For more information, see About Signatures and Stamps.

superuser

Similar to a Windows Administrator account, this type of user is given access to a large majority of the LincDoc system and its settings. Typically, a non-cloud installation has only one superuser account called admin. Cloud installations never have a superuser account for security reasons. 

synchronization/sync/on sync

An event indicating that a mobile device (for example, an iPad) is pushing locally saved forms/data to a LincDoc server.

TIFF

Short for "tagged image file format".

token based name

Used to describe the process of substituting tokens for form field values, especially in the case of naming a generated document.

For example, the admin can create a token based name in which one of the tokens is the "lastName" field collected from an eForm, plus other tokens for the current date, followed by the file type ".pdf".

Topaz signature

A type of signature using one of the supported devices offered by Topaz.

TortoiseSVN

An optional third-party plugin for MS Windows Explorer that allows administrators to check-in and check-out documents and eForms.

UI

Short for "user interface" or the portion of the application with which users directly interact.

UUID

UUID (Universally Unique IDentifier) values can be thought of as random strings such as: 7402b0a6-d4da-489b-9955-8cc3f87735cb. UUID generators are very good at never producing the same string twice.

For every document generated in LincDoc (regardless of the repository type: SQL Repository, Laserfiche, or Docuware), a UUID is assigned that is 36 characters long. The DANG function DocID can be used to return this value.

The value is actually internally generated the moment you start a brand new form (and never changes for that form thereafter). This value is critical to doing any kind of workflow with a document, and is used to create URLs that allow direct access to manipulate a particular form (editing, viewing, signing, etc.). 

For more information on UUIDs, click here.

use case

This term refers to describing a situation that highlights a particular set of features and/or requirements of an eForm. For example, a form that requires several signatures from the same signee is a good "use case" for LincDoc's bulk signing feature.

user

Short for "end user".

user profile

Stores the user's name, email address, time zone, password, and password reset question.

6.4. About the Online Help

This online help system contains information related to using LincDoc. It is written with two audiences in mind:

  • An administrator who will be responsible for setting up the system for use by the general user community at any given organization
  • An general user who will use the application to create eForms or Document Packages

Specifically, it will contain information related to the following:

  • Creating a new eForm or Document Package
  • Merging data from third party databases
  • Setting up form fields
  • Setting up security measures
  • Defining form logic, actions, and events

6.5. About Version and Plug-In Information

You can view both the currently installed version of LincDoc as well as plug-in compatibility information using the help button on the LincDoc toolbar.

When this button is clicked, several help-related options appear, and the current version number is displayed at the bottom of the list of options.

Clicking the help version opens a separate dialog box, that provides addition version information, as well as details about your currently installed plug-ins (including compatibility information). In the following example, the Credit Card Plugin has been detected, and it is noted that LincDoc version 3.2.2.13 is needed to use this plugin.

7. eForm Administration

7.1. About eForm Administration

Note: At this point in the documentation you should have executed the steps required to prepare the administrator's workstation.

This section describes how to use the LincDoc interface to create your eForms using the following four basic steps:

  • Prepare your document.
  • Create your eForm in LincDoc.
  • Configure the eForm's fields in LincDoc.
  • Publish your eForm.
Important: Virtually all information discussed in this chapter also applies to Document Packages as well. For more details, see Document Package Administration.

7.2. LincDoc Markup - PDF Source Files

Using a PDF as a source document provides some advantages over the use of a Word document, including the ability to set source level constraints on the layout of the document, utilize certified digital signatures, and more. However, the use of a PDF source document is not without a unique set of challenges. This topic provides information about setting up a PDF document, the challenges that you may encounter, and possible solutions.

About Supported PDF Software

You can use any tool that produces valid PDF AcroForms to create PDF form files for use in LincDoc. The two most common tools are Adobe Acrobat and Foxit Phantom PDF.

About PDF Optimization

Before adding fields to a new PDF, please optimize the size of the document by following the provided recommendations.

About PDF Limitations

A PDF document's fields cannot be modified by LincDoc during the execution of the data entry process. Therefore, if the amount of data being input into a field exceeds the available space provided by the PDF field in the source document, data will be lost from the final, generated document.

Note: The full data is still captured in the LincDoc database repository.

To resolve this issue, the following two options can be enabled inside of Acrobat which will allow text fields to adapt to the amount of data being entered:

  • Multiline. Allows a text field to contain multiple lines of input. Depending on the font size, these multiple lines can lead to two or three times the amount of data being displayed.
  • Automatic font sizing. Allows the PDF software to resize the font depending on the amount of data being entered (down to a minimum size). As the amount of data increases, the font size is reduced.
     

To maximize the amount of data displayed (and simulate a text area), you should enable both of these options. However, this combination must be evaluated for its effect on the readability of generated documents.

Creating a Field (Adobe Acrobat)

To create a field in a PDF source document, follow the steps described below.

Note: These steps assume that you are using Adobe Acrobat. If you are using different software, please consult that software's documentation for instructions.

  1. Create a source document.
  2. Open the document in Adobe Acrobat.
  3. From the Forms menu, click Add or Edit Fields.

  4. Right-click the document near where you want to add the field.
  5. Select the type of field you want to add.
    The currently supported field types are: text fields, check boxes, barcodes, and digital signatures.
  6. Place the field in the appropriate location in your source document.
  7. Type a name for the field. Check boxes must be named with a group name prefix, followed by an underscore, followed by the check box item name.

    Note: Field names in LincDoc may contain letters, numbers, and underscores.

Using Signatures in PDF Files

PDF files (source documents) provide enhanced methods for securing data via digital signatures. For more information, see Signatures.

Using LiveCycle (XFA Forms)

Adobe LiveCycle forms are created using LiveCycle Designer, a product which is included with Adobe Acrobat (since version 7). Refer to the following web site for more information (including background and a general history) on using XFA forms.

LiveCycle forms (also known as XFA forms) can be used as LincDoc source documents only if they are static PDF documents. LincDoc will basically handle these types of forms in the same way as traditional AcroForms (Adobe's original interactive form technology). LiveCycle has two formats, dynamic and static. If a LiveCycle form is added to LincDoc in the dynamic format, LincDoc will not be able to parse the fields and nothing will appear in the fields/section. You can find the format by editing the PDF in the LiveCycle designer and viewing the form's properties.

If the form is dynamic, you will need to execute a "Save As" operation, and save it using the Static PDF Form type.

Note: All fields must have a title, otherwise the LincDoc parsing engine will not detect the field when it is imported into LincDoc.

7.3. LincDoc Markup - Microsoft Word/OpenOffice Source Files

This topic describes the syntax that must be used to define fields when marking up a Microsoft Word or OpenOffice source document for use in LincDoc

About Fields Identification

A field is identified by two "less than" symbols ( << ) followed by the field name followed by two "greater than" symbols ( >> ). For example: <<firstName>>.

The following rules apply to field names:

  • Can only be composed of letters, numbers, and underscores
  • Must start with a letter or underscore
  • Must be 63 characters or less

About Hidden Fields

You can define hidden fields in your Word document. These fields never display in a generated document, but they will be part of the data entry process.

This field type is specified using the hidden option.

For example: <<firstName[hidden]>>

About Codelists

Both types of codelists available in LincDoc (codelists and codelist-custom) use drop-down list controls.

The value displayed from the drop-down list in your form is based on the "code" value of the underlying codelist. If you want to display the label, instead of the code value, you can use the CodeListLabel function via a Generation calculation.

Using Multi-value Fields Inside Tables

Sometimes a form needs to query the user to input multiple values (also known as multi-row values in LincDoc) for a particular set of fields that are to go into a table in the final document, and the number of values required is only known when executing the eForm. LincDoc will recognize this situation when any source document contains a simple two row table with the first row being a header row and the second row containing a template which describes what values are to be gathered at data entry time.

An example of this type of table is shown below:

First Name

Middle Initial

Last Name

<<fname#>>

<<minitial#>>

<<lname#>>

Notice how the field references end with a pound sign (#), which tells the LincDoc system that these fields are to contain multiple values. At data entry time the user will have the capability to enter as many rows of values as necessary. 

About Multi-value Tables

This technique does not work for PDF source documents. You must either use Microsoft Word files (.doc and .docx) or OpenOffice files (.odt).

  • The first row of the table is a header row, if and only if the table has 2 rows. In other words, the header row is optional (in which case you would have a table with just one row).
  • The first cell in the second row of the table must contain at least one field reference, and that reference must be the type that ends in a pound sign as demonstrated above.
  • The table must be a simple table with no split or merged cells.
  • The field names in the table must not end with a digit.
    For example, the following names are not supported:

    First Name

    Middle Initial

    Last Name

    <<fname1#>>

    <<minitial1#>>

    <<lname1#>>

  • Similarly, you must not create a field that ends with a digit, and the prefix of the field name matches another field inside a multi-value table.
    Using the above example, you would not want to create a field (external to the table) named fname1.
  • It is acceptable to embed multiple pound fields inside a single cell. For example:

    Name

    Age

    Address

    <<name#>>

    <<age#>>

    Street: <<street#>>

    City: <<city#>>

    State: <<state#>>

    Zip code: <<zip#>> 

Preventing Multi-value Tables from Automatically Expanding

In the advanced case of having a repeating source document where it is desired to not have a multi-value table in that document expand out,  you can use the no_multirow_expand option in that source document's field definitions to prevent the expansion of multi-value tables.

For example: <<product#[no_multirow_expand]>>

Note: You can use the hidden option, described above, in conjunction with the no_multirow_expand option, as long as the options are separated by a comma within the square brackets (for example: <<product#[hidden, no_multirow_expand]>>)

About Conditional Text

Conditional text allows you to dynamically include paragraphs or text in your completed documents. This functionality is only available with Document Packages. For more information, see Document Package Markup.

7.4. Creating an eForm or Document Package

This topic describes how to create a new eForm using the LincDoc admin interface.

Note: The process for creating a Document Package is nearly identical to the process described below.

  1. Login as a user with administration privileges.

  2. On the LincDoc toolbar, click the admin button.

  3. Select new from the list of options that appears.
    The create new document package dialog box appears.

  4. From the Document Type drop-down list, select eForm.

    Note: If you want to create a Document Package, select it from the drop-down list instead.

  5. Type a unique identifier for this new document in the corresponding text box.
    This entry acts as the name for the eForm or Document Package. This text will appear in the Form Selection drop-down list once the list is expanded and at the top of the various dialog boxes when working in LincDoc.

    Note: Spaces or punctuation characters are not allowed in unique identifiers. In addition, it must contain at least three characters but less than 32 characters.

  6. Enter a brief description for this eForm or Document Package in the corresponding text box.
    This text will appear in the Form Selection drop-down list and on the Admin dialog box's eForm/Document Package tab.
  7. Click create to generate the new eForm or Document Package.

In the example below, a new medical form is being created. The eForm type is being used, with a relevant descriptive identifier (eForm name) and a useful description.

7.5. Accessing the Administration Dialog Box

The Administration dialog box (also known as the Admin dialog box) is used to define your eForm (or Document Package). If you are creating a new eForm, you do not need to manually access this dialog box, since it appears automatically after you first create the eForm.

However, if you have already created your eForm and need to edit any of its settings, you'll need to access the Admin dialog box manually (as described below).

  1. From the Form Selection drop-down list, select the eForm (or Document Package) with which you want to work.
  2. Click the Admin button.
    Additional options appear.
  3. Click edit.
    The Admin dialog box appears, with the eForm (or Document Package) tab selected by default.

7.6. Settings Basic Options

The eForm tab on the Admin dialog box contains the basic parameters that control the eForm's general description, status, token options, the output format, and data entry customization options.

Proceed to one of the following sections below for more information:

Setting the Basic Options

The following basic options are available for your eForm:

  • Description. The description of the eForm previously entered in when creating the eForm.
  • Status. Specify whether the eForm is currently in test or production status. eForms that are in testing status are not generally visible to end users. LincDoc administrators will also see the field names for each data prompt when running or executing an eForm. The production status publishes the eForm definition for general use (as permitted by the eForm's security settings).
  • Allow use with LincDoc Mobile? When selected, the eForm definition is published for use on mobile devices via LincDoc Mobile.
  • Sort order. Allows you to specify a number, which is used to determine the current eForm's or Document Package's position in the list. The numbers are relative to other specified numbers for other eForms or Document Packages.

    For example, if you have one item set to "1" and another set to "3", but none set to "2", the item set to "3" will actually appear second in the list. You can also click the clear button to remove any current number.

    Important: If a number is not specified for an eForm of Document Package, it will appear below all items that do have a specified order number, and will be listed based on the item's identification number, which was automatically assigned when the item was created.

Setting the Generation Options

These options allow you to specify token-based names, output formats, and whether or not PDF are flattened.

Proceed to one of the following sections below:

Using the Token-based Name Option

The Token-based path for generated documents option allows you to name the generated documents using various predefined and form-specific tokens. You can also specify a folder in your repository where all documents created using this eForm or Document Package are stored. If the specified folder does not exist, LincDoc creates it automatically.

Note: This option is not available with a Laserfiche repository.

Click the arrow button to the right of the large text box to access the token-building dialog box.

The Token-based path for generated documents dialog box appears, allowing you to easily define the tokens (and field names) that will be used to specify your document's storage location and names.

All tokens, as well as a description of each token, are listed on the Tokens tab. Field names, as defined in your eForm or Document Package, are listed on the Fields tab.

You select a token or field for inclusion in the Path text box by first clicking it either tab's list. You can also directly select added items in the Path text box. When an item is selected in any location, it is highlighted (in the example below, the prim_last entry in the Path is highlighted).

The following options help you define the actual path:

  • Add. Places the selected token or field into the Path text box at the current location of the cursor.
  • Modify. Allows you to edit the DRAT expression for the selected item. The item is selected directly in the Path text box.
  • Delete. Removes the selected item from the Path text box.
  • < Left. Each time you click this button, the selected item is moved one place to the left.
  • Right >. Each time you click this button, the selected item is moved one place to the right.
  • Clear. Removes all items from the Path text box.
  • Show DRAT. If this check box is not selected, a simplified version path is shown in the Path text box. If checked, the full DRAT expression is displayed, with all syntax.

For example, if the path shown above is used, each document will be stored in a subfolder called med_forms (as specified by the med, _, forms, and / entries). The document's name is then dynamically created using the primary applicant's last name (the prim_last entry) and the primary applicant's first name (the prim_first entry), separated by an underscore. This portion is followed by the year, month, and date when the document was created (the yyyy-MM-dd entry), separated from the rest of the name by another underscore.

Note: The token pattern cannot end with ".pdf" or ".doc" (or any other file extension).

Tip: When editing directly in the DRAT expression, you can put any non-multivalue field names inside the << >>.

Using the Output Format Options

The Output format options allow you to specify the type of file generated when the eForm or Document Package is submitted. In addition, if you are generating PDFs, you can determine whether or not these files will be flattened when generated.

The following options are available:

  • Output format. Determines the type of file created when the eForm or Document Package is submitted and saved as a generated document. The available options vary based on type of source document used to create your eForm or Document Package. For more information, see the source format table.
  • flatten generated PDFs? When selected, any generated PDFs are flattened, meaning that data elements in the output document cannot be modified.

Setting the Data Entry Customization Options

The following options, available in the Data entry customization area, can be used to customize portions of you eForm's or Document Package's Data Entry View.

7.7. Specifying the Source Documents

Click the Source Docs tab. On the left pane you see a list of all uploaded source documents that exist across all forms in the system. The right hand pane shows the source document being used for the particular form you are editing. Notice this implies that the same source document can be used with multiple eForms: if you change something in the source document and re-upload it, it will affect all eForms that reference it.

Proceed to one of the following topics below for more information:

Uploading a Source Document

Once you have defined your eForm's source document, you need to add it to the eForm. This action is done by uploading the file to your repository via the LincDoc Admin dialog box. 

  1. If necessary, select your eForm and access the Admin dialog box.
  2. From the Source Docs tab, verify that the correct repository is selected from the drop-down list in the left column (if more than one repository is defined).

    The contents of the selected repository are displayed. The source document you upload will be stored in this repository.
  3. In the repository contents area (the left column), right-click anywhere in the white space.
  4. Click the upload option.
    The File Upload dialog box appears.
  5. Click the Browse button.
    The Open dialog box appears.
  6. Navigate to the file you want to use, and click the file to select it.
  7. Click Open.
    You are returned to the File Upload dialog box, and the selected file is displayed.
  8. Click Upload.
    The file is added to your repository.
  9. Proceed to Adding a Source Document to a New eForm below.

Adding a Source Document to a New eForm

Once a source document is added to your repository, you can add it to your eForm (or Document Package), allowing you to use it to build your eForm.

Note: Although you can add multiple source documents to your eForm, only the first one in the list is used at generation time. In addition, even though only the first document is used at generation time, all fields from all selected source documents are configurable using the Admin dialog box.

  1. Verify that you have added the correct source document.
  2. In the repository contents area (the Source Docs tab's left column), right-click the source file.
    Several options appear.
  3. Click add from the menu that appears.

    The file is processed and then added to the Source documents area.
  4. Click save.

Updating a Source Document

When you want to make a change to an existing source document, such as adding or editing existing fields, you can download the document to your local computer (if necessary), make the necessary edit, and then upload the updated version.

  1. If necessary, download the source document to your local computer. This step is necessary if you do not already have access to a copy of the source document.
    1. On the Source Docs tab, in the Source documents area, right-click the document you want to download.
    2. Choose download from the menu that appears.

      The file is downloaded to your local computer. The exact location of the file varies based on your web browser.
  2. Edit the document, as needed, using your forms authoring tool (such as Adobe Acrobat or Microsoft Word).
  3. Once you are done editing your document, re-upload the document.
    1. In the Source Docs tab's repository contents area (the left side of the tab), locate the source document.
    2. Right-click the document, and select upload from the menu that appears.

      The Really update? dialog box appears, informing you that the source document is currently in use in at least one form.
    3. Click Yes.
      The File Upload dialog box appears
    4. Click the Browse button, select the document you uploaded, and click Open.
      You are returned to the File Upload dialog box, and the selected document is listed.
    5. Click Upload.
      The source document is processed and all necessary updates are made to your eForm, based on the changes you made to the source document.
  4. On the Fields/Sections tab, click the reparse button to rescan the source document and update the field information.
  5. Edit your eForm, based on your source document changes, using the tabs on the Admin dialog box.

Removing a Source Document from an eForm

You can permanently delete a source document from your eForm (or Document Package) using the remove option.

Important: All fields from a deleted source document will disappear (permanently, once the eForm is saved) from the Fields/Sections tab. The exception is if a field is referenced by another source document that is part of the eForm definition. In this case, the fields will remain available from the Fields/Sections tab.

  1. On the Source Docs tab, in the Source documents area, right-click the document you want to delete.
  2. Choose remove from the menu that appears.

    A confirmation message appears.
  3. Click Yes to verify that you want to remove the source document.
    The document is removed from the Source documents list. However, it is still available from the repository contents area (as highlighted below).
  4. Click save.

7.8. Field Toolbar Options

Notice there is a Fields/Sections tab where you get to specify the finer details of section and field objects in the eForm or Document Package. Refer to the chapter on Field Attributes for the details of setting individual field configuration items.

The options described in this topic appear along the top of the Fields/Sections tab, as shown below.

About the Field/Section Tree

The left hand pane of the Fields/Sections tab shows all of the eForm's sections and fields in a simple tree structure. The order of the items in this tree dictates what the end user sees when completing the eForm.  Field sections may be collapsed or expanded by toggling the arrow icon that immediately precedes the section name.

Creating a New Section

You can add new section using the create new section button.

Arranging Fields and Sections

You can move fields and section within the Fields/sections list.

Note: Multiple fields can be selected by holding down the CTRL key and left-clicking each item you want to manipulate.

Once a field is selected, it can be moved using either of the following two methods:

  • In the Fields/sections list, you can drag-and-drop the field (or section) to a new location. A green check mark icon appears when a suitable location is being hovered over.
  • Click the move field(s) button and select the new location from the selections that appear.

Sections can only be moved using the drag-and-drop method in the Fields/sections list.

Reparsing

You can use the reparse button to force the system to rescan a modified (re-uploaded) source document.  Any new fields that are detected are automatically added to the OTHER section. Any fields that were removed from the source document are also removed from the Fields/sections list.

Conditional Paragraphs

Conditional text/paragraphs are only used in document packages, not eForms. Refer to the chapter on document package administration (link) for further details.

Applying Global Field Information

You can use the apply global fields button to quickly apply pre-configured field information from the global fields library. You can choose to apply the information to either all fields of only newly added fields.

Form Validation

After a user has completed the data entry process, it is sometimes desirable to run one or more checks to ensure the data being submitted meets predefined requirements. This step is where the form validation conditions button comes is used. Clicking this button open the Form validation conditions dialog box, which allows you to configure one or more conditions that will be checked when the form is submitted. If one or more conditions fails, you can display a customized alert message to the form's user, providing instructions on what needs to be done to proceed.

For more information on creating conditions, see Creating and Editing Custom Conditions.

7.9. Using Sections

This topic describes options available when working with form sections on the Admin dialog box's Fields/Section tab.

Proceed to one of the following topics below for more information:

About Sections

Sections allow you to logically organize fields within your form. Since any defined section appears in the Data Entry View when a form is being populated, you can use them to make your form easier to understand and complete.

An example Data Entry View, with sections highlighted, is shown below.

Creating a Section

By default, only the OTHER section appears on the Fields/Sections tab. You need to add additional sections by clicking the create new section button.

Clicking this button adds a new section to the top of the Fields/sections list. By default, it is labeled NEW SECTION. You can then rename the section, and define other attributes, as described in the next section.

Note: The OTHER section is simply a placeholder section to hold fields that have not yet been configured or placed in another section. Whenever a new source document is added into an eForm, all the fields are automatically placed in the OTHER section. In addition, this section never appears when a form is executed. In order for an end user to interact with a field, the field must first be moved from the OTHER section to a different section.

Using Section Attributes

Section attributes can be viewed using the Admin dialog box's Fields/Sections tab. They appear on the right side of the tab (the Section attributes area) when a section is selected (clicked) on the left side of the tab (the Fields/sections list).

The following section attributes are available:

  • Section name. Represents the section identifier, and appears as the header during completion of the eForm or Document Package.
  • Section long description. This description appears immediately under the section name, prior to any section fields, when using the Data Entry View. You can access the edit for this description by clicking the edit button immediately below the large dialog box. HTML syntax may be used to format the description's appearance. You can also create dynamic descriptions by clicking the dynamic button.
    For more information on creating section long descriptions, see Customizing the Long Description Text.
  • Condition to display. If desired, configure a condition that will be used to determine whether or not the section is displayed. For more information, see Using the Condition to display Option.
  • Calculated heading? Allows for the creation of dynamic section headings based on actual form input. These headings appear on the eForm's or Document Package's Data Entry View (or the Document Viewer).

    Important: The section's heading on the Fields/Sections tab can only be changed using the Section name text box.

    If you click this check box, you can access either the Calculation Wizard or the standard calculation editor via the corresponding arrow button (highlighted above, to the right of the check box). From this point on, you edit the heading's calculation just like any other calculation.

  • Column widths. Control the width of the label and data input columns.
  • Break after this section in LincDoc Offline? When selected, the subsequent sections are split during data entry into another "page" or tab on a mobile device.

Dynamically Defining a Section's Long Description

You can use conditions and custom text to create dynamic section long descriptions to complement dynamic section names. This option is activated using the dynamic check box in the Section attributes on the Fields/Sections tab.

  1. On the Fields/Sections tab of the Admin dialog box, select the section whose long description you want to dynamically create.
  2. In the Section attributes area, click the dynamic check box.
    Note: This option only appears when you click a section in the Fields/sections list on the left side of the tab.

    The Section long description text box and associated buttons are replaced with a single configure dynamic header button.
  3. Click the configure dynamic header button.
    The Configure header for dialog box appears.
  4. Create a dynamic section description by creating a condition and then defining the text for the description.
    1. Create a condition using the options in the condition column. For more information, see Creating and Editing Custom Conditions.
    2. In the header column, specify the text that will be used if the corresponding condition is true using any combination of the following two options:
      • Type text directly in the large text box.
      • Use the drop-down list above the large text box to insert the current user's username, the current user's regular name, or field values from your form.
    3. (optional) Add additional conditions using the + button to the right of the large text box.

      Note: The first condition in the list that is true is the one that is used to dynamically create the section header.

    4. Once you are done defining your condition, click save at the top of the dialog box.
      You are returned to the Fields/Sections tab on the Admin dialog box.

Moving Fields Between Sections

Fields can be easily moved between sections in your eForm or Document Package.

In most cases, you can simply drag-and-drop a field in the Fields/sections list on the Fields/Section tab. You can place the dragged field onto the section's name (which will put the field at the bottom of the current fields list in the selected section), or you can drop the field directly within a list of fields in the specific section.

You can also right-click a field in the Fields/sections list, hover over the Move to section option that appears, and select a new section for the field. By default, the field is placed at the end of the current list of fields in the selected section.

Sorting Fields in a Specific Section

You can alphabetically sort all of the fields in a given section on the Fields/Sections tab using the sort fields option. This option is accessed by right-clicking the section whose fields you wish to sort.

In the following example, the NEW SECTION has been selected (right-clicked), and the option has been highlighted. 

Deleting a Section

You can remove any existing section on the Fields/Sections tab using the delete section option. This option is accessed by right-clicking the section that you want to remove.

CautionAll fields within the section are also deleted when you delete the section itself.

7.10. Accessing Field Attributes

Field attributes are options that appear in the Field attributes area when a field is selected on the Fields/Sections tab.

 

For more information, see Defining Field Attributes.

7.11. Configuring Search Options

The Search tab is used to configure various options that will be available to end users when they search for documents within a repository.

Note: Searches are actually performed by choosing an eForm or Document Package from the form selection drop-down list and clicking the Search button.

Proceed to one of the sections below for more information:

Once search options are defined for an eForm or Document Package, users can search for specific documents as described in Searching for Generated Documents.

Defining Searchable Fields

You can choose up to five fields that can be used to help define filter criteria when a user searches the eForm or Document Package repository for previously generated documents. The order of the search results columns will mirror the order defined on the Search tab, as described below.

Note: Adding or removing index fields will result in a global change to all users who can search the form. 

  1. If necessary, select your eForm and access the Admin dialog box.
  2. From the Admin dialog box, click the Search tab.
    This tab contains two lists. The list on the left side of the tab (the available search indexes list) displays all fields in your current eForm or Document Package. The list on the right side of the tab (the current search indexes list) displays all fields that have been selected as search filters. By default, this list is initially blank (as shown below).
  3. In the available search indexes list (on the left side of the tab), select the field you want to use as a search filter.
    The field is highlighted.
    Note: A multI-value field may not be used as a searchable index and will be grayed out in the left pane.
  4. Click the add button.
    The selected field is added to the current search indexes list (on the right side of tab). Once added to this list, the field is searchable. In the following example, four fields have been selected as search filters.
  5. If you need to remove a field, you simply reverse the adding process by selecting a field in the current search indexes list (on the right side of the tab) and clicking the remove button.
    The field is removed from the current search indexes list and is no longer grayed out on the available search indexes list.
  6. Repeat step 3 through step 5 for all fields you want to use. You can select up to five fields for use as search filters.
  7. Once you have defined all of your search filter fields, click save.

Controlling Search Results

Several options are present in the bottom left corner of the Search tab. These options allow you to control certain aspects of the search feature.

The following options are available:

  • disable "edit a copy of this data record?" from search results? When selected, prevents the user from launching a new eForm or Document Package pre-populated with the data from any search result.
  • disable "retrieve" from search results? When selected, prevents the user from viewing the generated document associated with any search result.
  • enable "export csv" from search results? When selected, allows the user to download the data from any search result in a CSV (comma separated value) file.

Tip: There are additional controls that apply to searching on the Security tab. For more information, see Using Form Security.

7.12. Determining the Storage Repository

You can specify where you want your eForm or Document Package data stored using the Repositories tab. This tab lists all repositories currently associated with (defined for use with) your eForm or Document Package. You can specify a primary repository, which will be the one used to actually store your data. You can also add additional repositories, disable listed repositories, or delete repositories from your form.

For more background information on repositories, including supported types, what they store, and supported databases, see About Repositories.

Proceed to one of the following sections below for more information:

Specifying the Primary Repository

If more than one repository has been selected for use with your eForm or Document package, you can specify the main repository using the Primary column. If only one repository has been selected for use, it is, by default, the primary repository.

The repository specified as the primary repository will actually store your eForm or Document Package data. Other listed repositories are saved with the eForm or Document Package, retaining their configurations, but are not actually used for data storage.

Adding a Defined Repository

You can add a previously created repository to your eForm or Document Package using the new button.

Important: The repository that you want to specify must already be defined in your LincDoc environment as described in Creating a Repository.

  1. Access the Repositories tab on the Admin interface.
  2. Click the new button.
     
    The Configure for new repository dialog box appears.
     
  3. Select the previously defined repository from the drop-down list.
  4. Click OK.
  5. The repository is added to the list on the Repositories tab.
  6. If necessary, set the new repository as the primary repository.

Configuring a Repository

The method and options for configuring repositories varies based on the type of repository you are using (SQL Repository, Laserfiche, DocuWare, etc.).

Important: It is highly recommended that you not configure your repository (map your form fields to database fields) until you have completely configured your form. Doing so will help to reduce or eliminate field mapping issues that can arise if form fields are altered after database mapping are created.

For complete details on configuring repositories of all types, see Configuring Storage Repositories.

Disabling a Repository

You can temporarily deactivate a repository, without completely removing it from your eForm or Document Package, using the check boxes in the Disabled column. This action allows you to save the current configuration for use at a later time.

Deleting a Repository

You can completely remove a repository from your eForm or Document Package using the appropriate delete button to the right of the repository (as it appears on the Repositories tab). This action removes the repository from your Repositories tab as well as deleting the defined configuration. If you add the repository back at any time, but you will need to reconfigure it.

7.13. Specifying Actions

The Admin dialog box's Actions tab contains two lists that allow you to configure specific units of work that are executed in response to form events. Actions may be attached to direct user requests (such as when a button in a form is clicked) or events that occur during the processing of a form (such as a form being loaded or after a signature is applied).

About the Buttons List

The left side of the Actions tab shows all of the eForm's buttons in a simple tree structure.

 

The order of the items in this tree dictates the order of the eForm's buttons from left to right. Button definitions may be collapsed or expanded by toggling the arrow icon that immediately precedes the button name.

In the example above, the Submit button is the name of the first data input button. Always is the button's display condition. There are five associated actions with the submit button: clear hidden fields, validate, save, view document, and append uploaded file to document. There is an additional button named Cancel that is always displayed and has an action of close

Creating a Button

To add a button, click the arrow button that corresponds to the Data Input entry and select add button from the options that appear. A new button is added to the bottom of the list of buttons and is labelled NEW by default.

Tip: For a button click in a form to have meaning, it should have one or more associated actions.

Adding an Action to a Button

To add an action, click the arrow button on the button's entry in the Buttons list, and point to add from the menu that appears.

Hover over the action option, and select the desired action from the list that appears. For more information on each available action, see Actions.

Editing a Button's Action

Certain actions may have settings that can be edited. To configure these action types, click the arrow button that corresponds to the action in the list, and select edit from the menu that appears.   

Deleting a Button's Action

To delete an action, click the arrow button that corresponds to the action, and select delete from the menu that appears. The action is removed from the button's definition.

Editing a Button's Settings

Click the arrow button that corresponds to the button's entry in the Buttons list, and select edit from the menu that appears. The Edit button dialog box is displayed.

Each button has the following general attributes:

  • Label. The text that appears on the button itself, both in your eForm (if Show label described below is checked) and in the Buttons list on the Actions tab.
  • Show label. When this check box is cleared (unchecked), the defined button label is not shown on the form's Data Entry View. However, the label is still displayed on the Actions tab.
  • Stop on error. Prevents any subsequent button actions from proceeding when an error occurs.
  • Condition. Allows you to control the button's visibility. The standard conditions of Always or Never may be used or you may configure a dynamic condition. For more information, see Creating and Editing Custom Conditions.
  • Button image. Allows to you define an image that will appear on the button when viewed using the form's Data Entry ViewClick the arrow button displays a list of the available images. A preview of the selected image, as it will appear on the button, is displayed to the left of the arrow button.

Click save to apply your button settings.

Deleting a Button

To delete a button, click the arrow button that corresponds to the button's entry and select delete from the menu that appears. The button's definition is removed from your eForm.

Changing the Order of Items

You can alter the order of buttons (and action and rules) on the Actions tab by dragging-and-dropped them to new locations.

About the Event Tree

The right side of the Actions tab shows all of the eForm's events and related rules or actions in a simple tree structure.

Event definitions may be collapsed or expanded by clicking the + or - icon that immediately precedes the event's name. Follow the instructions above the configure the actions associated with an event. There are three events displayed on the example shown above: After signing, On sync, and After viewing document. After signing has two associated actions of save and view document. After viewing document has one conditional action (show HTML) based on the rule function of isOpenForm.

7.14. Using Form Security

You can grant specific types of access control to specific security roles for eForms and Document Packages using the Security tab.

About Form Security

Several form-specific roles can be configured. In each of these form-specific roles, you can select which overall security roles (specified at the global level) will have access to the form-specific role.

For example, if you want a role called "newrole" to have "view" access to the form, you tab would appear as shown below.

For more information on creating and configuring global roles, see Managing Security Roles.

Configuring Form Security

The Security tab is used to specify access control to an eForm or Document Package. Several different form-specific roles are available, and for each you can specify usage by any globally defined security roles.

  1. On the form Admin interface, click the Security tab.
    By default, the roles currently granted admin access to the eForm or Document Package are shown.
    In the following example, the admin and auth-provider-admin security roles have been granted admin access to the form (they are checked).
  2. Determine the form-specific role for which you want to specify global roles access. The following form-specific roles are available:
    • admin access. Allows users to edit or delete the eForm or Document Package.
    • test access. Allows access to the eForm or Document Package when it is in the test status.
    • run access. Allows the user to execute the eForm or Document Package.
    • view access. Allows the user to see the eForm or Document Package, but not editing, executing, or deleting is not allowed.
    • edit access. Allows the user to edit the eForm or Document Package.
    • delete access. Allows the user to delete the eForm or Document Package.
    • search access. Allows the user to search for generated eForms or Document Packages.
    • view access to all users' documents. Allows the user to view all user-generated documents.
    • edit access to all users' documents. Allows the user to edit all user-generated documents.
  3. If necessary, click the roles entry on the tab to view its roles (the admin access form-specific role is open by default).
    In the following example, the edit access form-specific role has been clicked.
  4. Using the corresponding check boxes, select the global security roles that will have the selected access role in the form.
    In the following example, the admin and form-admin roles have been given edit access to the eForm.
  5. When you have completed assigning global security roles to the eForm or Document Package's roles, click save at the top of the Admin interface.

7.15. Using the Advanced Options

Several advanced settings are available for your eForm or Document Package. These options are useful in specific situations that are described throughout this help interface. All of these settings are available on the Admin dialog box's Advanced Options tab.

You can click the help icon adjacent to any setting for more information, as shown below.

If you want to adjust the default setting, click the check box in the Use Default column to activate the option in the value column, and then adjust the value, as desired.

In the following example, the Document.pdf.addPageNumbers.fontSize setting's value has been changed from the default value of 10 to a new value of 12.

7.16. Deleting an eForm or Document Package

You can permanently delete an existing eForm or Document Package from your LincDoc system.

  1. From the Form Selection drop-down list, select the eForm (or Document Package) that you want to delete.
  2. Click the Admin button.
    Additional options appear.
  3. Click delete.
    The Confirm delete dialog box appears.
  4. Click Yes.
    The selected eForm or Document Package is removed.

7.17. Importing an eForm or Document Package

You can import previously exported eForm or Document Package files to a new client ID or LincDoc installation using the import option.

Importing the File

Using the import option, select the LincDoc export file that you want to import and start the import process.

  1. Click the admin button, and select import.
  2. The Import dialog box appears.
  3. Click the upload button.
    The Open dialog box appears.
  4. Select the desired export file from your local file system.
  5. Click Open.
    The export file is sent to the LincDoc server and the import process is started.
    If there are no problems found with the import, a message will display informing you that the import was successful. If problems were encountered, proceed to Fixing Import Issues.
  6. Click OK to return to LincDoc.
  7. Make sure to log out and back in to refresh any changes.

Fixing Import Issues

If the import process encounters problems, you'll be presented with a dialog box that enumerates the problems and allows you to choose how to solve them.
 
  1. For each listed issue, choose the solution that suits your needs.
  2. Click the Import button to complete the import process.
  3. After the import process is complete, log out of LincDoc and log back in to refresh any changes made.

About Issue Resolution Options

A resolution list is reported when an item in the import file (a document package, business rule, code list or source document) has the same name as one that is already in the system. For each problem item, your choices to resolve the problem are:

  1. Rename the imported item. This will give the imported item a new, unique name so that it no longer conflicts with the existing item.
  2. Replace the existing item. This will overwrite the existing item with the item in the import file.
  3. Keep the existing item. This will cause import process to skip the item in the import file. The imported document package will use the item that is already in the system.

An example will help to make the choices clearer. Let's say you're importing a new document package that uses a code list called "beverageTypes", which includes the codes "Coffee", "Tea" and "Soda". When you start the import process, a problem is reported, indicating that a code list called beverageTypes already exists in the system. The beverageTypes code list currently in the system includes the codes "Hot", "Dairy", and "Carbonated". If you choose the Rename option, the beverageTypes code list in the import file will be renamed to beverageTypes2. After the import, you will have a beverageTypes code list with "Hot", "Dairy", and "Carbonated", and a beverageTypes2 code list with "Coffee", "Tea" and "Soda". The newly imported document package will use the beverageTypes2 code list. If you choose the Keep option, the beverageTypes code list in the import file will be discarded, and the newly imported document package will use the existing beverageTypes code list with the "Hot", "Dairy", and "Carbonated" codes. If you choose the Replace option, the existing beverageTypes code list will be overwritten with the one in the import file. After the import, you will have a beverageTypes code list with the codes "Coffee", "Tea" and "Soda". Any existing document packages that use the beverageTypes code list will now show "Coffee", "Tea" and "Soda" as the available choices.

7.18. Exporting an eForm or Document Package

LincDoc allows you to export your Document Packages and eForms to a compact, portable archive file.

This feature can be used to:

  • Use the form in another client ID or LincDoc installation
  • Save a copy of the form in case it is ever corrupted

Your export file is given the LDAR file extension to identify it as a LincDoc export file.

You export by selecting the appropriate Document Package or eForm and then using the export option.
  1. From the Selection drop-down list, choose the Document Package or eForm that you wish to export.
     
  2. Click the admin button, and select export.

    The Export dialog box appears.
  3. Verify that the correct Document Package or eForm is displayed in the "Ready to export" message.
  4. Click the export button.
    The file is downloaded. The exact process for exporting the file differs based on your current web browser.
    The name of the export file is based on the Client ID, the Document Package/eForm ID, and a randomly generated four-character value, separated by underscores.

7.19. Using Document Refinement Annotation Transformer (DRAT)

Document Refinement Annotation Transformer (commonly referred to within the scope of LincDoc as DRAT) can replace LincDoc tags in strings.

Proceed to one of the following sections for more information:

About Tags, Content, and Syntax

DRAT tags use the following format:

<<:type:parameter1:parameter2:...>>

The content is rendered according to the type of tag used, each of which accepts different parameters. Many parameters are optional and trailing parameter separators ( ) may be omitted.

For example:

<<:doc-link:edit:Click Me::>>

Which is the same as the following:

<<:doc-link:edit:Click Me>>

Note: In this example, there is no :: at the end of the second entry.

For example:

<<fieldName>>

is considered the same as

<<:field:fieldName>>

Note: In this example, there is no : after << in the first entry.

Within DRAT tags, the \ (backslash) character is an escape character; meaning that the following character is taken literally. To use <, >, or : in a parameter, escape it with \.

For example:

<<:escape:\<\<\:\>\>>>

produces

<<:>>

About Usage

DRAT expressions can be used in the following places:

About Types

The following types are using with DRAT:

This type creates links to LincDoc documents.

Parameters

  • method
  • link text
  • scheme
  • event ID
  • type
  • fieldname containing document ID
  • providerID to use if login is required (only available with LincDoc 3.3.0 and above)
  • authentication token types, comma separated (only available with LincDoc 3.3.0 and above)

Method

  • view. Opens the document in the Document Viewer.
  • edit. Edits the document.
  • edit-copy. Edits a copy of the document.
  • sign. Opens the document in the Document Viewer with the sign prompt displayed.

Scheme

Used to set the scheme for the URL to something other than the default (which is "https"). Currently the only other available scheme is "lincdoc". When the "lincdoc" scheme is used, iPads are forced to open the LincDoc Mobile app instead of the Safari web browser. Note the "lincdoc" scheme is ONLY valid on an iPad with the LincDoc Mobile app installed. It is meaningless when running LincDoc on a PC.

Event ID

If the event ID is not empty, the event will be fired after the form is loaded.

Note: This parameter only works with the edit and edit-copy methods (listed above).

Type

  • html. Renders an HTML link. This type is the default.
  • plain. Renders the URL with no HTML tags (link text is ignored).
  • pre. Renders the URL inside HTML <pre> tags (link text is ignored).

Document ID Field

Used to define the field value that should be used as the document ID instead of the current document ID.

Example 1: doc-link

<<:doc-link:edit:link text:lincdoc::plain>>

produces

lincdoc://server.lincware.com/lincdoc/doc/edit/a6a0e89c-7bcd-4e82-87f1-7628e3e179ad

where a6a0e89c-7bcd-4e82-87f1-7628e3e179ad is an example UUID generated from a submitted form.

Example 2: doc-link

<<:doc-link:edit::::pre>>

produces something similar to this (note again the sample UUID, which will be unique for each newly submitted form)

<pre>https://server.lincware.com/lincdoc/doc/edit/a6a0e89c-7bcd-4e82-87f1-7628e3e179ad</pre>

Example 3: doc-link

<<:doc-link:edit:link text:::html>>

produces

<a href="https://server.lincware.com/lincdoc/doc/edit/a6a0e89c-7bcd-4e82-87f1-7628e3e179ad">link text</a>

Example 4: doc-link

<<:doc-link:edit:link text:::html:i9DocId>>

produces

<a href="https://server.lincware.com/lincdoc/doc/edit/a6a0e89c-7bcd-4e82-87f1-7628e3e179ad">link text</a>

where a6a0e89c-7bcd-4e82-87f1-7628e3e179ad is pulled from the "i9DocId" field (i9DocId being a field name from the currently running form).

About the escape Type

This type denotes escape content.

For example:

`<<:escape:<<>>`

produces

<<

About the field Type

This type prints field values.

Parameters

  • field name
  • multi-value index

About the user Type

This type prints user information for the currently logged in user.

Parameters

  • attribute

Attributes

  • name. full name
  • username. username
  • provider. authentication provider ID (only available with LincDoc 3.1 and above)
  • uid. user ID (only available with LincDoc 3.1 and above)
  • mail. email address

Example 1: user's name

<<:user:name>>

produces the user's full name.

8. Document Package-Specific Administration

8.1. About Document Package Administration

Document Packages extend eForm functionality by allowing even finer control in the generation of documents. This control includes the following elements:

  • Dynamic control of form language with conditional paragraphs (at the individual form level)
  • Document inclusion logic (with source documents)

Note: All features available with eForms are also available with Document Packages.

8.2. Using Conditional Text

LincDoc offers additional markup capabilities in order to enhance your document creation process. By providing these additional constructs, LincDoc allows you to add business logic into your forms with a much finer granularity.

Important: This feature is only available with Word source documents.

Using Conditional Text and Paragraphs

Conditional text uses a triple bracket notation and a condition ID. The condition ID is a small string which will later be turned into a LincDoc condition.

For example: You are creating a Document Package to generate a student waiver document. You only want to show a particular sentence if the creator of the document is under 18 years old. Here is what the related conditional text would look like inside the source document:

<<< is_under_18 ? You must provide a note from your parent (or guardian) stating you have permission to attend.>>>

The conditional text is comprised of the following components:

  • An opening triple bracket stanza: <<<
  • A condition ID (in the example above: is_under_18)
  • A question mark
  • The conditional text or paragraph (multiple paragraphs can be used, if desired)
  • A closing triple bracket stanza: >>>

Once you add a conditional text string to your source document and save it, you would perform the following steps:

  1. Login to LincDoc and select the Document Package from the Form Selection drop-down list.
  2. Access the Admin dialog box.
  3. On the Source Docs tab, upload the source document.
  4. On the Fields/Sections tab, click the reparse button.
    The conditional paragraphs button should now be available (no longer grayed-out).
  5. Click the conditional paragraphs button.
  6. Assign a condition to the desired condition ID.
    In the example above, it is is_under_18, so it is likely you would assign a condition age<18 (assuming the Document Package has an "age" field).

Using Nested Conditional Text

You can use nested conditional text in your document (a condition within a condition). Keep in mind that a closing >>> will always match back to the most recent <<<.

For example: The nested conditional text below is shown in yellow, while the outer conditional text is in light blue. Notice that, in order for the yellow text to even have a chance to render in the generated document, the outer (blue) condition must first be true.

<<< tax_year_before_2000 ?
Prior to the year 2000 you must also submit an itemized list for all capital expenditures that were the result of an IRA distribution.
<<< multiple_dependents ? Note that you are possibly eligible for further tax credits for your dependents, please call 585-555-1212 to see if you qualify.>>> Once you have completed your itemized list, please refer to Publication 5223 (Early Retiree Credits) to determine the proper set of next steps.>>> 

8.3. Using Source Document-Specific Options

Since Document Packages can include multiple source documents (specified via the Source Docs tab on the Admin dialog box), options are available that allow you to control how these source documents behave and how they are used.

The following three options, available from the Source Docs tab, can be used to control the behavior of the source document within the Document Package:

  • inclusion logic. Controls the presence or absence of the selected source document's contents in the final, generated document. For more information, see Document Inclusion Rules.
  • force a new page. (Microsoft Word source documents only) Forces a page break before the source document's contents appear in the final, generated document.
  • restart page numbers. (Microsoft Word source documents only) Resets the current page number counter to 1.

These options are accessed by right-clicking one of the source documents in the Source documents list on the Admin dialog box's Source Docs tab.

 

8.4. Using Repeating Source Documents

Sometimes there is a need for a source document to be repeated 1 or more times, but it is only known how many times it will be repeated once the user completes their data entry.

For example: Assume you are creating a document package to generate an apartment lease for one to four residents. The package is composed of two source documents: a base lease agreement and a resident application form. The base lease agreement contains a multivalue table to collect the residents names, which you want displayed in the base lease. You also make hidden fields to collect further details for each resident, but you don't want to display the details in the base lease agreement. instead, these details will be shown in the application forms which will follow the base lease.

The table used may look similar to the example below.

Resident name

Resident address

<<res_pn#>>

<<res_addr#[hidden]>><<res_city#[hidden]>><<res_state#[hidden]>><<res_zip#[hidden]>>

In the application form itself, field definitions similar to the following may exist:

Resident name: <<res_pn#>>

Street Address: <<res_addr#>>

City, State, and Zip Code: <<res_city#>>, <<res_state#>> <<res_zip#>>

To include a generated document for each resident, you would use the inclusion logic option for the source document.

  1. Select the Document Package from the Form Selection drop-down list.
  2. Access the Admin dialog box.
  3. On the Source Docs tab, right-click the appropriate source document in the Source documents list.
  4. Select inclusion logic from the menu that appears.

    The Edit inclusion logic for dialog box appears.
  5. Click the Generate a copy for each instance of the field option.
  6. From the option's drop-down list, select the correct table definition.
  7. Create a condition for determining the source document's inclusion in the final, generated document, or leave the default condition of Always.
  8. Click OK to apply the inclusion logic.

9. Field Attributes

9.1. About Field Attributes

Field attributes define the data entry widget type and how that widget performs in a LincDoc form. For example, you may have a phone number or date field in your form and you want the user to enter the correct number of digits in the number and pick a date from a pick list. Setting the field attributes will control how this field performs. In addition, there are other attributes that control how and when the field is displayed in the form.

9.2. Defining Field Attributes

This topic describes the field options that appear in the Field attributes area when a field is selected on the Fields/Sections tab.

 

Proceed to one of the following sections below for more information:

About Display-Only Attributes

The following attributes display information and cannot be edited:

  • Field name. Displays the name of the field as configured from the source document.
  • Appears inDisplays the first source document encountered that contains the field.

    Important: This attribute only appears when the advanced check box has been selected as described in Using the Advanced Options below.

Using the Basic Options

The following basic options are available:

  • LabelEnter the Label that appears to the user in the data entry process.
  • Field typeThis is a drop down list of the data types of each field in the data entry process. For more information, see Field Types.
  • Maximum number of rowsThis option is available only on multiline fields and controls the maximum number of repeating sets that may be entered by the end user.
  • Condition to displayDefines whether a field is displayed or not. The default selection of Always will display the field to the end user. Never will not display the field. Conditions may be configured to dynamically display the field based upon previous input. For more information, see Using the Condition to display Option
  • RequiredA value of Always/Never defines whether or not the field must be completed before proceeding in the data entry process. Conditions may be configured to dynamically require the field based upon previous input. Required conditions are discussed further here.

Using the Advanced Options

The advanced options appear in the Field attributes area when you click the advanced check box.

The following advanced options are available:
  • Label Calculation? Allows you to define a field's label, as it appears on the eForm's or Document Package's Data Entry View (or the Document Viewer) instead of using only a static label. In other words, this option allows for the creation of dynamic field labels based on actual form input.
    Important: The field's name on the Fields/Sections tab can only be changed using the Label text box.
    If you click the check box, you can access either the Calculation Wizard or the standard calculation editor via the corresponding arrow button. From this point on, you edit the label's calculation just like any other calculation. 
  • Short labelDefines the label that appears for this field when performing searches or modifying the set of index fields.
  • Force check required when hidden. If a field is conditionally hidden, but it is still required, selecting this option will ensure that the field is populated before the form is submitted.
  • Read onlyA value of Always/Never defines whether or not the field value may be entered by the user. Conditions may be configured to dynamically prevent the field from being edited. For more information, see Read Only Condition.
  • Input constraint. Defines the format criteria on how the user must enter a value in a field. For example, entering the value of "###-###-####" the user must enter a numeric value of 555-555-5555.  '#' signs denote numeric characters, 'X' denotes alpha characters. Typical Input constraints descriptions can be found in the Calculation Wizard documentation. Other options include all caps and proper name.  All caps forces entered text to capital letters. Proper name forces the capitalization of the first letter of each word.
  • Constraint warning messageDefines the text that is displayed to the user if the Input constraint is not entered correctly.
  • Alert conditionDefines a message box alert and its triggered condition. Alert messages are warnings for the end user. They do not prevent the user from continuing. To create an alert condition, select new condition from the option menu and configure the condition with the condition wizard. Once the condition or the standard Always option is selected, select edit alert message to enter the alert text. The alert text can contain previously entered user data.
  • Locking signature fields. Allows you to specify a signature field that, when a signature is applied, will lock this field. When the corresponding arrow button is clicked, a dialog box appears, allowing you to select any number of existing signature fields.
  • WidthNumeric value that defines how wide the field text area.
  • Max LengthNumeric value that defines the maximum number of characters that can be entered in a text area.
  • Calculated field? Calculated fields are values generated by the system in response to some user input. For more information, see Calculations
  • Button calculation? Calculations that are executed in response to a button press.
  • Default calculation? Defaults a fixed or dynamic value in the field. For more information, see Default Calculations
  • Generation calculation? Calculations that are executed when documents are generated. For more information, see Calculations
  • Clear value when hiddenWhen selected, this option will clear the field's value from being saved if its condition to display becomes false during user entry.
  • Actions and ButtonsConfigures the actions executed in relation to a user's interaction with the field. For example, an action may be triggered by the on change event of a field.
  • Push values to fields. Allows you to place ("push") the contents of a multi-value field into a different form field. For more information, see Pushing Multi-value Field Content Into Other Form Fields.
  • Exempt from flatteningA value of Always/Never defines whether or not the field is flattened. Conditions may be configured to dynamically prevent the field from being flattened.
  • Field help. Context senstitive help that appears to the end user. When this is defined for a field a help icon will automatically appear to the right of the field. HTML syntax can be used to configure the text that is displayed. For more information, see Creating Context Sensitive Field Help.

9.3. Pushing Multi-value Field Content Into Other Form Fields

You can place the contents of a multi-value field into a set of non-multi-value fields on your form using the Push values to field setting.

About the Setting

The Push values to field setting is located on the Admin dialog box's Fields/Sections tab.

Note: You need to click the advanced check box to view this setting.

 

This feature was created to address a specific use case: when you have tables you wish to populate in a PDF source document.

Consider the following issue: Word source documents can contain multi-value fields while PDF source documents cannot. Therefore, in these situations, a Word document is introduced into the LincDoc form solely for its ability to generate multi-valued fields; then, with the use of this function, at submit time, this feature can "push" the multi-valued fields into static fields in the PDF.

Tip: In this scenario, the inclusion rule for the Word document is often to exclude the document from the final form.

Generally speaking, the final PDF will contain a table with fields using the naming convention shown in the example expense report form below. Refer to the example's table with Expense Date, Expense Description, and Amount. Notice that each field ends with a number to indicate its row within the table.

Notice the table in this example (in the bottom portion of the report) must have individual PDF fields for every cell in the table. These fields are the ones into which this feature will push values.

Using the Setting

The setting allows you to access a dialog box, which is used to specify the multi-value fields that will be "pushed".

  1. Click the arrow button adjacent to the setting, as shown in the section above.
    The Push multi-row field for dialog box appears.
     
    All of your LincDoc form fields are listed in the right column. By default, the left column is empty.
  2. In the right column, click the field whose values you want to push.

    Important: Be sure to pick the field that will be used to populate the first row of the final, PDF table, since values are pushed from the top of the selected fields list (left column) to the bottom of the list in the order they are displayed. This top-to-bottom order is known as the numeric order.

  3. Click the left-pointing arrow buttons to move the selected field to the left column.

    The field is now selected and will be used to create the PDF table.
  4. Repeat step 2 and step 3 until all desired fields are selected and in the correct order in the left column.
    These selected columns (in the left column) will represent the multi-value subset.

    Tip: If there is to be a limit of five rows from the multi-value field, you should select five fields to push against. Remember that the selected fields numeric order is used, so if, for example, quantity# is used, you would push fields qty1, qty2, qty3, qty4, qty5, in that order (from the top of the list to the bottom of the list).

  5. Click OK.
  6. Save your form.

Notes:

  • If the multi-value field is of a certain field type (for example: integer), pushing it to a non-matching field type will convert it to match the new (pushed) field type. For example, a text field will be converted to an integer if pushed to an integer field type.
  • The field to which values are being pushed will now contain a calculation that will refer to the appropriate multi-value and subset.
  • You can use a longer process to achieve the same results by using a calculation and selecting a field matching entry of the multi-value field and subset.

9.4. Using Field Types

LincDoc provides a rich set of field types to choose from. Setting the field types is a critical step in the forms setup process, because it will dictate how each field can be used in the DANG system.

Tip: The field types for all fields should be assigned very early on in the setup process, as changing field types later in an eForm can lead to confusing behavior, in particular when the field is used in calculations for other fields. 

The field types fall into the following main categories:

  • strings
  • custom strings
  • numbers
  • dates/times
  • check boxes
  • signatures
  • barcodes
  • upload

Strings

  • text. Allows for alphanumeric entries such as names, addresses, etc.
  • text area. Provides a larger text area (compared to the text field type) to capture larger, multiple-line text inputs. For example, a field that allows a user to enter comments.

Custom Strings

  • codelist. Displays specific choices as a drop-down list. For more information, click here.
  • codelist-custom. Similar to a codelist, but also allows users to enter a value that does not already appear in the defined list of choices.
  • email. Forces the user to enter an email address with the address@domain.com format.
  • phone.Forces the user to enter a full phone number, including area code. For convenience, numbers can be entered with no dashes/punctuation, and LincDoc will format it automatically. For example, an entry of 5855551212 will be reformatted to (585) 555-1212.
  • social security number (ssn). Forces to user to enter a social security number with nine digits, and formatting is automatically updated. For example, 111223333 is automatically updated to 111-22-3333.
  • state. Allows for the choice of a U.S. state or territory.
  • zip. Enter a standard five-digit US ZIP code.
  • zip+4. Enter a standard five-digit US ZIP code with the addition of the four-digit code (plus four code) to further refine the ZIP code to a specific geographic segment within main five-digit code area.

Numbers

  • currency. Allows for currency values (with two digits after the decimal place).
  • decimal. Allows for numeric values that use a decimal point.
  • integer. Allows for numeric values only - no decimal point or values.

Dates/Times

  • date. Provides access to a calendar selection tool. Dates are formatted as month/day/four-digit year.
  • time. Allows you to specify a time. Abbreviated inputs are automatically converted. For example, an entered value of 9a is automatically converted to 9:00 AM.
  • datetime. Allows you to specify a combination of a date and time, so you can specify a particular time on a particular day.

Check Boxes

Check boxes cannot be directly selected from the Field type drop-down list. For more information, see Check Boxes.

Signatures

This field type is exclusive to fields that are defined as signatures in your form.

For more information on signature fields, see Configuring Signature Field Settings.

Barcodes

Code 128, Code 39, and PDF 417 barcodes are supported. You can use a calculation to control the data going in to the barcode.

There are options also for orientation, alignment, and scaling. Generally, the default settings are acceptable.

Upload

The upload field type allows you to upload a file to your eForm of Document Package.

Note: Uploaded files are not inserted into the generated document, only the names of the files will be shown. You can add an external file to your final form using the Append Uploaded Files to Document action.

9.5. Using Codelists

Codelists can be used to create drop-down lists from which form users can select various options. The options are typically defined by form administrators. However, you can also create codelists (the codelist-custom type) that allow users to type in additional options.

Proceed to one of the following sections below for more information:

About Codelists

LincDoc fields can be assigned one of two codelist types via the Field type attribute: codelist or codelist-custom.

When used in the Data Entry View, a codelist displays a drop-down list that contains defined choices, allowing users to select a single, specific value. Only the listed values can be selected.

codelist-custom is exactly the same as a standard codelist, but it also allows a form user to manually enter a value that does not appear in the existing list of choices.

Internally, all codelists are database objects that consist of an ordered list of codes and descriptions of those codes. They may reside either inside LincDoc's internal database or in one of the supported third-party databases.

Note: A third-party database can only be used if the Database Integration module has been purchased and configured. For more information, contact LincDoc Technical Support.

Creating a New Codelist

When necessary, you can create a new codelist that will contain the needed choices for your field.

  1. Open the desired form for editing using the Admin dialog box.
  2. Click the Fields/Sections tab.
  3. On the left side of the dialog box, select the appropriate field from the list of available fields.
  4. On the right side of the dialog box, select codelist or codelist-custom from the Field type drop-down list.
    Both of these options are configured using the same procedure. For more information on the difference between these two codelist types, see About Codelists.
  5. From the Codelist(s) attribute's drop-down list, click new.

    The New codelist dialog box appears.
  6. In the ID text box, enter an name for this codelist, which will appear on the Codelist(s) drop-down list.
  7. From the Type drop-down list, select one of the following options:
    • Manual entry. Allows you to manually define the values that will be included in the codelist.
    • Multi Value Field. Allows you to dynamically populate the codelist based on multi-value field(s) that exist within the current eForm or Document Package.
    • JDBC. Allows you to choose codelist values from an existing, third-party database
    • JDBC Advanced. Same as the JDBC option above, but allows you to type in your own SQL queries and use where clauses to specify conditional codelists.

    Note: The JDBC types can only be used if the Database Integration module has been purchased and configured.

  8. Click add.
    Additional configuration options appear.
  9. Proceed to one of the following sections below, based on the type of codelist you are creating:

Editing an Existing Codelist

You can edit any existing codelist directly from the Codelist(s) field attribute's drop-down list.

  1. Open the desired form for editing using the Admin dialog box.
  2. Click the Fields/Sections tab.
  3. On the left side of the dialog box, select the appropriate field from the list of available fields.
  4. On the right side of the dialog box, verify that codelist or codelist-custom is selected from the Field type drop-down list.
  5. Expand the Codelist(s) attribute's drop-down list.
    All existing codelists in your LincDoc environment are displayed.
  6. Locate the codelist you want to edit, and click the edit button that appears to the right of the codelist's name and description.

    A dialog box appears, displaying the current settings for the selected codelist.
  7. Proceed to one of the following sections below, based on the type of codelist you are editing:

Defining a Manual Codelist

There are two types: simple and advanced.

Defining a Simple Codelist

Simple codelists are codelists which contain codes (or short text phrases) that have obvious meaning to the user, and therefore do not require a description. For example, a basic list of medical plans available for selection (as shown below).

Defining an Advanced Codelist

If you click the advanced check box,  you can also add custom code for each entry (which is used internally by LincDoc to identify a selection) and edit a description for each entry. In a simple codelist, the code and label entries are the exact same. Descriptions appear immediately below the label in the codelist's drop-down list, providing additional information for each selection.

Some advantages of using separate codes and labels include the following:

  • From a database design perspective, it is often easier to use concise, short codes instead of potentially verbose labels.
  • It allows for the changing of a label, while not affecting the logic that is used to create reports (assuming some reports join up rows of data from different tables using the codes).

When the eForm or Document Package is run (the Data Entry View), the codelist displays both the label and description, as shown below.

Important: The code, not the label, will appear in the final, generated PDF document, as shown below.

However, if you want the description or label used in the final PDF instead of the code, the CodeListLabel and CodeListDescription DANG functions can be used to alter this default behavior. In addition, the functions may be combined with a generation calculation, if desired.

Defining a Multi-Value Field Codelist

You can dynamically populate the codelist based on multi-value field(s) that exist within the current eForm or Document Package. This type of codelist is specified using the Multi Value Field option from the Type drop-down list when creating a new codelist.

  1. Perform one of the following actions:

    The codelist dialog box appears, allowing you to define the codelist using a multi-value field.

  2. (optional) Provide a description of the new codelist in the corresponding text box.
    This description appears below the name of the codelist when selecting it from the Codelist(s) field on the Fields/Sections tab.
  3. Using the Any field in source table drop-down list, select any existing multi-value field in the table that will be used to create the codelist. This option is used to determine the table for the codelist. Any field in the table can be selected.
  4. (optional) Specify a condition if you want to execute one type of codelist (if the condition is true) and a different codelist under different (defined) circumstances.
    For example, if your company has an expense report where you want to run a different codelist based on the employee type, you could define conditions so that a specific codelist is displayed for employees of type "SALES" and a different codelist to displayed for employees of type "ENGINEERING". Each employee type would use a different condition.
    1. Click the Condition check box.
    2. If necessary, click the line that bisects the Condition check box to view the related condition options (as highlighted below with a mouse pointer).

      The condition options are displayed in an expanded area.
    3. Define a single condition or multiple conditions. For more information, see Creating and Editing Custom Conditions.
  5. Click the refresh button.
  6. (optional) Click the auto-map button, which, in most scenarios, automatically populates the codelabel, and description drop-down lists using the first three rows in the selected table.
  7. If necessary, specify the following information using the corresponding drop-down lists (if you did not use the auto-map button or if the auto-mapping is incorrect):
    • code. The field that will be used to specify the information that will be stored in the database and generated documents. This entry will appear on the final, generated PDF document.
    • label. The field that will be used to create the main entry seen in the codelist. This entry will appear in the corresponding drop-down list in the Data Entry View.
    • description. The field that will be used to create a description of the main entry. This entry will appear below the specified label
  8. Click save.

Example: If "1" is specified for code, "blue" is specified for label, and "the color of the item" is specified for description: The corresponding drop-down list on the form would show "blue" as an option, with "the color of the item" appearing immediately below the "blue" selection. If "blue" is selected, the value of "1" would be submitted via the form and stored in the database.

Once the codelist is defined, it can be dynamically created using the specified fields directly in the corresponding eForm or Document Package.

Defining a JDBC Codelist

JDBC codelist assumes that the table or view from which you want to extract codelist data already exists in your third party database. When the codelist is used, the data is extracted and inserted into the currently running LincDoc form.

  1. Perform one of the following actions:

    The codelist dialog box appears, allowing you to define the JDBC codelist.

  2. (optional) Provide a description for the codelist in the corresponding text box.
  3. This text will appear immediately below the codelist's name in the list of codelists.
  4. From the Data source drop-down list, select the existing data source (database connection) that the codelist will use.
    For more information on creating and configuring these connections, see Connecting LincDoc to an External Database.
  5. From the Table/View drop-down list, select the table or view in the specified data source that the codelist will use.

    Note: You can also upload data directly from a CSV file to a table using the upload CSV button or export information from the selected table to CSV file using the export CSV button.

  6. From the Sort column drop-down list, select the column in the table that the codelist will use.
  7. From the Sort direction drop-down list, select whether the data in the column will be arranged in ascending (A-Z) or descending (Z-A) order.
  8. (optional) Specify a condition if you want to execute one type of codelist (if the condition is true) and a different codelist under different (defined) circumstances.
    For example, if your company has an expense report where you want to run a different codelist based on the employee type, you could define conditions so that a specific codelist is displayed for employees of type "SALES" and a different codelist to displayed for employees of type "ENGINEERING". Each employee type would use a different condition.
    1. Click the Condition check box.
    2. If necessary, click the line that bisects the Condition check box to view the related condition options (as highlighted below with a mouse pointer).

      The condition options are displayed in an expanded area.
    3. Define a single condition or multiple conditions. For more information, see Creating and Editing Custom Conditions.
  9. Determine if you want to allow offline caching. This option applies to forms that are enabled to run on LincDoc Mobile (an iPad). Because forms on an iPad may be run without having a WiFi signal (network connection), it would otherwise be impossible to run the codelist, since the codelist connects to a database somewhere on the network, requiring a network connection. When this option is active, LincDoc Mobile will download the entire table that corresponds to this codelist when form definitions are refreshed on the iPad and a network connection is present.

    Important: Whenever a change is made to an eForm or Document Package (even a minor change, such as altering a field's label), LincDoc Mobile users must update their forms. This action also updates all offline-enabled codelists.

    Tip: It is recommended that you not use this option with tables that contain more than approximately a few hundred rows.

    1. Click the allow offline caching? check box.
      Additional cache options appear. 
    2. Specify one of the following cache policies from the corresponding drop-down list:
      • timed. Whenever you update forms on an iPad using information from the server, the offline codelists are refreshed. The act of refreshing starts the "timer" for each codelist. At the point that the codelist data is needed (for example, while running the form), this time is evaluated to determine whether the data for the codelist needs to be refreshed. If the iPad is online, the data will be refreshed and the timer reset before the codelist is run. If the iPad is not online (not connected to WiFi and the network), the codelist simply uses the existing offline data, and attempts to refresh the data the next time it is needed or the next time the forms are updated from the server.
      • userSession. A timed codelist, as described above, with a pre-determined duration of 24 hours.
  10. Click the refresh button.
  11. (optional) Click the auto-map button, which, in most scenarios, automatically populates the codelabel, and description drop-down lists using the first three rows in the selected table.
  12. If necessary, specify the following information using the corresponding drop-down lists (if you did not use the auto-map button or if the auto-mapping is incorrect):

    Note: You can re-use the same database column for both the code and label settings.

    • code. The field that will be used to specify the information that will be stored in the database and generated documents. This entry will appear on the final, generated PDF document.
    • label. The field that will be used to create the main entry seen in the codelist. This entry will appear in the corresponding drop-down list in the Data Entry View.
    • description. (optional) The field that will be used to create a description of the main entry. This entry will appear below the specified label
  13. Click save.

Defining an Advanced JDBC Codelist

You can use Advanced JDBC codelists to specify options using values from an existing, third-party database. In addition, you can define your own SQL queries and use "where" clauses to specify conditional codelists.

Note: advanced JDBC codelists are not supported on iPad (LincDoc Mobile), except if the SQL query does NOT contain a WHERE clause.

Specifying Advanced JDBC Codelist Settings

Settings for an Advanced JDBC codelist are specified using the codelist dialog box.

  1. Perform one of the following actions:

    The codelist dialog box appears, allowing you to define the JDBC Advanced codelist.

  2. (optional) Provide a description for the codelist in the corresponding text box.
    This text will appear immediately below the codelist's name in the list of codelists.
  3. From the Data source drop-down list, select the existing data source (database connection) that the codelist will use.
    For more information on creating and configuring these connections, see Connecting LincDoc to an External Database.
  4. In the large Query text box, enter your query. LincDoc field names can be used in a "where" clause to conditionally select data. Simply delimit each LincDoc field with << >>, as shown below for the field city.
  5. Once you have fully defined your query, click the refresh button to check for syntax errors.
  6. (optional) Click the auto-map button, which, in most scenarios, automatically populates the codelabel, and description drop-down lists using the first three rows in the selected table.
  7. If necessary, specify the following information using the corresponding drop-down lists (if you did not use the auto-map button or if the auto-mapping is incorrect):

    Note: You can re-use the same database column for both the code and label settings.

    • code. The field that will be used to specify the information that will be stored in the database and generated documents. This entry will appear on the final, generated PDF document.
    • label. The field that will be used to create the main entry seen in the codelist. This entry will appear in the corresponding drop-down list in the Data Entry View.
    • description. (optional) The field that will be used to create a description of the main entry. This entry will appear below the specified label
  8. Click save.

Using "where" Clauses in Advanced JDBC Codelists

The "where" clause can use any function supported by the underlying database. For more information, refer to your database's documentation.

Below is an example (building on the example shown above) assuming your database is Microsoft SQL Server. Suppose you want to select only those companies that are in cities whose name contains the string as typed by the user into the LincDoc "city" field. In addition, the entry should match case insensitively.

The following query can be used:

select * from dbo.companyinfo where lower(city) like '%' + lower(<<city>>) + '%'

With this query, if the user had entered for into the city field, the query would return companies in Fort Worth, Rockford, New Hartford, Fort Lauderdale, etc.

For another example, consider a situation where you have a table of copier manufacturers, called manufacturers, with column manufacturer, as shown below:

table: manufacturers

manufacturer

Kanon

Tosheeba

Parasonic

A second table exists of manufacturers' copiers (table name copiers) with columns manufacturer and copier_model. This table relates manufacturers to their respective copier models, as shown below:

table: copiers

manufacturer

copier_model

Kanon

K-310

Kanon

K-320

Kanon

K-330

Tosheeba

TS-5-A

Tosheeba

TS-5-B

Parasonic

Genesis I

Parasonic

Genesis II

Furthermore, assume that you have a LincDoc eForm or Document Package with fields of the same names as the database columns. The LincDoc field manufacturer would be set up as a simple codelist to the manufacturers table, and a JDBC Advanced codelist would be used for the LincDoc copier_model field. To select copiers based on the currently selected manufacturer, the JDBC Advanced codelist would use the following query:

select * from copiers where manufacturer=<<manufacturer>>

Creating Conditional Codelists

Conditional codelists allow a field to present a different list of choices to the user based on one or more conditions.

Note: You can also used Advanced JDBC codelists with "where" clauses to create conditional codelists.

For example, imagine a scenario where the field make asks the user to choose a particular copier manufacturer. Then the field model is a list of models from the manufacturer. The model's codelist depends on the copier manufacturer; it is conditional based on the value of make.

  1. Verify that you have selected codelist or codelist-custom from the Field type attribute.
  2. In the Codelist(s) attribute area, click the advanced check box.
  3. Click the configure button that appears.

    Note the codelists used as a conditional codelists can be of any type (manual, multi-value, JDBC, or advanced JDBC).
    The Lookups for dialog box appears.
  4. If you'd like to add a blank row to any codelist drop-down list, click the Add blank row check box.
  5. (optional) Add a label, describing when the blank row should be selected, using the Blank row label text box.
  6. In the condition column, specify the condition that you want to use for the first codelist.
  7. In the codelist column, perform one of the following actions:
  8. If desired, click the + button to add another condition and corresponding codelist.
  9. When you have completed your conditional codelist configuration, click save.

Deleting a Codelist

You can remove any existing codelist directly from the Codelist(s) field attribute's drop-down list. Once removed, the codelist will no longer be available for use with any eForm or Document Package.

Important: Since codelists can be shared across different eForms and Document Packages, care should be exercised when removing them. LincDoc does not scan and remove these codelists from all of your eForms and Document Packages in which they are referenced. As a result, execution errors will occur if any eForm or Document Package is executed that references a deleted codelist.

  1. Open the desired form for editing using the Admin dialog box.
  2. Click the Fields/Sections tab.
  3. On the left side of the dialog box, select the appropriate field from the list of available fields.
  4. On the right side of the dialog box, verify that codelist or codelist-custom is selected from the Field type drop-down list.
  5. Expand the Codelist(s) attribute's drop-down list.
    All existing codelists in your LincDoc environment are displayed.
  6. Locate the codelist you want to remove, and click the delete button that appears to the right of the codelist's name and description.

    A confirmation message appears.
  7. Click Yes.
    The codelist is deleted.
  8. Save your eForm or Document Package.

9.6. Using Check Boxes

Check boxes are represented by two special field types in LincDoc: a check box grouper field, and one or more check box items which compose the group. The grouper field type allows LincDoc to logically group the individual check boxes and present them to the user when completing an eForm or Document Package. The way in which this result is accomplished is by using check boxes in the source document, and applying a special naming pattern to the check boxes. The method varies depending on the source document type.

Proceed to one of the following sections below for more information:

About Check Box Names in Source Documents

When naming check boxes in your source document, you need to define both a group name and an item name using the following syntax:

groupname_itemname

The groupname prefix is used by LincDoc to determine related check box items so that they can be logically grouped together in the data entry interface. The itemname suffix is an unique identifier that defines the check box item.

For example, color_red, is a good name for a check box: color is the groupname and red is the check box itemname. For additional items, you could make more check boxes named color_blue, color_orange, color_green, etc.

Note: The groupname and itemname themselves cannot contain any underscores.

Creating Check Boxes in Word Source Documents

This section describes how to define check boxes in an Microsoft Word source document and specify the corresponding fields in an eForm or Document Package.

Important: There are two types of check boxes in Microsoft Word: Legacy and ActiveX. A Legacy check box must be used. ActiveX check boxes are not supported.

After making changes to your Word source document, you need to view the new fields in LincDoc.

Note: These steps were written using Microsoft Word 2010.

  1. Open Microsoft Word.
  2. Activate the Developer ribbon.
  3. In the Word document, place your cursor in the location where you want the check box added.
  4. On the Developer ribbon, in the Controls group, click the Legacy Tools button.
  5. In the Legary Forms area, click the Check Box Form Field option.
    A check box is added to the Word document.

    Important: ActiveX check boxes are not supported.

  6. Right-click the check box, and select Properties.
    The Check Box Form Fields Options dialog box appears.
  7. In the Field settings area, enter the name for the check box in the Bookmark setting. Be sure to use the groupname_itemname format described in About Check Box Names in Source Documents.
  8. Click OK to close the Check Box Form Fields Options dialog box.
  9. Repeat this process for each check box you want to add to your source document.
  10. Once all of your check boxes are defined, save the Word document.
  11. Upload the document to your resources repository.
  12. Proceed to Viewing and Configuring Check Boxes in LincDoc below.

Creating Check Boxes in PDF Source Documents

You can define a group of check boxes in a PDF document by first updating your PDF source file and then viewing the new fields in LincDoc.

  1. Open Adobe Acrobat, Foxit PhantomPDF, or any supported PDF creation software.

    Important: This procedure describes how to create check boxes in Adobe Acrobat and Foxit PhantomPDF.

  2. Open your PDF source document, and add a check box field to it. This process will vary based on the PDF software being used.
  3. Access the properties for the check box (such as via a right-click, Properties option).
  4. Enter the name of the check box. Be sure to use the groupname_itemname format described in About Check Box Names in Source Documents.
  5. (optional) If available, add a label to the Tooltip attribute. LincDoc will copy this value and use it for the Label attribute for this field.
  6. On the Properties dialog box, click the Options tab.
  7. Verify that the Export Value is set to Yes. This setting is case-sensitive, so be sure to type it exactly as shown (with a capital "Y").

    Important: If not set to Yes, the check box will never be checked when the form is generated (regardless of whether or not the user clicks it to check it).

  8. Repeat this process for each check box you wish to add to your PDF source document.
  9. Once all of your check boxes are defined, save the PDF file.
  10. Upload the document to your resources repository.
  11. Proceed to Viewing and Configuring Check Boxes in LincDoc below.

Viewing and Configuring Check Boxes in LincDoc

Once you have created check boxes in your Microsoft Word or PDF source document, you need to access the eForm or Document Package that uses the source document and configure the check box fields.

  1. Verify that you have added the desired check boxes to your Microsoft Word or PDF source document, as described above.
  2. Perform one of the following actions, based on your situation:
  3. Open the Admin dialog box.
  4. Click the Fields/Sections tab, and, in the list on the left side of the tab, locate the OTHER section.
    You should see at least one groupname entry and individual field entries. Each check box you created should be listed as an individual field. The groupname field is automatically created by LincDoc based on the prefixes defined in your source document. In the following example, there is one groupname (prim) and two individual fields (check boxes).
  5. Click one of the new, individual check box fields. 
  6. On the right side of the tab, notice that the Field type attribute is automatically defined as a checkbox item (and cannot be changed).

    Note: This field type is sometimes referred to as a grouper field.

  7. In the list on the left side of the tab, in the OTHER section, click a groupname entry.
  8. On the right side of tab, click the advanced check box.
  9. In the list of field attributes, locate the Minimum selectable and Maximum selectable attributes.

    These two attributes allow you to control the minimum and maximum number of checked items, respectively.
  10. If desired, set the Minimum selectable and Maximum selectable attributes by clicking the attribute's check box, clicking the arrow button adjacent to the attribute, and then defining a calculation.
  11. Perform any of the following actions, as desired:
  12. Save your eForm or Document Package.

9.7. Using Global Fields

Global fields allow an eForm or Document Package administrator to configure a specific group of fields at the same time.

Proceed to one of the following sections below for more information:

About Global Fields

This feature is used by adding a specific suffix to certain field names in your source document (known as a pattern). This pattern is then used by a global field to locate the fields in your form that will be updated, based on the field attributes defined within the global field itself. In short, you can easily apply changes to multiple fields without having to update each field individually.

For example, you could add a pattern to all of the date fields in your source document. Then, a global field could use this pattern to locate the date fields, and push any updated attributes (defined in the global field itself) to each of the individual date fields with minimal effort.

Note: An example of global field usage, used to update specific date fields in a form, is described at the end of this topic.

Creating a Global Field

Global fields are created using the Global Fields dialog box. During the creation process, you both define settings for the global field (including the pattern that it will use to locate the fields it will update) and attributes. These attributes are then "pushed" to the individual fields that are updated by the global field when it is applied.

  1. On the LincDoc toolbar, click the admin button, and select global fields from the menu that appears.
    The Global Fields dialog box appears.
  2. Click the add button.

    A new entry is added to the global fields list on the left side of the dialog box.
  3. Click the NEW entry to select it.
    Various attributes appear on the right side of the dialog box.
  4. In the Name text box, change the default NEW entry to a name that describes the group of fields that will be affected by this global field.
    This entry will appear in the list on the left side of the dialog box, and is the name of the global field itself.
  5. In the Pattern text box, specify the pattern that will be used to identify the fields affected by this global field. Remember, all standard form fields that you want affected by this global field need to use this pattern in their field names (within the source document).
  6. In the Section text box, specify a section into which all affected fields (fields that use the global field's pattern) will be placed. This setting is optional. If you want your fields to remain in their current sections, simply leave this text box blank.
  7. Edit the field attributes, as desired. These attributes will be used by all fields that match the pattern defined above, when you apply this global field.
    For more information on these attributes, see Defining Field Attributes.
  8. Click the save button.
  9. Click OK to acknowledge the action.
  10. Proceed to Applying Global Fields below.

Editing Global Field Settings

You can edit the Name, Pattern, or Section settings of a global field at any time. However, there may be implications, as described in the following procedure.

  1. On the LincDoc toolbar, click the admin button, and select global fields from the menu that appears.
    The Global Fields dialog box appears.
  2. From the global fields list, click the global field whose settings you want to edit.

    The fields settings and attributes appear on the right side of the dialog box.
  3. Edit the following attributes, as desired:
    • Name. This setting is only used in the global fields list on the left side of the Global Fields dialog box, so you can change it at any time without impacting the affected form fields.
    • Pattern. This setting should be changed with care. Unless you have updated all of the affected fields' names in your source document, changing this setting could cause the global field to not work properly.
    • Section. This setting can be changed, if you'd like to update the section where all affected fields are stored. The old section, if one was specified, will still be present on the Fields/Sections tab. You can delete it manually, if desired.
  4. When you are satisfied with the setting changes, click save.
  5. Click OK to acknowledge the action.
  6. Apply the global field.

Editing Global Field Attributes

You can edit the attributes of a global field (the attributes that are "pushed" to the affected, individual  form fields) at any time.

  1. On the LincDoc toolbar, click the admin button, and select global fields from the menu that appears.
    The Global Fields dialog box appears.
  2. From the global fields list, click the global field whose attributes you want to edit.

    The fields settings and attributes appear on the right side of the dialog box.
  3. Edit the field attributes, as desired. Remember, these attributes will be used by all fields that match the pattern defined above, once you apply this global field.
    For more information on these attributes, see Defining Field Attributes.
  4. When you are satisfied with the attribute changes, click save.
  5. Click OK to acknowledge the action.
  6. Apply the global field.

Applying Global Fields

After global fields have been created or edited, you can either apply them to all affected fields or only to fields that have been recently added to your eForm or Document Package (since the last time the global field was applied).

Important: Changing the attributes of an existing global field has no effect on any field that was previously updated using that global field. The only time global field settings are applied is when the apply global fields button is used, as described below.

Applying All Global Fields

You can apply global fields to all affected fields (fields that use the pattern defined in the selected global field).

  1. Verify that you have set all desired global field attributes.
  2. Open the eForm or Document Package whose fields you want to update.
  3. Click the Fields/Sections tab.
  4. On the toolbar at the top of the tab, click the apply global fields button.

    The Auto Field Setup dialog box appears.
  5. Click the all fields option.
  6. Click apply.
    The affected fields are updated, based on the current attributes defined within the global fields themselves.

Applying Only New Global Fields

You can apply global fields only to newly added fields that use the pattern defined in the selected global field. New fields arise when you have an existing eForm or Document Package and its source document is modified, with one or more fields being added.

  1. Save and upload your source document.
  2. Verify that you have set all desired global fields attributes.
  3. Click the Fields/Sections tab.
  4. On the toolbar at the top of the tab, click the reparse button.
    Any new fields added to your source document will appear in the OTHER section on the left side of the Fields/Sections tab.
  5. On the toolbar at the top of the tab, click the apply global fields button.

    The Auto Field Setup dialog box appears.
  6. Click the new fields option.
  7. Click apply.
    Only the affected new fields are updated, based on the current attributes defined within the global fields themselves.

Exporting and Importing Global Fields

You can import global fields that have been exported from another instance of LincDoc or from a different client ID within the current instance of LincDoc. This option allows you to share global forms easily and efficiently, if needed.

  1. Open the instance of LincDoc that contains the global fields you want to export.
  2. On the LincDoc toolbar, click the admin button, and select global fields from the menu that appears.
    The Global Fields dialog box appears.
  3. On the dialog box's toolbar, click the export button.

    An XML file containing all of the defined global fields is created and downloaded to your local system.

    By default, this file is named GlobalFields-<your_client_ID>.xml.

    Note: The exact method of downloading will vary based on the browser you are using.

  4. Perform one of the following actions, based on your needs:
    • Copy the XML file to a computer running the instance of LincDoc into which you want to import the global fields.
    • Change to the client ID into which you want to import the global fields.
  5. If necessary, start LincDoc.
  6. On the LincDoc toolbar, click the admin button, and select global fields from the menu that appears.
    The Global Fields dialog box appears.
  7. On the dialog box's toolbar, click the import button.

    The Import Global Fields dialog box appears.
  8. Click Browse.
  9. Navigate to the location of the XML file you exported earlier in this procedure.
  10. Click the XML file to select it, and click Open.
    You are returned to the Import Global Fields dialog box, and the selected field is displayed.
  11. Click Upload.
    The imported global fields appear in the global fields list on the left side of the Global Fields dialog box.
  12. If necessary, edit the imported global fields.
  13. Click save.
  14. Click OK to acknowledge the action.

Importing Fields from an eForm or Document Package

You can copy defined fields from an existing eForm or Document Package, adding them to the currently open eForm or Document Package for use as global fields, using the import from Document Package button on the Global Field dialog box's toolbar.

  1. Verify that the eForm of Document Package into which you want to import the fields is open (appears on the Form Selection drop-down list).
  2. On the LincDoc toolbar, click the admin button, and select global fields from the menu that appears.
    The Global Fields dialog box appears.
  3. On the dialog box's toolbar, click the import from Document Package button.
    A list of eForms and Document Packages appears.
  4. Select the eForm or Document Package that contains the global fields you want to import.
    The Select the fields dialog box appears, listing all of the fields in the selected eForm or Document Package.
  5. Using the check marks on the left side of the dialog box, select the fields you want to import and use as global fields.
  6. Click select.
    The fields you chose appear in the global fields list on the Global Fields dialog box.
  7. Configure the newly added fields.

Deleting a Global Field

You can delete a global field at any time via the Global Fields dialog box.

  1. On the LincDoc toolbar, click the admin button, and select global fields from the menu that appears.
    The Global Fields dialog box appears.
  2. Click the global field that you want to delete. The field is highlighted.
  3. Click the delete button that appears.

    The global field is removed.
  4. Click save.
  5. Click OK to acknowledge the action.

Example: Using a Global Field to Update a Form's Date Fields

In this example, the dates fields in a form will have a global field applied to them, allowing for an easy change to a specific field attribute.

  1. In the source document used in this example, notice that two date fields to use _dt extension (at the end of the field names). This extension, highlighted below, will be used as the pattern for identifying fields affected by a new global field.
  2. On the LincDoc toolbar, click the admin button, and select global fields from the menu that appears.
    The Global Fields dialog box appears.
  3. Click the add button.

    A new entry is added to the global fields list on the left side of the dialog box.
  4. In the global fields list, click the NEW global field.
    The global field's settings and attributes appear on the right side of the dialog box.
  5. In the Name text box, type all dates to replace the default NEW entry.
  6. In the Pattern text box, type *_dt to identify the fields that will be affected by this global field.
  7. In the Section text box, type main_dates. The date fields affected by this global field will be added to this section, which, since it doesn't already exist in this example, will be created on the Fields/Sections tab.
  8. From the Field type drop-down list, select date.
  9. From the Required drop-down list, select Always.
    When finished, your global field should appear similar to the example below.
  10. Click the save button.
  11. Click OK to acknowledge the action.

Based on these settings, whenever this global field (now called all dates) is applied, two fields will be impacted (today_dt and start_dt). First, the date fields will be placed in a new section (called main_dates). Second, the fields Field type attributes will be set to date. Finally, their Required attributes will be set to Always.

You can also adjust these global field settings and attributes at any time, to adjust the behavior of the global field, including any of the following actions:

  • Change the Section setting to place the two date fields in a different section on the Fields/Sections tab.
  • Adjust the Required setting to Never.
  • Change any other listed field attributes (basic or advanced) to alter how the two date fields are affected when the global field is applied.

10. DANG Rule Wizard

10.1. About DANG

DANG (short for  Data And Number Generator) is the LincDoc business logic engine that is the driving force behind all the conditions, actions, events, and calculations contained within a LincDoc form.

Note: This feature is the replacement for the custom Javascript that was used in earlier releases of LincDoc.

To understand DANG, it is important to first know the following terminology:

  • Conditions. An expression that evaluates to either be true or false (for example: total_cost > 1000 or day_of_week is "Tuesday"). Conditions can also be combined using and and or operators (for example: total_cost > 1000 AND day_of_week is "Tuesday").
  • Actions. Actions are discrete units of work that are executed when a condition is true. Examples of actions include the following:
    • displaying an alert message
    • sending an email containing a link to a document
    • displaying a document
    • saving a document to the database
  • Events. Events denote key moments in time when an eForm or Document Package is being executed. For example, if an eForm or Document Package contains a signature field, when the user signs the document it triggers the after signing event. When an event occurs, it may trigger one or more actions. Each action then executes (or doesn't execute) based on evaluating the condition assigned to it.
  • Functions. Functions take zero or more input values (typically form fields) to produce a single output value. For example, to combine first_name with last_name, you would use the Concat (concatenation) function. An example of a function that takes zero input values is Username, which simply returns the username of the currently logged in user.
  • Calculations. Calculations assign values to fields, often by combining one or more functions. Calculations can be mathematical, but not necessarily. For example, a form may have a calculation to derive a field called full_name by concatenating the first_name and last_name fields.

10.2. Creating and Editing Custom Conditions

Custom conditions are user-configured Boolean (true or false) expressions that drive system behavior. A condition statement or clause may be singular or may be evaluated in conjunction with other clauses using AND (All of the following) or OR (Any of the following) to create more complex expressions.

Creating a Custom Condition

You create a custom condition using the Edit condition dialog box.

Important: Although this procedure is written from the standpoint of using the Fields/Sections tab on the Admin dialog box, it also applies to conditions created throughout the LincDoc interface, starting with step 3 below.

  1. Verify that you are viewing the Fields/Sections tab on the Admin dialog box.
  2. For any condition option (such as Condition to display, Required, or Read only), click the arrow button to the right of the option.

    Note: You need to click the advanced check box to see some of these options.

     
  3. Select new condition from the list of displayed options.

    The Edit condition dialog box appears, and the currently selected form field is highlighted in the Name text box.
  4. Determine the type of editing mode that you want to use. The following options are available:
    • normal mode. This mode is the default option (shown above) and provides a simplified interface for creating conditions.
    • advanced mode. This mode allows you to specify advanced calculations. You can access it by clicking the advanced button.

Creating a Condition Using the Normal Editing Mode

You can create a condition using normal mode, which provides a simplified interface.

  1. Verify that you are viewing the normal (default) mode as described in the procedure above.
  2. Specify a name for the condition in the Name text box.
    Each condition must have a unique name. Once the condition is defined it is available throughout the eForm or Document Package's condition lists.
  3. Determine the condition's dependency using the All or Any options:
    • All of the following. The condition is only satisfied if all of the defined clauses are met.
    • Any of the following. The condition is satisfied if any (at least one) of the defined clauses are met.
  4. Using the drop-down list (highlighted below), select the field that the condition will use from the set of eForm or Document Package fields.

    The field's type controls the operator list and comparison values. For example, if the comparison field is numeric, numeric comparisons are available. If the comparison field is a drop down list, the comparison values are automatically filled with the drop down list's options. 
  5. Specify the condition's operator from the second drop-down list (highlighted below).

    For a complete list of conditions, see Using Available Condition Operators.
  6. Specify the condition's value using the corresponding text box (highlighted below).

    For complete details, see Specifying the Condition Value.
  7. Add or remove conditional clauses as described in Adding or Removing Additional Clauses.
  8. Click OK to save your new condition and close the Edit condition dialog box.

    Note: You can also click clear to return the dialog box to its original, non-configured condition.

Creating a Condition Using the Advanced Editing Mode

You can create a condition using the advanced editing mode, which provides greater flexibility in the condition creation, but is not as easy to use as the normal mode.

  1. Verify that you are viewing the advanced mode (by clicking the advanced button) as described in step 4 in the procedure above.
    Once you click the button, the advanced mode is displayed.
  2. Proceed to Advanced calculations.

    Note: If desired, you can return to the normal editing mode by clicking the normal entry button.

Using Available Condition Operators

The operator controls the type of comparison.  

Operator Description Context Available with Mobile

AfterDate

True if the comparison field's value is after the comparison date (specific date or date field).

date

AfterDateTime

True if the comparison field's value is after the comparison date and time (specific date/time or date/time field).

datetime

AfterTime

True if the comparison field's value is after the comparison time (specific time or time field).

time

All

True if all of the check box group items have been selected.

checkbox groups

Any

True if any of the check box group items have been selected.

checkbox groups

BeforeDate

True if the comparison field's value is before the comparison date (specific date or date field).

date

BeforeDateTime

True if the comparison field's value is before the comparison date and time (specific date/time or date/time field).

datetime

BeforeTime

True if the comparison field's value is before the comparison time (specific time or time field).

time

Between

True if the comparison field's value is equal to either of the two comparison values or within the range of the two comparison fields.

numeric - (integer, decimal)

BetweenDate

True if the comparison field's value is equal to either of the two comparison values (specific dates or date fields) or within the range of the two comparison fields.

date

BetweenDateTime

True if the comparison field's value is equal to either of the two comparison values (specific date/time or date/time fields) or within the range of the two comparison fields.

datetime

BetweenTime

True if the comparison field's value is equal to either of the two comparison values (specific time or time fields) or within the range of the two comparison fields.

time

Contains

True if the value of the comparison field includes the comparison value text.

alphanumeric (text)

EndsWith

True if the value of the comparison field concludes with the comparison value text.  This is a case sensitive comparison.

alphanumeric (text)

Equal

True if the value of the comparison field is the same as the comparison value. This comparison is case-sensitive.

alphanumeric (text, numeric, checkbox, code list)

EqualNoCase

True if the value of the comparison field is the same as the comparison value. This comparison is not case-sensitive. This is available in advanced conditions only.

alphanumeric (text, numeric, checkbox, code list)

FALSE

A simple Boolean function that always returns a value of "false".

none

Greater

True if the value of the comparison field is larger than the comparison value.

numeric - (integer, decimal)

GreaterOrEqual

True if the value of the comparison field is the same or larger than the comparison value.

numeric - (integer, decimal)

HasRole

True if the value of the current user in effect has the selected role. This operator is often used to hide sensitive fields from unauthorized users (for example, fields that are "for office use only").

Note: Advanced mode is required to specify the condition's related parameter.

form security 

IsBlank

True if the value of the comparison field is blank.

alphanumeric

IsEmpty

True if the value of the comparison field has a blank value.

alphanumeric (text, integer, decimal, date, checkboxes, code list)

IsGuestUser

True if the user is the guest user. (Advanced condition)

none

IsInGroup

True if the value of the user is a member of the comparison value's LDAP or AD group.

Note: Advanced mode is required to specify the condition's related parameter.

alphanumeric (text)

IsNotEmpty

True if the value of the comparison field is not blank.

alphanumeric (text, integer, decimal, date, checkboxes, code list)

IsNull

True if the value of the comparison field has a no value.  This operator should only be used in advanced comparisons.

alphanumeric (text, date, checkbox)

IsOpenForm

True if the eForm is running in OpenForm mode. (Advanced condition)

none

 

IsSigned

True if the document has been signed. (Advanced condition)

none

IsWebServiceSync

True if a data sync is currently being performed, such as when syncing data that was initially recorded offline (such as using an iPad at a remote site) to your main service once a connection is re-established. This function is useful for preventing actions from occurring during the "After signing" event that should instead be done during the "After sync signing" event.

none

 

LastMonth

True if the comparison field's date occurs within last month.

date, time

LastSixMonths

True if the comparison field's date occurs within the last 6 months.

date, time

LastTwoWeeks

True if the comparison field's date occurs within the last 14 days.

date, time

LastWeek

True if the comparison field's date occurs within the last 7 days.

date, time

LastYear

True if the comparison field's date occurs within the last 365 days.

date, time

Less

True if the value of the comparison field is smaller than the comparison value.

numeric - (integer, decimal)

LessOrEqual

True if the value of the comparison field is the same or smaller than the comparison value.

numeric - (integer, decimal)

None

True if none of the checkbox group items have been selected.

checkbox groups.

Not

True if checkbox is not selected.

checkboxes.

NotAll

True if any defined sub-condition is true.

Note: Advanced mode is required to define related sub-conditions. 

checkbox groups.

NotEqual

True if the value of the comparison field is not the same as the comparison value.

alphanumeric (text, integer, decimal, checkboxes, code list)

OneOf

True if the value of the comparison field is found in the set of comparison values.

alphanumeric (text, integer, decimal, checkboxes, code list)

SignatureIsDeclined

True if the given signature field was specifically chosen to be declined when viewing the generated document in the doc viewer.

signing/signatures   

StartsWith

True if the value of the comparison field begins with the comparison value text. This is a case sensitive comparison.

alphanumeric (text)

TRUE

A simple Boolean function that always returns a value of "true".

none 

ViewerClosedJustSigned

True if the viewer was just displayed and a signature was captured (due to the completion of an "after signing" event). Allows you to verify that an automatic close occurred.

signing/signatures   

Specifying the Condition Value

Comparison values may be any constant value (such as a given text string or number) or other eForm fields.

  • To specify a constant value, click the  button, and enter a text string or value in the corresponding text box (highlighted below).
     
  • To specify a field from your eForm or Document Package, click the  button, and select the desired field from the corresponding drop-down list (highlighted below). The available fields will vary, based on the initial conditional field selected earlier ("addtl_cvg_maternity" in the example below).

Adding or Removing Additional Clauses

You can create complex conditions by specifying more than one conditional clause. Additional clauses are added using the + button (highlighted below).

When clicked, a new clause appears immediately below the clause containing the clicked + button. In the following example, a third clause was added between the two existing clauses by clicking the + button in the first clause.

You can also remove a clause using the - button (adjacent to the + button).

Examples: Conditions

A simple example of a condition would be a test of a field's value. For example, evaluate the value of a preferred contact list (shown below).

In this example, the condition's name is contact_ph_required. The condition's field is contact_optlist.  Its operator is set to Equal, and its value is the Home Phone field.

A more complex example, shown below, could involve displaying a preferred contact time if the user entered a home phone number or a cell phone number. Also, notice that the Any of the following option is selected.

 

10.3. Using the Condition to display Option

The Condition to display option, located in the Field attributes area, is used to dynamically display or hide a field or section based on a value or condition of another field.

This option evaluates to true or false, depending on the condition. If the result is true, then the field is displayed but if the result if false, then the field is not displayed.

For example: Let's say you would to display fields based on the type of leave an employee is requesting. If the leave type is Personal, only display the personal fields. If the leave type is Professional, then only display the professional fields.

Thus, when a user selects "Personal" from the leave_type drop down list in the data entry process, the section that contain the fields for personal leave will be displayed. If the user selects "Professional" then the section containing the fields for professional leave will be displayed.  This streamlines data entry to the point where only the necessary fields are presented to the user for a cleaner and clearer data input.

10.4. Required Condition

Required conditions allow the administrator to force entry of a field's value based upon information only available during execution of an eForm.    

For example, consider the situation where multiple points of contact for a customer are desired, but you would only require them to enter one.   The required contact point is designated by the user as their preferred point of contact.   In this example, the form would have data fields for home phone (contact_ph), email (contact_email), and cell phone (contact_cell_ph).   There is an additional list (contact_optlist) where the user selects the best contact option from the three.   The field that is required is based on the user's selection.

  1. On the Fields/Sections tab, select the contact_ph field.  
  2. Click the arrow button  that corresponds to the Required attribute, and select new condition from the menu that appears.



    You may leave the defaulted condition name or change it. In this example it is a simple condition based on a single field value.
  3. Select the field contact_optlist in the first drop down list.
    Our comparison selection should be Equal.
    When the field selection is a list type the value field is automatically filled with the list's options. 
  4. Select Home Phone as the value.
    The condition is now defined as "contact_ph_required when contact_optlist equals Home Phone". 
  5. Click OK.
    The new condition "contact_ph_required" is now listed as the condition selection for the Required attribute.
    These steps would be repeated for the contact_email field where contact_optlist equals Email and for the contact_cell_ph field where contact_optlist equals Cell Phone.

     

10.5. Read-only Condition

Read-only conditions dynamically prevent the end user from editing a field's value based on information available only on execution of a form.

This functionality is useful when a field's defaulted value is based on your best business practice. However, there are situations where you may allow its value to be overridden by the user. The field's read only condition gives you the ability to allow edits only when necessary.

10.6. Document Inclusion Rules

Document inclusion rules control the presence of each of the documents included in a Document Package. These rules are read when the Document Package is run.

About Inclusion Logic

Inclusion logic is defined as the use of Boolean logic to determine if a document should be included when generating a new document.

Since a Document Package often consists of multiple source documents that you may or may not want to appear in the final, generated document set, you can use inclusion logic to determine when certain forms are included (or excluded) from the final, generated document set.

For example, there may be addenda that only apply in a given situation. Consider a rental company whose standard lease package includes documents pertaining to garage rentals or additional pet fees. On properties where garages are not available, or when pets are not allowed, these documents would not be included.

Configuring Inclusion Logic

Inclusion logic is specified using the Source Docs tab on the Admin dialog box.

  1. On the main LincDoc screen, select the document package that you wish to edit in the form drop-down list.
  2. Click the admin button, and select edit from the menu that appears.

    The Admin dialog box appears.
  3. Click the Source Docs tab.
    The contents of the tab appear.
     
  4. In the Source documents list on the right side of the tab, right-click the source document that you want to edit.
  5. Select inclusion logic from the menu that appears.

    The Edit inclusion logic for dialog box appears.
  6. Specify the Generate option. The following two options are available:
    • Generate one copy of the document allows you to create a single version of the source document, which is the typical use case.
    • Generate a copy for each instance of the field allows you to repeat a source document. To use this option, your document package must have at least one multi-value table. You can then select any multi-value field in the corresponding drop-down list to indicate how many copies of the document will be appended to the final, generated document. For example, if you are creating an apartment lease, you may want to create a page for each new tenant containing his/her personal information.
  7. Specify the condition the inclusion logic will use to determine whether or not the document will be part of the form. You can either:
    • Select a default condition from the Condition drop-down list (such as Always or Never).
    • Select a user-created condition from the Condition drop-down list.
    • Click the arrow button  adjacent to the Condition drop-down list, and create a new condition, edit the selected condition, or delete the selected condition.
      For more information on creating and editing conditions, see Creating and Editing Custom Conditions.
  8. After you specify the condition, click OK to confirm the inclusion logic for the document.

10.7. Calculation Wizard

Calculated field values are derived from previously entered data or system functions.

Accessing the Calculation Wizard

To access the calculation wizard for a calculated field:

  1. In the Field attributes area, verify that the advanced check box is selected.


     
  2. If necessary, select the Calculated field? check box on the field's attributes panel.


     
  3. Click the arrow button  that corresponds to the attribute, and select calculation wizard from the menu that appears.
    The Field calculation wizard for appears.

Using the Calculation Wizard

The calculation wizard guides you through the setup of one of 4 calculation scenarios (which are described below).    

Manually Entered Value Calculations

Select the Set ... to a manually entered value option. Enter the constant in the value field, and click OK. In the example below, the preferred contact method option list is defaulted to the Cell Phone selection.

Field to Field Value Calculations

Select the Set ... to the value of another field option. Select the source field for the current field's value from the drop-down list, and click OK.

Logic-based Calculations

The Set ... based on an IF/THEN/ELSE condition option enables you to use cascading Boolean logic to determine the field's value. In the example below, if the contact has entered a preferred contact method (contact_optlist) of home phone or cell phone, then schedule a follow up call in a week. Otherwise, default the scheduled follow-up to the day the contract information was entered (contact_entry_dt).

Function-based Calculations

Function based calculations are found under the Set .. based on a function option. In this example, the contact's age is calculated from the entered birth date.

10.8. Calculations

You may also directly edit the calculation without using the calculation wizard. This method gives you full control over the calculation's definition.

Accessing the Calculation Editor

To access the editor used for this editing method, click the arrow button  adjacent to the calculation's entry in the Field attributes area, and select edit calculation. In the following example, a Calculated field is being edited.

Using the Editor

In the example below, the contact_optlist is the target field that will be set to the calculation's output value. The calculation is configured to set the contact_optlist field to a manually entered value or constant of Cell Phone. Manual value entries are accessed using the pencil button  to the right of the value text box.

Here is an example of defaulting a date field to the current date.   The function CUR_DATE is made available in the value drop-down list by selecting the function button .

Functions may require zero or more input values or parameters. In the example above, the current date function (CUR_DATE) does not need an input value. An age calculation using the YearsSince function has one input value, the contact's birth date (contact_birth_dt) field. Fields are listed in the input value drop-down list when the field option button  is selected.

In the case of the implementation of a W4 form, lineH is the sum of lines A through G.  Additional values were created by clicking the  button on the value field row.  

  

Note: You can also remove additional values using the  button. Furthermore, you can click clear to return the editor to its original, empty format.

10.9. Advanced Calculations

Certain calculations may entail multiple steps that require temporary fields to hold interim values. For example, a payment may be due on the last day of the month, but you may wish to schedule it for the day before.

In this case you need a variable field to temporarily store the end of month date. You can then use this field in the MinusDays function to calculate your final answer.

Creating a Temporary Variable

  1. Click the arrow button  to the right of the calculation's target field
    .
    The New variable dialog box appears.
  2. Type a name for the variable in the Variable name text box, and select the variable's type from the adjacent drop-down list.
  3. Select the new temp_EndOfMonth variable in the calculation's target field, and configure its calculation.
  4. Click the  button to the far right of the calculation's definition to create another calculation level.
  5. Complete the calculation of the pmt_dt field using the MinusDays method and the temp_EndOfMonth variable.

10.10. Functions

This section contains a list of all available functions, divided based on the type of function.

Proceed to one of the following topics for more information:

Boolean Functions

Boolean functions are described in the condition operator's table

Date Functions

The available date functions are listed below.

Tip: It is recommended that you review About Function Formatting for important information on valid formats for certain date functions.

Function

Inputs

Output

Available with
Mobile

Age

Date (typically, a date of birth)

The age, in years (always an integer)

DateAddDays

Date, additional days value 

Add the given number of days to the given date, returning the new date 

DateAddMonths

Date, additional months value 

Add the given number of months to the date, and return that as a new date value 

DateAddYears

Date, additional years value 

Add the given number of years to the date, and return that as a new date value 

DateCurrent

Timezone 

Return the current date for the given timezone 

DateFromDateTime

Datetime, timezone

Return the date from the given datetime in the given timezone 

DateFromYearMonthDay

Year, month, and date 

Return a new date from the given 4 digit year, month (1-12), and day of month (1-31) 

DateGetDayOfMonth

Single Date

Returns the day of the month for the given date field

DateGetDayOfWeek

Single Date

Returns the day of the week for the given date field as an integer between 1 (Sunday) and 7 (Saturday)

DateGetDaysInMonth

Single Date

For the month of the given date field, how many days are there for that month

DateGetMonth

Single Date

For the given date field, return the month as an integer between 1 (January) and 12 (December)

DateGetQuarter

Single Date

For the given date field, return the quarter as an integer between 1 (1st quarter) and 4 (4th quarter)

DateGetYear

Single Date

For the given date field, return the 4 digit year as an integer

DateQuarterFirstDay

Single date 

Return a new date which represents the first date of the quarter for the quarter in which the given date falls 

DateQuarterLastDay

Single date 

Return a new date which represents the last date of the quarter for the quarter in which the given date falls 

DateSetDayOfMonth

Date, day of month value

Return a new date which takes the given date and sets the day of that month to the given value 

DateSetMonth

Date, set month value

Return a new date which takes the given date and sets the month to the given value 

DateSetYear

Date, set year value 

Return a new date which takes the given year and sets the year to the given value

DateToString

Date and format

Convert a date object to a string in the given format

 

MonthOf

Single date

The numeric value of the month, i.e., February is 2

 

Time Functions

The available time functions are listed below.

Tip: It is recommended that you review About Function Formatting for important information on valid formats for certain datetime functions.

Function

Inputs

Output

Available with
Mobile

HoursBetweenTimes

Two time values

Difference of hours between the times

MinutesBetweenTimes

Two time values

The number of minutes between the times

TimeAddHours

Time, additional hours value

Add the given number of hours to the given time, and return a new time value

TimeAddMinutes

Time, additional minutes value 

Add the given number of minutes to the given time, and return a new time value

TimeCurrent

Timezone 

Return a new time object which is the current time for the given timezone 

TimeFromDateTime

Datetime, timezone 

Return a new time object which is the time portion of the given datetime object in the given timezone

TimeFromHourMinute

Hour, minute 

Return a new time value for the given hour (0-23) and minute (0-59) 

TimeGetHour 

A time value 

For the given time, return the hour as an integer between 0 (midnight) and 23 (11 PM) 

TimeGetMinute 

A time value 

For the given time, return the minute value as an integer between 0 and 59 

TimeSetHour

Time, set hour value 

For the given time value, set the hour to the given hour and return a new time value 

TimeSetMinute

Time, set minute value 

For the given time value, set the minutes to the given minutes and return a new time value 

TimeToString

Time and format

Convert a time value to a string in the given format

 

TimeZone

Zone ID

Returns a TimeZone Java object, which matches the selected time zone. Requires a single string argument describing the time zone (such as "EST).

TimeZoneClient

None 

Returns a TimeZone Java object containing the current client ID's default time zone. Client IDs are set and maintained by the LincDoc server.

TimeZoneSystem

None 

Returns a TimeZone Java object containing the current system's time zone. The "system" refers to the host operating system under which LincDoc is running.

TimeZoneUser

None 

Returns a TimeZone Java object containing the current user's time zone, which can be set and altered by the user on his/her computer, if necessary.

Today

Datetime 

Returns "true" if the specified datetime value is today's date. Otherwise, returns "false". 

 

Datetime Functions

The available datetime functions are listed below.

Tip: It is recommended that you review About Function Formatting for important information on valid formats for certain datetime functions.

Function

Inputs

Output

Available with
Mobile

DateTimeAddDays

Datetime, additional days value

Add the given number of days to the given datetime, and return that value as a new datetime

DateTimeAddHours

Datetime, additional hours value 

Add the given number of hours to the given datetime, and return that value as a new datetime

DateTimeAddMilliseconds

Datetime, additional milliseconds value 

Add the given number of milliseconds to the given datetime, and return that value as a new datetime 

DateTimeAddMinutes

Datetime, additional minutes value 

Add the given number of minutes to the given datetime, and return that value as a new datetime 

DateTimeAddMonths

Datetime, additional months value 

Add the given number of months to the given datetime, and return that value as a new datetime 

DateTimeAddSeconds

Datetime, additional second  value

Add the given number of seconds to the given datetime, and return that value as a new datetime 

DateTimeAddYears

Datetime, additional years value 

Add the given number of years to the given datetime, and return that value as a new datetime

DateTimeCurrent

None 

Returns a new datetime object which is the the current date and time 

DateTimeFromDateandTime

Date, time, and timezone

Returns a new datetime object from the given date, time and timezone

DateTimeGetDayOfMonth

Datetime, timezone

Similar to "Date" counterpart function, but inputs are a datetime object and a timezone

 

DateTimeGetHour

Datetime, timezone

For the given datetime and timezone, return the hour of the day as an integer between 0 (12:00 AM) and 23 (11:00 PM)

DateTimeGetMillisecond

Datetime, timezone

For the given datetime and timezone, return the milliseconds value

For example, "Jan 1, 1970 2:01.293" would return 293

DateTimeGetMinute

Datetime, timezone

For the given datetime and timezone, return the minutes value

For example, "Jan 1, 1970 2:01.293" would return 1

DateTimeGetMonth

Datetime, timezone

For the given datetime and timezone,  return the month as an integer

For example, "Feb 1, 1970 2:01.293" would return 2

DateTimeGetSecond

Datetime, timezone

For the given datetime and timezone, return the seconds value

For example, "Jan 1, 1970 2:11.293" would return 11

DateTimeGetYear

Datetime, timezone

For the given datetime and timezone, return the year value

For example, "Jan 1, 1970 2:11.293" would return 1970

DateTimeSetDayOfMonth

Datetime, timezone, set day or month value 

For the given datetime and timezone, change the month to the given month and return a new datetime

DateTimeSetHour

Datetime, timezone, set hour value 

For the given datetime and timezone, change the hour to the given value and return a new datetime

DateTimeSetMillisecond

Datetime, timezone, set millisecond value 

For the given datetime and timezone, change the milliseconds value to the given value and return a new datetime 

DateTimeSetMinute

Datetime, timezone, set minute value 

For the given datetime and timezone, change the minutes value to the given value and return a new datetime 

DateTimeSetMonth

Datetime, timezone, set month value 

For the given datetime and timezone, change the month value to the given value and return a new datetime 

DateTimeSetSecond

Datetime, timezone, set second value 

For the given datetime and timezone, change the seconds value to the given value and return a new datetime 

DateTimeSetYear

Datetime, timezone, set year value 

For the given datetime and timezone, change the year value to the given value and return a new datetime 

DateTimeToString

Datetime, timezone, and format

Convert a datetime object to a string in the given format (see this page for details on the format string)

DaysBetweenDateTimes

Two datetime fields

Number of days between the datetimes not including the start date or end date

HoursBetweenDateTimes

Two datetime values

Difference of days and hours between the datetimes

MinutesBetweenDateTimes

Two datetime values

The number of minutes between the datetimes

YearsBetweenDateTimes

Two datetime values

The difference between the years

Numeric Functions

The following numeric functions (integer, decimal, currency) are available. Decimal fields retain precision. Integer fields results are rounded to the nearest integer. 2.5 is rounded to 2.

Function

Inputs

Output

Available with
Mobile

Add

Two or more numeric values

Sum of the inputs

 ✓

Average

Two or more numeric values

Average of the inputs

 

AverageScaled

Scale and an arbitrary set of numbers

Averages all the given numbers, rounding to the number of decimal places indicated by the scale 

Ceil

Single numeric

Number always rounded up, i.e., input: 2.3, output 3  input 2.0, output 2   input 2.1, output 3

CheckedBoxes

Check box group

The number of checked boxes for the given check box group

 

Divide

Two numeric values

The division result of the inputs

Floor

Single numeric

Number always rounded down, i.e. input: 2.3, output 2.  input 2.0, output 2.  input 2.99,  output 2

Int

Single numeric

Number always rounded down, similar to the floor output

Length

Single string

Length of the string

Max

Two numeric values

The greater of the inputs

Min

Two numeric values

The lesser of the inputs

Multiply

Two or more numeric values

The multiplication result of the inputs

NamedBytesSize

Single upload file field

The size of the upload file in bytes

 

Pos

String phrase, matching string

The index of the matching string starting from the end of the string, i.e, string is abc de abe deabc, matching string is de output is 4. Where the matching string is not found, the output is -1.

Round

Single numeric to round, integer of decimal places

Rounds to specified number of decimal places.

RowCount

Single multi-value field

The number of instances of the multi value field.  For example, on an expense report with repeating expense fields, the number of expenses that have been entered.

RPos

String phrase, matching string

The index of the matching string starting from the end of the string, i.e, string is abc de abe deabc, matching string is de output is 11.  Where the matching string is not found, the output is -1.

StringToDecimal

Single numeric value

The decimal value of the input

StringToInt

Single numeric value

The integer value of the input

Subtract

Two numeric values

The result of the subtraction

Sum

Two or more numeric values

Note: This function is also available as a table function.

Sum of the inputs

Signature Functions

The following signature functions are available:

Function

Inputs

Output

Available with
Mobile

SignDate

Signature field

Return the date that the given field was signed

SignatureID

Signature field

The database unique ID of the given signature

 

SignerIpAddr

Signature field

IP address of user's browser at signature capture time for the given signature

 

SignerName

Signature field

The signer's name corresponding to the given signature field

 

SignerUID

Signature field

The LincDoc user UID value in effect when the signature was captured

Note: UID stands for "user ID" and is a unique integer assigned to each LincDoc user

 

SignerUsername

Signature field

The logged in username in effect when the given signature field was captured

 

String Functions

The following string functions are available:

Function

Inputs

Output

Available with
Mobile

CityStateZip

City, State, and Zip

Formatted string -- city, state zip

ClientIP

None

IP address of current user's browser 

 

Concat

Two or more strings

Single string composed of the multiple inputs

ConcatWithSeparator

Two or more strings plus a separator string

Single string composed of the multiple string inputs separated by the specified separator

Csv

Two or more strings

Single string composed of the multiple string inputs surrounded by double quotes and separated by commas.  i.e., "Sam Smith","123 Main Street","Anytown","NY", "12345","02/02/1968"

DecimalToString

Decimal value and format string

Converts the decimal for use as a string

 

DocId

None 

The document ID number that will be assigned to the generated document (note: if modifying an existing document, the original number is retained when changes are saved) 

 

DoubleQuote

Single string

Input string surrounded by double quotes

Drat

DRAT expression (for internal use only)

DRAT expression output

 

EMPTY_STRING

None

Returns a zero length string value

FirstWord

Single string

Excerpt of input string taken from the beginning to its first space character.  If the input string does not contain any spaces, it returns the full input string

FullName

Two strings, first name and last name

Concatenation of the first name input, a space character, and the last name input

IfThenElse

Three arguments: a conditions, an expression (which is the result of the function if the condition is "true"), a  second expression (which is a result of the function if the condition is "false").

Note: This function is only available when used in conjunction with the ToString function.

Result of the condition, which varies based on whether the condition is "true" or "false"

IntToString

Single integer

Converts the integer for use as a string

JdbcSelect

Data source name, SQL query, default value (if no matching records are found)

Note: This function is only available when used in conjunction with the ToString function.

Value of the first row of the first column in the corresponding database

 

LastWord

Single string

Excerpt of input string taken from its last space character.  If the input string does not contain any spaces, it returns the full input string

Left

Single string, integer length of excerpt

Excerpt of input string taken from its start

LowerCase

Single string

Input string with each uppercase character converted to lowercase

NamedBytesName

Single upload file field

Filename of the uploaded file

 

NEWLINE

None 

A single newline character

 

ParseDelimited

Single string (phrase), separating character (delimited), integer index position 

(Index position is zero based.  Inputs of Here,is,another,string,phrase with a comma delimiter and an index of 2 returns a value of another.)

ParseWord

Single string (phrase), integer index position of word

Word from the input phrase at the indicated position. (Index position is zero based.  Inputs of Here is an example phrase and an index position of 3 returns a value of example.)

RandomString

Integer length

String composed of the input length number of random characters

RandomUUID

None 

A new UUID

 

Replace

Input string, search pattern, replacement character string (full reference is here)

Input string updated with new characters where all occurrences of the search pattern previously existed 

Right

Single string, integer length of excerpt

Excerpt of input string taken from its end

SingleQuote

Single string

Input string surrounded by single quotes

Spaces

Integer number of spaces

String value comprised of the input number of space characters

Substring

Single string, integer start position, integer length of excerpt

Excerpt of input string. (Index start position is zero based. An input string of 1234567890abcdefg, start position of 6, length of 8 gives an output of 7890abcd.)

TitleCase

Single string

Input string with the first character converted to upper case as well as all characters immediately preceded by a space

ToString

Single string, integer, decimal, boolean, or date

Input value converted for use as a string

Trim

Single string

Input string with preceding or trailing space characters removed

UpperCase

Single string

Input string with each lowercase letter converted to uppercase

UserAttribute

Attribute (username, full name, email address)

Value of the selected attribute

UserFullName

None

The full name (usually Firstname Lastname) of the current logged in user 

UserID

None

Note: This function only applies to specific situations and is rarely needed. For more information, contact Technical Support.

Integer which is the internal user ID number used by the database

 

UserMail

None

The email address of the current logged in user 

Username

None 

The username of the current logged in user 

Table Functions

The following table (multi-row, multi-value) functions are available:

Function

Inputs

Output

Available with
Mobile

Loop

Group with a field, a where statement, a variable, a value

A running (dynamic) total of the specified fields and calculations.

 

RowMatchValue

Name of a field that exists in some multi-row table, condition, value

The value (third argument) for the first row in the table such that the condition is true.

 

Sum

Two time values

Note: This function is also available as a numeric function.

Sum of the inputs

 

Codelist Functions

The following codelist functions are available:

Function

Inputs

Output

Available with
Mobile

CodeListLabel

Codelist field

For the given codelist field specified for the input, this function will output the "label" value of the currently selected item of the codelist field; generally this value is most useful inside a generation calculation.

CodeListDescription

Codelist field

For the given codelist field specified for the input, this function will output the "description" value of the currently selected item of the codelist field; generally this value is most useful inside a generation calculation.

10.11. About Function Formatting

Certain functions have specific formatting rules that must be followed.

About Date/Date Time Functions Formatting

When working with date and datetime functions, you need to make sure your date formats and time formats are valid. Date functions use only date formatting, while datetime functions use both date and time formatting. Using a non-valid format can cause unexpected results.

Example: When using the DateToString function, if the first argument is set to DateCurrent (as shown below), you have the ability to set a format (the second argument, highlighted below) that the date will use when it is displayed.

If you use the MM/dd/yyyy format, the date will be returned similar to the following: 07/01/2013. At the same time, if you use the MMMM d, yyyy format, the date returned would be similar to the following: July 1, 2013.

For complete information on supported date and time formats, click here.

10.12. Default Calculations

Default calculations allow you to pre-fill field values to streamline data input.

In the following example, consider the situation of a company monthly expense report. You may wish to default the start date to the first of the current month and the end date to the last day of the month. This action is accomplished by setting up default calculations.

  1. On the Fields/Sections tab, select the Expense_Period_Start_Date field.
  2. In the Field attributes area on the right side of the tab, click the advanced check box.
  3. Click the Default Calculation check box.
     
  4. Click the arrow button  that corresponds to the Default Calculation entry. Additional options appear.
  5. Click edit calculation.
    Note: You could also use the calculation wizard to create a default calculation.
  6. Click the function button, and choose StartOfMonth from the function drop-down list.
  7. From the date drop-down list, select the CUR_DATE parameter.
  8. Click OK to complete the set up. 
  9. Configure the default calculation for the Expense_Period_End_Date in a similar manner using the EndOfMonth function.

11. Actions

11.1. About Actions

Actions are items in LincDoc that are conditionally triggered by form/field events or button clicks. An action can be something as simple as saving data to a database or generating a document.

Actions provide you the ultimate flexibility by allowing you to automatically perform specific tasks at different portions of the form process. 

Some common actions include:

  • Generating a form (by clicking the Submit or Generate button)
  • Saving data to the LincDoc database
  • Emailing a user or group when a form is submitted
  • Writing a document to an external Document Management System

Each of the above actions can be tied to a button or event in the data entry process.

You can also associate actions with a specific condition by using a rule.

11.2. About Rules

Rules work closely with actions, so it is necessary to understand this interaction.

Rules can be used to automatically determine whether or not associated actions should be executed. In other words, rules allow you to control the execution of actions. Rules can be used with both button actions and form events.

Rules are also closely tied to conditions. Once a rule is created, a condition is applied to it. Based on the outcome of this condition, the rule knows whether or not to execute its associated actions.

Rules are defined on the Actions tab of the Admin interface.

For more information on using rules, see Using Rules.

11.3. List of Available Actions

The following actions are available in the application.
 
Action Description Available

add multi-value row

Add a row to any multi-value table that is part of the currently running eForm (or Document Package).

 Field, Form

append uploaded file to document

Uploads a file, which, at generation time, is appended to the end of the normal, generated document. There are limitations based on the type of file being uploaded, as well as the type of file being generated. These limitations can be seen when you set a form's Field type setting to upload, and include not only the type of file but also the maximum size of the file.

Form

checkboxes to multivalue field

Controls the displayed forms, when your form is actually comprised of many small forms, and different combinations of these forms need to be easily accessible.

This action is for specialized use cases. For more information, contact Technical Support.
Field, Form

clear hidden fields

Sets all field values where the field is not displayed to null.

Form

clear multi-value table

Clear all values from a specific multi-value table.

Field, Form 

clear signatures

After a signature is completed, certain fields may be automatically locked. This action allows you to unlock these fields, if necessary, by removing the signatures internally.

Field, Form 

close

Closes the form, typically without saving the data. i.e., a cancel button.

For more information, see Close

Field, Form

edit/view/sign a document

Edit, view, or sign an eForm or Document Package that has been launched using the Run a Doc Package or eForm action.

Field, Form 

email

Emails recipients with a dynamic message and possible document attachments.

For more information, see Email.

Field, Form

execute stored procedure

Executes a database stored procedure. This stored procedure is passed as a single argument - an XML string that contains a snapshot of all the data in the current form. The stored procedure can optionally return a single result, which may be stored in one of the current form's fields.

Field, Form

export to Windows share

Saves a copy of the generated document to the configured share.  See File share for more information.

Form

flatten signatures

Takes all signature fields whose mode is set to "image" and places the signatures inside of the corresponding PDF.

Note: This action only applies to specific situations and is rarely needed. For more information, contact Technical Support.

Form

force regeneration

Clears (forcibly) any previously generated documents that exist in the current DocumentContext object. This object is present when a form is running. It holds, among other things, a snapshot of all fields and their current values, and may contain other items (such as the generated document or a user-uploaded document).

Note: This action only applies to specific situations and is rarely needed. For more information, contact Technical Support..

Field, Form

logout

Force a log out of the LincDoc application.

Form 

lookup

Merge data option from a search of an external data source.

For more information, see Database Lookups.

Field, Form

multi-value loop

Execute a multi-value group's child actions for each row in a multi-value table.

Form 

register a user

Register new users into the LincDoc system.

Field, Form 

run a doc package or eForm

Opens the configured eForm or document package for data entry.

Field, Form

run script

  Field, Form 

save

Saves the inputted data to the LincDoc database.

Field, Form

set confirm close message

Sets the message to be displayed when closing the eForm.

Form

set document owner

Updates the document owner attribute to a text value, the current user, or the one of the form's field values.

Form

set field value

Sets the specified field to a text value, one of the form's field values, or the result of a function.

Form, Field

show HTML

Opens a browser window with the configured HTML.

For more information, see Show HTML.

Form

show a message

Opens a message box with a configured message to the user.

Field, Form

show messages now

   

show signature receipt

  Field, Form

validate

Executes the validation checks.

Field, Form

view document

Opens the generated document in the file viewer (for PDF or TIFF output) or downloads the document for .DOC or .ODT output.

Form

11.4. Using Button Actions

You can associate an action with a specific buttons on your form. These button can be form-level buttons or field-level buttons.

Form-level buttons are associated with form itself, and are defined on the Actions tab of the Admin interface (for example, the Submit button).

Field-level buttons are associated with specific fields within the form, and are defined by accessing the field's Actions and Buttons dialog box.

Proceed to one of the following topics for more information:

Accessing the Buttons List

The Buttons list allows you define buttons for both form-level and field-level buttons. However, the method used to access the list varies based on the type of buttons used.

Accessing the Form-level Buttons List

To access the Buttons list for a Form-level button, simply click the Actions tab on the Admin interface.
 

Accessing the Field-level Buttons List

To access the Buttons list for a field-level button, you need to locate the field that will use the button, and then field's Actions and Buttons dialog box.

  1. On the Admin interface, verify that the Fields/Sections tab is selected.

  2. In the Fields/sections list, click the field that will be associated with the button.
  3. In the Field attributes area, click the advanced check box.
  4. Locate the Actions and Buttons option, which can be found near the bottom of the Field attributes area.

  5. Click the corresponding arrow button .

    The Actions and Buttons dialog box appears, and the Buttons list is shown on the left side of the dialog box.

Adding a Button

Once you have accessed the buttons list, you may need to add a new button for the action to the list of existing buttons.

If you want to edit an existing button, see Editing a Button for more information.

  1. Verify that you have accessed the Buttons list as described in Accessing the Buttons List
  2. On the Buttons list's top level entry, click the arrow button , and click add button.
  3. A button named NEW with the condition of Always is created.
  4. Perform any of the following actions, as desired:

Editing a Button

Once a button has been added to your list, you can edit a button's label, set conditions for the button, and even apply an image to the button.

  1. Click the button's corresponding arrow button .
    Additional options appear.
  2. Select edit.
    The Edit button dialog box appears, showing the available button settings.
  3. Edit the following settings, as desired:
    Label. Specify the text that will appear on the button in the form. This setting also is used to identify the button in the Buttons list itself.
    - Show label. Allows you to control whether or not the defined label appears directly on the button in the form. If you wish to define a label only for the purposes of the Buttons list, and you do not what that label to appear on your form, clear (uncheck) this setting.
    - Stop on error. When selected, prevents the subsequent button actions from proceeding when an error is detected.
    - Allows you to control the button's visibility on your form. For more information on using conditions, see Configuring Conditions.
    Button image. Use the corresponding arrow button  to choose an image for the button. The image appears to the left of the button's label on your form. A preview of the button, with both its label and any selected image, appears to the left of the arrow button .
  4. Click save.
    You are returned to the Buttons list, and the button is updated 

Applying an Action to a Button

Once you have created and edited a button, you can apply an action to the button. This action will be executed when the corresponding button is clicked on your form.

For more information, see Applying an Action to a Button or Event.

Applying a Rule to a Button

Once you have created and edited a button, you can apply a rule to the button. This rule is then evaluated, and any associated actions executed, when the corresponding button is clicked on your form.

For more information on applying a rule, see Applying an Action to a Button or Event.

For more information on rules themselves, see About Rules.

Deleting a Button

You can delete a button from your form at any time.

  1. On the Buttons list, locate the button you want to delete.
  2. Click the button's corresponding arrow button .
    Additional options appear.
  3. Click delete.
    The button is removed from the Buttons list, and will not appear in your form.

11.5. Using Event Actions

Events occur on both a field and eForm basis. Each event can be configured to perform one or more actions. These actions may also be subject to a rule evaluation or condition.

Proceed to one of the following topics for more information:

About Available Events

The following events are available in LincDoc:

Event Type Description
After declining Field/eForm  Executes after any signature field is specifically declined by a user (not signed voluntarily).
After generate    
After signing Field/eForm Executes after any signature field is signed by a user. 
After sync signing    
After viewing document eForm Executes when the document viewer is exiting.
Before applying decline Field/eForm  Executes immediately before the After declining event. It verifies that the signature date value is automatically set, even if a signature is declined, since this date value is required with most signature fields. 
Before applying signature Field/eForm  Executes immediately before the After signing event. It verifies that the signature date value is automatically set, since this date value is required with most signature fields. 
On blur Field Executes when the user exits a field and the field loses focus.
On change Field Executes when the value of a field changes.
On load Field/eForm  Executes when the data entry form is loaded into a user's browser. Also executes for a pre-existing form that a second user may open for editing via another method (such as an email link). 
On sync eForm Executes when the data is synchronized to the server in LincDoc's mobile implementation.

Accessing the Events List

The method for accessing the Events list is the same as the one used to access the Buttons list, since they are displayed on the same screen.

For more information, see Accessing the Buttons List.

Editing an Event

You cannot edit events using the standard LincDoc interface.

If you need to edit a standard event, contact Technical Support for assistance. 

Adding an Action to an Event

Once you have determined which event you want to use, you can add an action to the specific event. This action will be executed when the corresponding event occurs.

For more information, see Applying an Action to a Button or Event.

Adding a Rule to an Event

Once you have determined which event you want to use, you can apply a rule to the event. This rule is then evaluated, and any associated actions are executed, when the corresponding event occurs in your form.

For more information on applying a rule, see Applying an Action to a Button or Event.

For more information on rules themselves, see About Rules.

Adding an Event to the Events List

You can add an event using the Add Event button at the top of the Actions tab.

Note: This button is only available on the Actions tab.

This type of event is only fired when adding an email link into a workflow. An email is sent and opened by the recipient, and it contains a link. When the link clicked, this newly added event is executed.

The use of added (custom) events is mostly for advanced users. For more information, contact Technical Support.

  1. Click the Add Event button.
    The New Event dialog box appears.
     
  2. Provide an ID for the event in the New Event ID text box, and click OK.
    The event is added to the Events list. 

Example:

Typically, an email action is executed from a form's "Submit" button. Within the associated email, a standard "link" expression (written in DRAT) is present. You email action's body text may look similar to the following:

Hello Mr. <<lastName>>, we have a document for you to review: please use this link to view your document: <<:doc-link:edit>>

To execute a custom event, you would use <<:doc-link:edit:::myCustomEvent>> instead of <<:doc-link:edit>>. (Note that the double colons are necessary for the custom event syntax)

Deleting an Event

You cannot delete an actual event from the Events list. However, you can delete all of the event's associated actions or rules, which means that the event will not affect your form (it will not be executed, even though it is present in the Events list).

For more information, see Deleting an Applied Action or Event.

11.6. Applying an Action to a Button or Event

Once you have created and edited a button, or determined the event that you want to use, you can apply an action to the button or event.

This action will be executed when the corresponding button is clicked on your form or the specified event occurs.

  1. Verify that you are viewing the Buttons and Events lists on the Actions and Buttons dialog box.
  2. Click the arrow button  that corresponds to the desired button or event. 
  3. Perform one of the following actions:
    • Select an action from the Actions list (this list contains actions that use the default, LincDoc-supplied names).
    • Select a named action from the Named Actions list.

      For more information on creating named actions, see Using Named Actions.

11.7. Editing an Applied Action

You have the ability to edit some applied actions, if the action that you select has editable options.

  1. Click the arrow button  that corresponds to the action you want to edit.
    If the action can be edited, an edit option appears. Otherwise, the action cannot be edited.
  2. Click the edit option.
    A dialog box appears, showing the options that can be edited. In the following example, the close action's dialog box is shown.
  3. Edit the desired options.
    For more information about an action's options, see Individual Action Details.
  4. Click save

11.8. Deleting an Applied Action

You can remove an action that has been applied to a button or event. Once removed, the action is still available in your form, but is no longer associated with the original button or event.

  1. On the Buttons or Events list, locate the action you want to delete.
    For more information on accessing these lists, see Accessing the Buttons List or Accessing the Events List.
  2. Click the arrow button  that corresponds to the action you want to delete.
    Important: Be sure to click the actions arrow button, not one corresponding to a button or event. 
  3. Click delete from the list of options that appears.
    Note: For some actions, only the delete option is displayed. Otherwise, you will also see the edit option.
    The action is removed from the button or event.

11.9. Using Named Actions

Certain actions may be needed at multiple points during an eForm's life cycle. Instead of repeatedly defining the same action multiple times, you can create a named action.

Named actions are saved action configurations that can be easily reused. They can also be used as templates when you are creating a new action, allowing for faster action creation.  

Creating a Named Action

Named actions are created by opening an existing action and saving it with a specific name.

Important: Only actions that have editable settings can be saved as named actions.

  1. Click the arrow button  that corresponds to the action you want to name.
  2. Select edit from the menu that appears.
    Note: If no edit option is available, the action cannot be saved as a named action.
    In the following example, the close action has been accessed.
  3. On the action's edit dialog box, click the save with name option.

    The Save name dialog box appears.
  4. Type a unique name for the action in the Name text box. 
  5. Click save.
    You are returned to the actions list. Notice that the action you named now uses the name you specified, but also still shows the original, default name in italics. For example: Exit the Form close 
     

Using Named Actions to Populate New Actions

You can automatically populate the action's settings using the settings defined for a previously created, named action. This feature allows you to quickly defined settings for an action, if it closely resembles an action you've already created (in a template-like manner).

This feature is only available if you have created a named action for the corresponding action type. For example, if you create a "save" named action, you can use it to populate additional "save" actions.

  1. Click the arrow button  that corresponds to the action you want to name.
  2. Select edit from the menu that appears.
    Note: If no edit option is available, the action cannot be saved as a named action. 
  3. On the action's edit dialog box, click the load named action option.
    Important: If this option is not available, no named actions have been created for this action type.

    The available named actions appear.
  4. Select the named action you want to use.
    The action's settings are automatically added to the action's settings dialog box.
  5. Alter any of the settings, as necessary.
    For more information on the settings available for different actions, see Individual Action Details.
  6. Click save.
    The action is saved.

11.10. Individual Action Details

 For more information on a specific action, click one of the following links:

11.11. Using Rules

Rules can be used to automatically execute actions based on a condition. For more information about rules and how they work with actions and conditions, see About Rules.

Proceed to one of the following topics for more information about how to use rules in your form:

Creating and Defining a Rule

A rule definition may be attached to a button click or event or even to another rule.  

To add and define a new rule:

  1. Select the arrow button  that corresponds to the desired button, event, or rule row.
  2. Point to add, and click new rule.

    A blank rule definition row appears beneath the selected button, event, or rule. In the following example, a blank rule has been added to the Buttons list.
  3. Edit the new rule as described in Editing a Rule.
  4. Click save to save the updated rule settings.
    Note: To save the rule with a custom name, click save with name. For more information on this option, see Creating Named Rules.

Adding Actions to a Rule

Once a rule has been defined, you need to specify the actions that the rule will control.

Note: You can also add additional rules under a rule. For more information, see Adding Additional Rules to a Rule.

  1. In the Buttons or Events lists, locate the rule to which you want to add actions.
  2. Click the arrow button  that corresponds to the desired button or event.
    Additional options appear.
  3. Click add, and click one of the following options:
    - action. Allows you to add an existing default action, which will be executed if the rule is determined to be true.
    - named action. Allows you to add an existing, named action, which will be executed if the rule is determined to be true.

Adding Additional Rules to a Rule

Once a rule has been defined, you can add additional rules within the rule (nested rules). These rules are only applied if the main (parent) rule is determined to be true.

  1. In the Buttons or Events lists, locate the rule to which you want to add actions.
  2. Click the arrow button  that corresponds to the desired rule.
    Additional options appear.
  3. Click add, and click one of the following options:
    - new rule. Allows you to add a new rule, that you will define (edit) after it is created.
    - named rule. Allows you to add an existing, named rule. 

Editing a Rule

You can edit a rule's condition, which is used to determine whether or not the rule is true and (when true) that the associated actions (or nested rules) are executed. You can also specify if the rule should automatically cancel its execution if an error occurs.

  1. In the Buttons or Events lists, locate the rule you want to edit.
  2. Click the arrow button  that corresponds to the rule.
    Additional options appear.
  3. Click edit.
    The rule's dialog box appears.
  4. If you want the rule to automatically stop its execution if an error occurs, verify that the Stop on error check box is selected.
  5. Specify the condition the rule will use to determine whether or not the rule is true. You can either:
    - Select a default condition from the Condition drop-down list (such as Always or Never).
    - Select a user-created condition from the Condition drop-down list.
    - Click the arrow button  adjacent to the Condition drop-down list, and create a new condition, edit the selected condition, or delete the selected condition.
    For more information on creating and editing conditions, see Configuring Conditions.
  6. Once you have specified your condition, click save.
    Note: To save the rule with a custom name, click save with name. For more information on this option, see Creating Named Rules. 

Deleting a Rule 

You can remove a rule at any time, if you determine it is no longer needed in your form.

Important: If the rule is a named rule, it is only removed from the button or event to which it is associated. It is still available for use. For more information, see Creating Named Rules.

  1. In the Buttons or Events lists, locate the rule you want to delete.
  2. Click the arrow button  that corresponds to the rule.
    Additional options appear.
  3. Click delete.
    The rule is removed.

Creating Named Rules

A named rule has been assigned a unique name through the save with name option on its attributes. Once named, the rule definition is available for reuse on other buttons, events, or rules.

  1. Create a new rule as described in Creating a Defined Rule.
  2. On the rule's edit dialog box, click the save with name option.

    The Save name dialog box appears.
  3. Type a unique name for the action in the Name text box.
  4. Click save.
    Your rule is now available from the named rule menu, and can be used on multiple button, events, or other rules. 

11.12. Action Details: Add Multi-value Row

Overview

You can add a row to any multi-value table that is part of the currently running eForm (or Document Package).

Configuration

Specify any field used in the table you want to update (that will contain the new row) using the Field in group drop-down list.

11.13. Action Details: Append Uploaded Files to Document

Overview

This action allows you to add an external file, specified via an upload field type, to your eForm or Document Package. The external file is added to the end of your final form, and will appear in the Document Viewer.

Configuration - PDF Output

You need to specify the field that contains the uploaded file using the Upload field drop-down list.

Note: If no fields appear in this drop-down list, then no fields in your form as been specified as an upload field type.

The following file types can be uploaded and displayed with your form:

  • Microsoft Word files (.doc, .docx)
  • Open Office files (.odt)
  • Adobe PDF files (.pdf)
  • Image files (.jpg, .jpeg, .png, .gif)

Configuration - Microsoft Word (doc) Output

You need to specify the field that contains the uploaded file using the Upload field drop-down list.

Note: If no fields appear in this drop-down list, then no fields in your form as been specified as an upload field type.

The following file types can be uploaded and displayed with your form:

  • Microsoft Word files (.doc, .docx)
  • Open Office files (.odt)

11.14. Action Details: Checkboxes to Multivalue Field

Overview

This action allows you to convert selected check box groups (or entire sections of check box groups) to multi-value fields. This allows you to then display a multi-value table showing all checked items; unchecked items would not be seen in the table.

Configuration

You need to select the check box groups (or all of the check box groups in a single form section) whose data will be sent to the multi-value field. Check box groups are defined on the Fields/Sections tab when creating your form.

  1. Use one of the following options to specify the check box groups that will be used:
    • To use a single check box group: Specify the group using the Checkbox group drop-down list.
    • To use all of the check box groups in a form's section: Specify the correct form section using the Section drop-down list.
  2. Using the Target field drop-down list, specify the multi-value field that will contain the selected check box group(s) information.
  3. If you want the labels of the check box group(s) used in the multi-value field, verify that the Use label check box is selected. Otherwise, the variable name is used.

 

11.15. Action Details: Clear Hidden Fields

Overview

This form level action sets all a field's value to null if:

  • The field's 'Clear value when hidden' attribute is checked.
  • The field's 'Calculated field' attribute is not checked.  (Calculated fields are not cleared.)
  • The field's section is not displayed or if the field itself is not displayed at the point of form submission.

Note:  Remember to uncheck the 'Clear value when hidden' attribute for hidden fields that you may populate with a lookup action.

Configuration

No additional configuration options are available for this action.

11.16. Action Details: Clear Multi-value Table

Overview

You can clear all values from a multi-value table.

Configuration

You need to specify the field in the table that will be cleared when the action is executed using the Field in group to clear drop-down list.

11.17. Action Details: Clear Signatures

Overview

This action allows you to remove any existing signatures from an eForm or Document Package (to "unsign" a signed form).

When a form is signed and signatures are applied, most of the form's fields become locked. When the fields are locked, they cannot be changed. When this action is used, the document and all fields are unlocked and again become editable.

Configuration

No additional configuration options are available for this action.

11.18. Action Details: Close

Overview

The close action exits the data entry window and is generally associated with a Cancel button.

Configuration

You can specify whether or not a message will appear before a user exits a data entry interface. A message appears if the Prompt before closing check box is selected (as shown below).

If selected, before a user can close the related interface, they must confirm the close action. 

 

11.19. Action Details: Edit/View/Sign a Document

Overview

You can use this action to edit, view, or sign an eForm or Document Package that has been launched using the Run a Doc Package or eForm action, and is associated with a particular field in your original eForm or Document Package.

Configuration

Once you add the action, you need to specify if the action will use an edit, edit copy, view, or sign action and which field in the original form is used. 

To use the action, you need to specify the following information:

  • actionAllows you to select the action that will take place regarding the eForm or Document Package. The following options are available:
    • edit. Alter an existing copy of the form.
    • edit copy. Alter a new version of the form, leaving the existing copy unaltered.
    • view. Examine the form in the Document Viewer.
    • sign. Examine the form in the Signature View, and complete any necessary signatures.
  • docID fieldSpecify the field in the original form that contains the document ID.
    Note: You can use the DocId function to set a field in your form to the document ID. 
  • event ID. Used to specify custom events added using the Add Event button on the Admin dialog box's Actions tab.

TipIf you want to provide the ability to perform multiple actions (for example, edit and view), you can add multiple instances of this action, and assign each option to a custom button.

11.20. Action Details: Email

Overview

The email action sends an email to a configurable set of recipients. The email may contain have the generated document as an attachment.

Important: Before an email action will work, an administrator must first populate the From address and SMTP Server settings. These settings are located on the Configure system dialog box.

Configuration

The email action has the following attributes:

  • Reply To. Type a valid email address or select an existing file from your form using the corresponding drop-down list. 
  • To / CC / BCC. Specify the recipients of the email. You can add multiple entries using the  buttons. For each entry, specify the type of recipient (To, CC, or BCC) using the drop-down list. 
  • Subject. Type the subject of the email. Your can also insert eForm data into the subject using the drop-down list to the right of the Subject text box, allowing you to create customized and dynamic subjects.
  • Body. Specify the body of the mail in the large text box. The body can use plain text or HTML code. You can also use the drop-down list immediately above the text box to add selected eForm information into your the body, allowing for customized and dynamic entries.
    Tip: It is recommended that you click the Send as HTML check box to improve the appearance of your email when it is received.
  • Attachments. If desired, send the document or document package as an email attachment. You can choose the attachments format using the check boxes at the bottom of the dialog box. Attachments can be in any of the following formats: PDF, flat PDF, TIFF, XML, or CSV.

11.21. Action Details: Execute Stored Procedure

Overview

This action will call a database stored procedure in a database external to (outside of ) LincDoc, passing to it an XML string which contains all of the form data.

The basic steps for this process are as follows:

  1. Set up the database connection using the databases option (accessed via the system button).

    Note: Your license key must already have the database integration module enabled.
  2. Create the stored procedure following the example code shown in Example: Creating the Stored Procedure below.
  3. On the Admin dialog box's Actions tab, add an execute stored procedure action to the desired eForm or Document Package. For more information, see Actions.

Configuration

The execute stored procedure dialog box, which contains all of the action's options, is shown below.

When configuring the execute stored procedure action in your form, perform the following steps:

  1. Choose the desired database using the Connection drop-down list.
  2. Type the appropriate stored procedure name in the corresponding text box.
  3. (Optional) If the stored procedure returns a value, it can be stored in a LincDoc field using the Result options.
    1. Click the check box to the left of the Store result in the text.
    2. From the field drop-down list, select the desired field.
  4. Once all parameters are entered, click the test button to confirm LincDoc can access the stored procedure.

Example: Creating the Stored Procedure

The following example shows a sample stored procedure which assumes that data is coming from an expense report. Notice that the stored procedure writes data to two different tables: the multi-value (or multi-row) data goes into the dbo.expenseItems table, while the non-multi-valued data goes into the dbo.expenseReports table.

While not strictly necessary, this example also shows the entire XML input being written to the expenseXML table, which can be handy as a debugging tool to see the full data being passed to the stored procedure.

The docId variable contains the unique identifier assigned by LincDoc to this data record. It is appropriate to use this variable as a primary key in other tables in which you may be storing data.

Important: The details required to create the stored procedure are beyond the scope of this topic and help system. Please refer to your database vendor's documentation or local database administrator for details.

-- must have single input value of varchar(max) for the incoming XML
-- single varchar output is optional 
-- NOTE THIS EXAMPLE DOES INSERTS ONLY. IT DOES NOT UPDATE THE DATABASE TABLES. 
CREATE PROCEDURE [dbo].[SaveExpenses]
        @inVal [varchar](max),
        @outVal [varchar] (20) OUTPUT
WITH EXECUTE AS CALLER
AS
BEGIN
        -- SET NOCOUNT ON added to prevent extra result sets from 
        -- interfering with SELECT statements. 
        SET NOCOUNT ON;
        SET XACT_ABORT ON;
        
        BEGIN TRY
            BEGIN TRANSACTION;
                
                -- convert incoming parameter to XML 
                declare @val xml
                set @val = CAST(@inVal as xml)
                
                -- retrieve the document id (unique identifier) 
                declare @docId varchar(50)
                set @docId = @val.value('/document[1]/@doc-id', 'varchar(50)')
                -- retrieve the edit-url
                declare @editUrl varchar(255)
                set @editUrl = @val.value('/document[1]/@edit-url', 'varchar(255)')
                -- store the document XML in table 
                insert into expenseXML(cDocId, xData) values(@docId, @inVal)
 
            -- maximum expense id counter 
            declare @expId int
            SELECT @expId = MAX(nExpenseId) from dbo.expenseReports  

            if @expId is null
               set @expId = 1
            else
               set @expId = @expId + 1
 
            set @outVal = cast(@expId as varchar(20))

            -- main expense report table insert 
            insert into dbo.expenseReports (nExpenseId, cPayee, cPayeeAddr, cPayeeCity, cPayeeSt,
            cPayeeZip, cBusinessPurpose, dtStart, dtEnd, dtPayeeSigned, cApproval, cManager, dtManagerSigned )
  
            select @expId, * from (
                    select 
                T.c.value('(./field[@name="Payee_Name"][1])', 'varchar(50)') as payee,
                T.c.value('(./field[@name="Payee_Address"][1])', 'varchar(50)') as addr,        
                T.c.value('(./field[@name="Payee_City"][1])', 'varchar(30)') as city,   
                T.c.value('(./field[@name="Payee_State"][1])', 'varchar(6)') as st,
                T.c.value('(./field[@name="Payee_Zip"][1])', 'varchar(9)') as zip,
                T.c.value('(./field[@name="Business_Purpose_for_Expenses"][1])', 'varchar(200)') as businessPur,
                T.c.value('(./field[@name="Expense_Period_Start_Date"][1])', 'smalldatetime') as startDate,
                T.c.value('(./field[@name="Expense_Period_End_Date"][1])', 'smalldatetime') as endDate,
                T.c.value('(./field[@name="Payee_Date"][1])', 'smalldatetime') as payeeSignDate,
                T.c.value('(./field[@name="approvalYN"][1])', 'varchar(50)') as approval,
                T.c.value('(./field[@name="ManagerName"][1])', 'varchar(50)') as manager,
                T.c.value('(./field[@name="ManagerDate"][1])', 'smalldatetime') as managerSignDate
                    from @val.nodes('/document/data') T(c)) as T 
        
                 
                 -- individual expenses (multi-row) 
                 -- group name is found in XML                  
                 INSERT into dbo.expenseItems (nExpenseId, dtExpense, cType, cDesc, mAmount, tImage)
                 
                 SELECT @expId, expense_date, expense_type, expense_desc, expense_amt, expense_image FROM (
                    select
                T.c.value('(../@name)[1]', 'varchar(255)') as group_name,
                T.c.value('(@index) [1]', 'varchar(255)') as row_index,              
                    T.c.value('(./field[@name="expenseDate"][1])', 'smalldatetime') as expense_date,
                T.c.value('(./field[@name="expenseType"][1])', 'varchar(50)') as expense_type,
                T.c.value('(./field[@name="expenseDesc"][1])', 'varchar(120)') as expense_desc,
                T.c.value('(./field[@name="expenseAmount"][1])', 'money') as expense_amt,
                T.c.value('(./field[@name="expense_image"][1])', 'varbinary(MAX)') as expense_image
                FROM @val.nodes('/document/data/group/row')  T(c)) as P
                where group_name = 'expense fields.doc-table-0'
        
            COMMIT TRANSACTION;
        END TRY
        BEGIN CATCH
            IF (XACT_STATE()) = -1
        BEGIN
            PRINT
               N'The transaction is in an uncommittable state.' +
               'Rolling back transaction.'
            ROLLBACK TRANSACTION;
        END;

        -- Test whether the transaction is committable. 
        IF (XACT_STATE()) = 1
        BEGIN
            PRINT
               N'The transaction is committable.' +
               'Committing transaction.'
            COMMIT TRANSACTION;   
        END;

            THROW;
            
        END CATCH;
END

Using Hyperlinks

The XML stream passed to the stored procedure will also contain up to three hyperlinks for editing the data in LincDoc, viewing the generated document, or electronically signing the document (assuming it actually contains at least one signature field). These links could be used, for example, in a workflow. The three links are tagged in the XML as edit-url, view-url, and sign-url. See the example code above, which retrieves the edit URL into the editUrl variable.

11.22. Action Details: Export to Windows Share

Overview

The export to Windows share action writes a copy of the generated document or document set to Windows share.

Configuration

 The following settings are available:

Note: For assistance with determining the Windows server and share settings, contact your local systems administrator.

  • Server / Port. Specify the name and access port of the Windows server. 
  • Domain / Username / Password. Specify the proper security credentials. These credentials must have write access to the Windows share.
  • Share. Specify the name of the Windows share.
  • Path. Specify the destination directory path. The drop-down list adjacent to this setting allows you to insert selected eForm fields into your path definition.
  • Format. Specify the written format of the document or document package using this drop-down list. 



11.23. Action Details: Flatten Signatures

Overview

This action removes signature encryption data from a PDF, removes any signature fields from the form, and replaces the signature field with an image of the signature. The visible signature field is also removed from the final form.

Configuration

No additional configuration options are available for this action.

11.24. Action Details: Force Regeneration

Overview

At times, especially when working on large forms when multiple saves are involved, saved form data may not appear on your final form (as seen using the Document Viewer). Typically, this issue is due to the Document Viewer's version of the form not being updated following an earlier save. The data has been saved to the LincDoc database, but it is simply not appearing in the final version (based on the earlier save).

You can use the Force Regeneration action to force the system to update the form, as seen on the Document Viewer. Essentially, this action clears your web browser cache and forces LincDoc to recreate the version of the form seen in the Document Viewer.

Configuration

No additional configuration options are available for this action.

11.25. Action Details: Logout

Overview

This action allows you to force a log out of the LincDoc application. 

Configuration

Only a single option is available with this action. You can use the Redirect to Login Page option to specify whether or not a login page appears after the log out, or if the user is simply logged out of the application.

11.26. Action Details: Lookup

Overview

This action allows you to merge data option from a search of an external data source.

Configuration

This section describes, in brief, the configuration options for a database lookup. For more detailed information on configuring lookups, see Configuring a Lookup Action.

The following options are available:

  • On single result. Specify one of the following options:
    • Load. Maps the queried results to the form fields automatically.
    • Prompt. Display a message option to the user before loading the results.
  • On multiple results. This option controls the behavior of the lookup when the search criteria has generated more than one match. Specify one of the following options:
    • Prompt to Select One. Displays the matches in list format for the user to narrow further.
    • Load All. Displays all of the results.
  • Message if no results. If desired, specify a text message that  will appear to the user when no match is found via the lookup.
  • conditions. Use the table in the middle of the dialog box to configure a condition that must be met before the lookup is executed. For more information, see Configuring conditions.
  • lookup. If you have specified a condition, select an existing lookup, or create a new lookup, to which the condition will be applied.
    Note:You can specify multiple conditions for your lookup using the add condition / remove condition buttons (highlighted below). 

11.27. Action Details: Multi-value Loop

Overview

This action allows you to execute a multi-value group's child actions for each row in a multi-value table.

Configuration

You need to specify the field on which the loop relies and the custom event that will be executed. 

To use this action, you need to specify the following information:

  • Field in table. The field in the multi-value table whose value the loop will use as a starting point. You are presented with a list of all fields that appear in all multi-value tables that exist in the current eForm (or Document Package). You can pick any field from the table you desire to loop through. The specific field is not important.
  • Event ID to fire. The name of the event executed by the loop. Use the Add Event button on the Actions tab to create this event. This event ID will be fired for as many rows that exist in the multi-value table at the time that this action is executed.

11.28. Action Details: Register a User

Overview

This action allows you to register new users into the LincDoc system.

Note: This action only works for an internal security provider. It does not work with the Active Directory / LDAP security provider.

The action is similar to the user registration option available from the system button. The difference is that the option available from the system button allows you to make publishable URLs for distribution, and any recipient can open up the URL to self register. LincDoc prompts the users for all of their registration details. This action allows you to make a form that can execute this registration process at any point in the form's lifecycle by attaching the action to any button or event that is executed.

Configuration

Once the action is added, the register a user dialog box allows you to edit the action's settings.

The following settings are available:

  • Provider. The authentication provider that will be used to create any new accounts. For more information on providers, see Using Authentication Providers.
  • Username field. Specify the field on your form that will contain the new user's username (login name).
  • User full name field. Specify the field on your form that will contain the new user's full name (display name).
  • E-mail field. Specify the field on your form that will contain the new user's email address.
  • Add to group. The group into which new users will be added. Groups will most likely differ based on the provider you select. For more information on groups, see Managing Groups.
  • Existing user UID field. If the user that is currently being registered already exists, then the existing UID of that user is pushed into the field specified by this setting.
  • New user UID field. The UID that is created for this new user is pushed into the field specified by this setting.
  • Expire new user link. Allows you to specify when the link sent to new users will become invalid. You can active this option using the corresponding check box, and then specify the amount of time before the link becomes invalid.
  • New user email. Use the settings in this area to specify the subject and message that appears after a new user enters the necessary credentials and creates an account. You can click thehtml check box to specify that the message be sent in HTML. You can use DRAT expressions in these email messages.
  • Existing user email. Use the settings in this area to specify the subject and message that appears if an existing user chooses to access LincDoc with their existing account, instead of creating a new account. You can click the html check box to specify that the message be sent in HTML. A link is provided on the registration page, allowing an existing user to enter a username and password. You can use DRAT expressions in these email messages.

11.29. Action Details: Run a Doc Package or eForm

Overview

 This action opens the configured eForm or document package for data entry.

Configuration

 The following settings are available:

  • Document package or eForm. Specify the Document Package or eForm that will be executed from the corresponding drop-down list (which displays all existing Document Packages and eForms).
  • Load values from current form. When this option is selected, variable information that exists in both versions of the eForm or Document Package (the current form as well as the form that the action will run) is "pushed" to the eForm of Document Package that this action will execute. In short, information is transferred from one form to the other.
  • Store new document id in the <field_name> field. When this option is selected, you can specify the field in the original form that contains the document ID.
    Note: You can use the DocId function to set a field in your form to the document ID.  
  • Open in new browser window/tab? Specify whether or not you want the executed Document Package or eForm to open in a separate browser window or tab.
    Note: The choice between a browser window or tab is based on your browser's settings. It is not controlled by LincDoc.

11.30. Action Details: Save

Overview

This action saves the added data to the LincDoc database.

Configuration

Specify where to save the added data using the Repository drop-down list.

11.31. Action Details: Set Document Owner

Overview

This action updates the document owner attribute to a text value, the current user, or the one of the form's field values. 

Configuration

 Specify the owner of the document using the Owner drop-down list.

11.32. Action Details: Set Field Value

Overview

This action sets the specified field to a text value, one of the form's field values, or the result of a function. 

Configuration

Specify a field that will have its value set using the first drop down list (on the left side of the dialog box).

Specify the field's value using the three buttons to the right of the text box (highlighted below). You can choose a constant, a function, or another field.

Clear field if value is blank? check box. When selected, this option clears the field value if the value is set to null, which is a special use case. For more information, contact Technical Support.

11.33. Action Details: Show HTML

Overview

The show HTML action opens a browser window with the specified HTML. This action is typically used when an eForm or Document Package is executed in OpenForm mode. The webpage may include any combination of static and dynamic text based upon the user's input.

You may also redirect a user to another site, for example:

<head>

<meta http-equiv="refresh" content="1;url=http://www.anysite.com">

</head>

Configuration

The HTML is configured in the action's attributes. A drop-down list is provided that contains select eForm or Document Package data, allowing you to insert this information into the HTML code, as desired.

Link references are also available for mapping.

11.34. Action Details: Show a Message

Overview

This action opens a message box with a configured message to the user.

Configuration

Specify which group of users will see the message using the Show to drop-down list.

Type the message the large Message text box. A drop-down list is provided that contains select eForm or Document Package data, allowing you to insert this information into the message, as desired.

11.35. Action Details: Validate

Overview

This action executes the standard validation checks including:

  • Verifying that all required fields are provided. 
  • Performing an additional check on any existing field input constraints. 

In addition, this action executes custom form validation conditions, which can be used to prevent invalid form submissions. These custom validation conditions are defined using the form validation conditions button on the Fields/Sections tab's toolbar.

If any of these validations checks (standard or custom) fail, the user will not be able to exit the eForm of Document Package's Data Entry View (via the Submit button).

Configuration

No additional configuration options are available for this action.

11.36. Action Details: View Document

Overview

This action opens the generated eForm or Document Package in the Document Viewer (for .PDF or .TIFF outputs) or downloads the document (for .DOC or .ODT outputs).

Configuration

No additional configuration options are available for this action.

12. Configuring Storage Repositories

12.1. About Repositories

A repository is a storage system for your documents and data. Repositories are designed to logically organize documents and to allow multiple users to securely access all of the stored information.

Proceed to one of the following sections below for more information:

About Repository Types

The following repository types can be used with LincDoc:

  • SQL Repository. A repository that is backed by either a PostgreSQL database (included with LincDoc) or a Microsoft SQL Server database. This type of repository is shown as Database within the LincDoc interface.
  • Laserfiche. An existing Laserfiche installation.
  • DocuWare. An existing DocuWare installation.

The types available via the Repositories tab on the Admin dialog box are defined on the system level as described in the remainder of this chapter.

About Supported Repository Databases (SQL Repository Option)

Two databases can be used as repositories: PostgreSQL and Microsoft SQL Server.

These are considered "database" repositories, as they use third-party databases to store your data, instead of third-party document management repositories (such as Laserfiche or DocuWare).

The repositories provided with LincDoc both use PostgreSQL. However, you can create additional database repositories that use either PostgreSQL or Microsoft SQL Server.

About the Data Stored in a Repository

Repositories store various types of data including the following:

  • Actual form data (as defined in the Admin dialog box)
  • Generated documents based on your form definitions (usually in the form of PDFs, but sometimes TIFFs or Microsoft Word files (.doc or .docx))
  • Any files uploaded via a form

About Provided Repositories

Two repositories are included by default with all new LincDoc installations: default and resources.

 

Both of these repositories are PostgreSQL-based.

The default repository is designed to store form data, generated documents, and files uploaded by users.

The resources repository is designed to store source documents and branding images (for example, the setting for the LincDoc desktop logo).

Note: Although a form can store its information in the resources repository, since, strictly speaking, it is simply another PostgreSQL repository, this configuration is not supported and not considered a "best practice". 

About Other Supported Repositories

It is possible to configure other databases to act as repositories (in addition to PostgreSQL and Microsoft SQL Server). If you are interested in using a different database, contact LincDoc Technical Support for further information and instructions.

12.2. About SQL (Database) Repositories

This topic provides information specific to the SQL repository provided with all LincDoc application installations.  This type of repository is sometimes known as a Database repository.

Although this information is not necessarily needed for defining or using the repository, it may be helpful for some users who want or need a deeper understanding of how the repository (and underlying database) functions.

About the System Tables

A set of system tables are used to store folders, files, document (and related metadata), version history, and attachments. These following tables are used:

  • NODE. Stores node metadata, 1 record per node
  • VERSION. Stores version metadata, 1 record per node version
  • FILE. Stores file data
  • SECURITY_HISTORY. Stores node security metadata history
  • DOCUMENT. Stores document XML data
  • ATTACHMENT. Stores document attachments, 1 record per attachment

The actual table name is taken by amending the above names with the prefix and suffix configured in the repository's connection settings, which allows multiple, independent repositories to be placed in the same database schema. The prefix is added to the beginning of the table name (prepended), while the suffix is added to the end of the table name (appended).

Note: You can view the DDL used to create the system tables using the show system table DDL button. This feature is useful in cases where a database administrator wants to personally execute the corresponding commands instead of doing it through the LincDoc connection.

About the Data Tables

LincDoc document data may be stored in one or more tables. Non-multi-row fields are mapped to a set of one or more tables. Fields in each multi-row table are mapped to a set of one or more tables. Each of these tables has the following four required system columns:

  • id. Same as VERSION.id
  • version. Same as VERSION.version
  • group_name. The name of the multi-row table (or "." for non-multi-row fields)
  • row_index. The row index (0-indexed) of the row in the multi-row table (or -1 for non-multi-row fields)

The group_name and row_index fields are in non-multi-row tables. Therefore, if a table is used for multi-row and non-multi-row fields, LincDoc can determine which rows correspond to which fields.

12.3. About Laserfiche Repositories

You should have completed the following steps before configuring your Laserfiche repository mappings in LincDoc:

  1. Laserfiche has been configured with a field template suitable for your document fields.
  2. The folder destination in Laserfiche for your LincDoc documents has been determined.
  3. A Laserfiche connector has been installed and is currently running. For more information, see LincDoc Connector.
  4. All eForm and Document Package fields have been created.
  5. A Laserfiche system repository has been created.

Once these prerequisites are met, proceed to Creating a Repository.

12.4. About DocuWare Repositories

The following information should be reviewed before creating and configuring a DocuWare repository.

About Prerequisites

You should have completed the following steps before configuring your DocuWare repository mapping in LincDoc.

  1. DocuWare has been configured with at least one file cabinet suitable for your document fields.
  2. Optional: create a file cabinet dedicated to storing LincDoc form data called LD Data. The files in this cabinet will contain keyed in form data values that are NOT mapped out to DocuWare file cabinet index fields. For each submitted LincDoc form, it will generate a single XML file in this cabinet. This is only necessary for situations when customers require the ability to go back and make changes to a form submitted earlier.
  3. A DocuWare service account has been created with read/write access to all file cabinets that LincDoc potentially interacts with.

About DocuWare File Cabinets

All file cabinets written to (or read from) by LincDoc require the following index fields to exist:

  • LdDocumentName - text type, 255 characters. The system property document name for this field should be checked "on". This field is used to display the name of the document in the search results.
  • LdLinkedDocumentNode - text type, 255 characters. Used to link all related files within DocuWare. Contains the node id (<file cabinet sequence number>_<DocuWare file cabinet GUID>) of the root document.

LdDocumentName and LdLinkedDocumentNode must be both the label and the database column name. Labels are case sensitive; the database column names are not.

Warning for 3.3.3 and earlier systems: All file cabinets used by LincDoc must not have document versioning turned on. There is an exception: if LincDoc is strictly used to write documents to DocuWare, and then no further edits will be done on any of those documents from within LincDoc, then it is ok to have versioning on any of the cabinets. For 3.3.4+, file cabinet versioning is supported when working with DocuWare 6.1+, EXCEPT for the LD Data cabinet.

 

12.5. Creating a Repository

Repositories are created using the Repositories dialog box.

  1. From the system button on the main LincDoc interface, click the repositories option.

    The Repositories dialog box appears.
     
  2. Click the new button.
     
    The Create new repository dialog box appears.
     
  3. In the Repository ID text box, type a name for the new repository. This name will appear throughout the LincDoc interface, and will be used to locate and select the repository.
  4. Specify the type of database to which you are connecting using the Type drop-down list. The following options are available:
    • Database. This type (also known as a SQL repository) should be selected for PostgreSQL-based or Microsoft SQL Server-based repositories.
    • Laserfiche. This type should be selected for Laserfiche-based repositories.
    • DocuWare. This type should be selected for DocuWare-based repositories.
  5. Click create.
    The Configure dialog box for the selected repository type appears.
  6. Proceed to one of the following topics for connection (configure) details, based on the type of repository you are creating:

12.6. Specifying SQL Repository Connection Settings

Once you create a SQL (Database-type) repository, there are several parameters to configure.

  1. Access the Configure dialog box as described in Creating a Repository.
  2. From the Database drop-down list, select the pre-defined database that you want to use as a repository. This list of available databases is determined using the databases option.
  3. From the Schema drop-down list, specify the desired schema to be used. All LincDoc database objects (tables, indexes, sequences, etc.) will be written to this schema.

    Note: When using the default LincDoc (PostgreSQL) database for your repository, the schema naming convention uses the current client id.

  4. (optional) Click the versioned check box to enable any object written to the repository to have its full version history available from the Browse dialog box.

    If versioning is enabled, the complete version history is kept for each file and LincDoc document. The version history can be viewed using the history button, and old versions can be promoted to be the current version. If versioning is disabled, a new version number is still created on each update, but old versions are immediately purged.

  5. (optional) In the Prefix text box, specify a text string that will be prepended to the beginning of the name of any object created within the selected database schema. This feature may be useful when using very large databases connected to multiple applications, allowing you to keep tables better organized (for example, using ld_ as the prefix for all LincDoc generated tables).

    Note: When using the default repository, this option is not as useful since only LincDoc uses the underlying database. By default, the default repository uses default_ for the prefix, and the resources repository uses resources_.

  6. (optional) In the Suffix text box, specify a text string that will be appended to the end of the name of any object created within the selected database schema. This setting is very similar in functionality and usage to the Prefix setting above. Typically, it is not used.
  7. (optional) Review the database commands that will be executed against the database to create the underlying objects that make up the repository by clicking the show system table DDL button. 
  8. Click test to verify your database connection.
  9. Click save.
  10. Proceed to Configuring a SQL Repository.

For Database-type repositories, table names are based on your eForm or Document Package name, the selected schema, and any prefix or suffix you specify using the following naming convention:

schema_name.table-name (with the table name including a prefix and suffix, if specified)

For example, if your eForm is named time_report, your schema is client_id, and you specified a prefix of ld_, then your table names would be the following:

  • client_id.ld_time_report1
  • client_id.ld_time_report2
  • etc.

12.7. Specifying Laserfiche Repository Connection Settings

Once you create a Laserfiche repository, you need to connect to it by specifying the appropriate connection details.

  1. Verify that you have installed and configured the LincDoc Connector to Laserfiche.
  2. Access the Configure dialog box as described in Creating a Repository.
  3. From the Connector ID drop-down list, select the appropriate Laserfiche connector (as previously defined in step 1 above).
  4. From the User Provider drop-down list, select the security provider that will be referenced when setting security policies on newly generated documents (and folders). The setting of the security policies occurs on the Configure Laserfiche dialog box (via the Security Config button).
    Note: Setting these Laserfiche security policies is conceptually very similar to the process followed for SQL repositories.
  5. Click the Send LincDoc login to Laserfiche? check box if you want the current user's username and password used for authentication whenever LincDoc attempts to read to (or write from) Laserfiche.
    Typically, this option is not used, and the authentication uses a single "service account" for authenticating all users.

    Important: Using this option is only valid in an environment that uses the LincDoc Active Directory integration module, that has a security provider to that Active Directory system properly configured, and that has a Laserfiche system that uses the same scenario of being configured to authenticate against the identical Active Directory system. For assistance with configuring this type of environment, contact LincDoc Technical Support.

  6. Click test to verify your Laserfiche connection.
  7. Click save.

12.8. Specifying DocuWare Repository Connection Settings

Once you create a DocuWare repository, you need to connect to it by specifying the appropriate connection details.

  1. Access the Configure dialog box as described in Creating a Repository.
  2. In the DocuWare URL text box, type the URL for your DocuWare server. For example: http://docuware.mycompany.com
  3. In the Organization text box, specify your DocuWare organization name.
  4. In the corresponding text boxes, type the username and password for your DocuWare service account username.
  5. Click test to verify your DocuWare connection.
  6. Click save.
  7. Proceed to Configuring a DocuWare Repository.

12.9. Configuring a SQL Repository

This topic describes how to configure your repository, both using the automated LincDoc capabilities as well as how to manually manipulate mappings and configure the repository database.

Proceed to one of the following sections below for more information:

About the Overall SQL Repository Feature

The main purpose of the SQL Repository is to save the data and its corresponding generated document from your eForm or Document Package to a database, allowing you to retrieve the information (or generated document) at a later time as well as use other LincDoc features (such as search and reporting). Data from each field in your eForm or Document Package is sent to a specific column in a database table, as defined by the mappings within your repository's configuration (described throughout this topic). The generated document is also stored in the database.

About Editing a Repository and Enabling the Changes

The editing and configuration of a repository is done using the Configure dialog box, as described in the remainder of this topic. However, it is important to understand the underlying behavior of this process. Although the Configure dialog box may show you completed field mappings and database tables, none of these changes are actually implemented (pushed to the underlying database) until you execute the appropriate DDL statements. The system is careful to point out when exactly these statements are executed, and it will guide you on when/how to execute them. Further, you must save the mappings that are a part of the eForm's (or Document Package's) stored configuration (i.e., the normal pressing of the save button to save changes made to the eForm/Document Package). All of the steps necessary to complete the configuration process are described in this topic.

Understanding the "Warning" Icon

The Configure dialog box displays a "warning" icon (an exclamation point inside a red triangle) whenever there is some part of the mapping that needs attention. Clicking on this icon will show you a list of possible solutions and/or suggestions on how to fix the issue.

Tip: If the icon shown below is present in the lower right corner of the Configure dialog box, there are issues that may need your attention, such as missing mappings or non-created tables.

Tip: In some situations, it is safe to ignore this icon. For example, if there is an unmapped field being collected in the eForm or Document Package that you do not care to save to the repository's database.

About the Typical Mapping Process

A brief overview of the tasks involved with configuring a SQL Repository is described below.

The exact tasks you will use depend on your automatic mapping choices, your desire to manually map fields, how many changes you make to your eForm or Document Package, and the amount of database table customization you wish to undertake.

  1. Access your repository and select a mapping option, running the spectrum from completely automatic (allowing LincDoc to do all of the work) to no mappings (all done manually). Using the fully automatic option may require no additional configurations, depending on the complexity of your eForm or Document Package.
  2. Review the mappings (both standard and multi-value mappings, if present).
  3. Edit the mappings, as needed, to fully map all fields to their corresponding repository database columns.
  4. If necessary, edit the database tables themselves.
  5. Create the tables once you are satisfied with the mappings and table definitions.
  6. Test the repository mappings and tables, and fix any issues that are discovered.
  7. Set other repository options (regular options and security options).
  8. Save all of your changes.

Selecting an Initial Mapping Option

Once you add a repository to your model and connect to your database, you need to map your form fields to repository (database) fields. The first time you access your repository, you are presented with three options to help facilitate this mapping, based on your current needs and the amount of customization you desire.

  1. Verify that you have created your repository and connected to the associated database.
  2. On the Repositories tab, click the configuration button that corresponds to the repository you want to configure.

    The Auto-map? dialog box appears.
     
  3. Choose one of the following options:
    • Save data automatically without mapping. This option does not map any fields or create any tables. Instead or storing your form data in specific database columns, your data is saved in a single, large XML string inside a pre-created table. Saving into a single string limits other LincDoc functionality, such as searching and reporting.

      Tip: This option is useful during testing, when your form has not been finalized, you are still adding, removing fields, or changing field types. Once your form is finalized, you should map the form's fields to database columns. It is also ideal if you want minimal involvement with the repository configuration process.

    • Auto-map unmapped fields. This option automatically maps all fields but does not create any tables. It merely shows the table(s) it will create, should you later use the Configure dialog's feature to do so.
    • Auto-map unmapped fields and create tables. This option both automatically maps all fields and executes all the necessary DDL statements to create the necessary table(s).
      Tip: You should use this option if and only if ALL of the following conditions are true:
      • All field types have already been assigned
      • For all text fields, the max lengths have been set.
      • You have set up all of the desired searchable fields on the Search tab.

      If any of the above items are altered after this step, and you have saved one or more forms into this mapping, you must take appropriate steps to re-map the field(s). This scenario almost always requiring manual intervention.

      Important: If you do not care about losing data and documents for previously generated forms, you can always choose the option to delete the existing table(s) associated with your eForm, and then auto-map and create everything again. Use caution if you choose this route. For more information, see the remainder of this topic below.

  4. Proceed to Reviewing Existing Mappings below for more information on the Configure dialog box, which appears once you select one of the above options.

Reviewing Existing Mappings

Once you specify a mapping option as described in  Selecting a Mapping Option above, or if you access your repository after creating the initial mappings, you can view your current mappings using the Configure dialog box.

Proceed to one of the following sections below:

Viewing Your Standard Mappings

Your currently defined, standard repository mappings can be viewed using the Configure dialog box's mapping tab, as shown below.

 

The left side of the dialog box shows the fields in your current eForm or Document Package (the Fields/sections entry), the type of data stored in the field (the type entry), and the database column to which the field is currently mapped, if any (the Column entry). The right side of the dialog box shows the database tables themselves, and provides the ability to manipulate these tables and their columns, if desired. Whenever possible, when tables are created automatically, LincDoc will attempt to use the LincDoc field names when defining the table column names.

You may also see the following items on your Configure dialog box (not all items will appear in all repositories):

  • Table columns that are internal index columns and cannot be edited are marked with a "lock" icon and are dimmed (grayed-out). These columns are always automatically created by LincDoc.
  • Fields used as search indexes in your eForm or Document Package are marked with the "search" icon.

    Note: Fields used as search indexes (on the Search tab) are added to a separate table, as in the example above. Notice that the two search index fields are in table 6, while all other fields are listed in table 7.

  • If any unmapped fields are present, they are marked with the warning icon on the left side of the dialog box (in the field/section list). As usual, you may click the icon to see possible solutions/suggestions.
  • Tables that have been prepared using the Configure dialog box, but have not yet been actually created in the repository's database, display the warning icon (in the list of tables on the right side of the dialog box).

    For more information, see Creating Tables in Your Repository.

Viewing Your Multi-Value Mappings

If your eForm or Document Package uses multi-value fields, the mappings for these fields appear and are configured in their own tab on the Configure dialog box, separate from regular fields on the mapping tab. Each multi-value table in your eForm or Document Package will use a separate tab.

In the following example, one additional table for multi-value fields is present in the form, so only one additional tab is present.

 

An additional table is used because LincDoc doesn't know how many entries will be made to the multi-value fields, unlike standard fields which always take a single value. This additional table allows LincDoc to maintain data orthogonality (clean data with no duplication) within the repository's database.

The options available for these multi-value mappings are the same as those for standard mapping. They are simply displayed on a different tab and stored in a separate database table.

Automatically Mapping Unmapped Fields

If you have any fields that are not mapped, and you do not want to manually map them, you can use the auto-map unmapped fields button to have LincDoc create the mappings for you.

Manually Editing Mappings

If you choose to not have LincDoc automatically create your mappings, or if you edit your eForm or Document Package fields and want to manually map the new fields, you can do so by dragging the field entry (on the left side of the Configure dialog box) and placing it on top of the correct database column (on the right side of the dialog box).

  1. If necessary, create the new database column on the right side of the Configure dialog box using the add column button for the corresponding table.
  2. Click and drag the field from the list of fields to the desired database column.
  3. Verify that a green check mark appears when you hover over the desired column.

    Note: If a red "x" appears, instead of a green check mark, the mapping is not allowed because the field's type does not match the database column's type.

  4. Release your mouse button. The mapping is created. Notice that the field's name now appears in the field entry (which was previously blank).
  5. Click test in the top toolbar to verify the settings are sane.
  6. Click save in the top left corner of the Configure dialog box to save all of your new mappings.

Clearing All Existing Mappings

You can remove all existing mappings and tables, allowing you to restart the mapping process from scratch, using the clear mapping button.

When this button is clicked, all existing mappings and tables are removed, and the warning icon appears next to each field listed on the left side of the Configure dialog box.

Important: Although the tables are removed from the Configure dialog box, they are not deleted from the repository's database. If you recreate the tables, as described below, new tables are created in addition to the existing tables and numbered accordingly (although only the new tables are displayed in the Configure dialog box). If you want to delete the existing tables, you need to drop them.

You can now remap your fields using any of the following options:

  • Have LincDoc automatically remap the fields and create new tables using the auto-map unmapped fields button.
  • Manually create new tables and map each field.
  • Use a combination of automatic and manual mapping options.

Advanced: Mapping Multiple Fields to a Single Column

It is possible to map multiple fields to the same column in a table. However, this task is considered advanced usage of LincDoc. For more information, see SQL Repository: Mapping Multiple Fields to a Single Column.

Deleting Mappings

You can temporarily delete mappings, with the intent of re-mapping them at a later time, or you can have LincDoc permanently ignore the mapping of a field.

Proceed to one of the following sections below for details:

Temporarily Deleting a Mapping

You can delete individual mappings, to remap them or to temporarily adjust mappings, using the "x" button.

This "x" button can be accessed from either the left side (field list) or the right side (database table list) of the Configure dialog box. The effect is the same, regardless of which side you use. The icon only appears once you have clicked a field or database column, as shown below.

When you click the "x" button itself, the mapping is removed and the warning icon appears in the field list on the left side of the Configure dialog box.

Permanently Ignoring a Mapping

Once you have deleted a mapping, you can tell LincDoc to ignore it (via the ignored check box), which allows you to not map the field and avoid any potential errors that typically occur when fields are not mapped. In essence, you are telling LincDoc that you are aware of the missing mapping but you do not want to map the field.

Important: The data submitted via an ignored, unmapped field is not saved to your repository's database. As a result, when an existing, submitted form is accessed using the Data Entry View, any unmapped fields will be blank.

Configuring Repository Database Tables

Several options are available for configuring your repository's database tables, allowing you to create customized tables and corresponding mappings, as necessary.

Proceed to one of the following sections below for more information:

Collapsing/Expanding Individual Tables

If you have multiple tables displayed on the right side of the Configure dialog box, it may be helpful, at times, to collapse or expand different tables to limit the information displayed.

Clicking the blank portion of a table's title bar, to the right of the table's name and options, allows you to collapse and expand the table.

Once collapsed, only the table's title bar is shown.

You can expand the table by clicking the title bar again.

Removing Individual Table Columns

You can manually remove specific table columns using the remove column button within the column itself. This option is useful if you remove a field from your form and the corresponding table column is no longer needed.

  1. On the right side of the Configure dialog box, locate the table that contains the column you want to remove.
  2. Click the column to select it.
    The column is highlighted, and the remove column button appears to the right of the column's name.
  3. Click the remove column button.
    The column is removed from the database table.

Manually Adding Tables for Mapping

You can add new tables, if you want more control over the number of tables in your repository's database or how your fields are distributed. New tables can either be entirely new to the repository or use other tables, already added to the repository's shared database, but not used by the current eForm or Document Package.

Warning: If you attempt to add in a table not created by LincDoc, it may not work (for example, due to custom table constraints already in place on the table). Mapping to non-LincDoc created tables is not officially supported, but it may work in many situations. You will know it is working if you generate a form and verify that you see expected results in the non-LincDoc table(s).

Tables are created using the add table to mapping button, which appears at the top of the list of tables on the right side of the Configure dialog box.

 

When this button is clicked, additional options appear.

If you select new table, a new table is added to the bottom of the table list on the right side of the Configure dialog box. You can rename the table, if desired.

If you select use existing table, a list of tables in the current repository database is displayed in the Select table dialog box, allowing you to choose one.

Once you click an existing table, it is added to the bottom of the list of tables on the right side of the Configure dialog box.

Fixing Broken Mappings

If you map a field to a specific type, but then change the field type in your form, the mapping will become invalid.

For example, if you accidentally define a date field as a text type, map the fields in your repository, and then change the date field to a date type, the existing mapping (to a text type field) will no longer be valid and must be remapped. A message, similar to the one show below, will appear when you save your eForm or Document Package.

You can fix these types of issues directly in the repository's Configure dialog box.

  1. Locate the broken mapping.
    If you hover over the "warning" icon, a message appears, informing you that the mapping is invalid.
  2. In the table (on the right side of the dialog box), click the invalid entry to select it.
    The entry is highlighted.
  3. Click the remove column button to remove the entire field.

    The Drop column dialog box appear.
  4. Click Execute.
    The existing entry, including the mapping, is removed.
  5. On the left side of the dialog box, in the field/section list, locate and click the "warning" icon adjacent to the unmapped field's name.

    The Field not mapped dialog box appears.
  6. Click Auto-map.
    A new entry is created in the corresponding table on the right side of the dialog box.
  7. Click the "warning" icon adjacent to the newly added table entry.
    The Missing column dialog box appears.
  8. Click the Execute button.
    The mapping is completed and the repository will now correctly save the updated field's information.
  9. Click save, and close the Configure dialog box.

Editing Existing Columns in a Table

You can alter the name and type (text, integer, etc.) of an existing table column using the column's edit button.

Warning: Do not attempt to modify the column type if data already exists in the column unless you are a database administrator and completely understand all of the possible implications. The recommended procedure is to leave the existing column as is, and make a brand new column for the new type.

  1. Locate the table containing the column you want to edit.
  2. Click the column to select it. The column is highlighted.
  3. On the far right side of the column's entry, click the edit button.

    The column's name and type entries become editable.
  4. If desired, change the name of the column using the text box in the column entry.
  5. If desired, change the type of data the column can store using the type drop-down list.
  6. Click the save button on the far right side of the column entry.

    Note: You can also click the revert button (next to the save button) to return to the column's default name and type settings.

Manually Adding Columns to a Table

You can add columns to existing tables using the add column button for the desired table.

  1. Locate the table to which you want to add a column.
  2. Adjacent to the table's column heading, click the add column button.

    A list of options appears.
  3. Select the type of data the column will contain.
    • boolean. A true/false value.
    • bytea. A binary file (such as a picture).
    • date. A simple date value.
    • int4. An integer between -2147483648 to +2147483647.
    • int8. An integer between -9223372036854775808 to 9223372036854775807.
    • numeric. Numbers with a decimal value.
    • text. Longer text. Use this for very long text fields like comment fields; use varchar for text fields that are known to be shorter such as "last_name".
    • time. A simple time value.
    • timestamp. An object that represents a particular date and time and timezone (for example: Jan 01, 2014 12:08 AM EST).
    • uuid. A string type that is intended to hold UUID values. For more information on UUID values and how they are used in LincDoc, click here.
    • varchar. Variable-length character data
    A new entry is added to the bottom of the table (you may need to scroll down to locate it). In the following example, a text type column has been added.
  4. Type of name for the new column (replacing the default name of "new").
  5. Verify that the type of data stored in the column is correctly specified (in this example, text). If not, you can change it using the corresponding drop-down list.
  6. Click the save button on the far right side of the entry.

    Note: You can also click the revert button (next to the save button) to return to the new columns default name and type settings.

    Warning: The column is not actually created in the table when save is clicked. However, you will see the warning icon, which, if clicked, will display the commands to execute the appropriate DDL statements. These statements will create the column in the database table.

Renaming a Table

You can alter the name of an existing table using the rename button for the desired table.

  1. Click the rename button that corresponds to the table you want to rename.

    The table's name becomes editable.
  2. Change the table's name directly in the text box that appears.
  3. Click the save button.

    The table is renamed (but only in this configuration dialog), and all of the existing mappings are retained. Press the warning dialog to execute the DDL statements to actually rename the table in the database.

Viewing a Table's DDL Commands

You can view a table's data definition language (DDL) statements, which represent the statements that LincDoc uses to create the table(s) in the current mapping. In addition, you can initiate the execution of these statements. The intent of showing these statements is for advanced usage, such as when a database administrator is designing a custom back-end procedure and wishes to understand the structures (tables) that LincDoc is creating.

Tip: These commands are advanced options that will probably only be useful to database administrators.

  1. Click the show DDL button that corresponds to the table whose statements you want to view. This button appears adjacent to the table's name on the right side of the Configure dialog box.

    The Create table dialog box appears.
  2. Perform any of the following actions, as desired:
    • Review the SQL for the CREATE TABLE statement.
    • Initiate the selected CREATE TABLE statement using the corresponding execute button.
    • Execute multiple listed statements, if present, by selecting the commands using the check boxes to the left of each statement, and then click the execute selected button at the top of the dialog box.
    • Copy the selected SQL statement. This option may be useful if you want to use or review the statement in another application.
    • Click Close to exit the Create table dialog box and return to the Configure dialog box.

Removing an Entire Table From Your Mappings

You can remove a table from the Configure dialog box using the remove table from mapping button.

Important: This action removes the table from your mapping, but not from your database. That action requires that you drop the tables (using the drop tables button).

  1. On the right side of the Configure dialog box, locate the table you want to remove. Remember, you are only removing the table from the Configure dialog box. You are not actually deleting (dropping) the table if it currently exists in your repository's database (was previously created).
  2. Click the remove table from mapping button adjacent to the table's name.

    The table is removed from the table list.

Creating Tables in Your Repository

Once you have finalized your manual mappings and completely configured your repository's database tables (as necessary), you need to actually create the tables in your repository's database. Until you create the tables, they cannot be used by LincDoc. In effect, the Configure dialog box displays the "plan" for the mapping and repository database table creation. However, until the create tables button is clicked, this "plan" is not implemented and cannot actually be used by LincDoc to store data.

If your tables have not yet been created, but only appear on your Configure dialog box, they are marked with the warning icon, as shown below.

  1. At the top of the Configure dialog box, click the create tables button.
    Note: You can also click the warning icon itself, but only the create command for the corresponding table will be displayed.

    The Create tables dialog box appears, showing options that apply to all tables in your repository's database.
  2. Perform one of the following actions, as needed:
    • Click the Execute button adjacent to the Create all tables entry to create all possible tables in your database, including any existing tables.

      Important: You should use this option with care, as it will create new tables but will also overwrite any data present in existing tables.

    • Click the Execute button adjacent to the Create missing tables entry to only create tables that have not yet been created. Any existing tables are not affected.
    • Click the Show DDL button for either option to review the commands that will be used by LincDoc to create the tables.

Deleting Tables From Your Database

You can permanently remove tables from your repository's database associated with the current eForm or Document Package. This action completely removes all tables and all associated data corresponding to the current eForm or Document Package. Other tables are not affected. It is useful if you have made major configuration changes to your mappings (such as changing the type used by fields) and need to recreate your tables.

Important: Use this option with extreme care. Once deleted, the tables and their data cannot be recovered.

Proceed to one of the sections below, based on how many tables you want to delete:

Deleting All Tables

You can quickly delete all of the tables in your repository's database (associated with the current eForm or Document Package) using the drop tables button. 

  1. At the top of the Configure dialog box, click the drop tables button.
    The Drop tables dialog box appears.
  2. Click Execute.
    All of your tables are deleted.

Deleting Select Tables

You can delete specific tables from your repository's database by accessing and executing specific drop table commands. 

  1. At the top of the Configure dialog box, click the drop tables button.
    The Drop tables dialog box appears.
  2. Click the Show DDL button.
    The individual commands and associated syntax are displayed.
  3. Click the execute button adjacent to the command for the table you want to delete.
  4. Click Yes to confirm the table removal.
    The table is permanently removed from your repository's database.

Verifying the Items Displayed

You can click the refresh button at any time to confirm that you are viewing the most recent field list, table list, and related mappings.

Testing Your Mappings and Tables

Once you have defined all of your mapping, configured your tables, and created your tables, you can test all of the items using the test button.

Once clicked, you are informed if all repository settings were successful or if there are issues that require your attention.

Using the Repository Mapping Settings

The settings available on the Configure dialog box's Options tab allows you to activate specific behaviors available with your repository.

The following options are available:

  • Save data as XML in "data" column of table. Allows you to save all form data into a single XML string in your database. This option is what happens when you use the Save Automatically mapping option. It is useful in testing scenarios where your eForm or Document Package is not finalized. When used, the setting automatically creates a table to store the XML.

    Note: This table is global to all eForms or Document Packages. Any eForm or Document Package that uses this option will have its XML data written to this same table. Usually the table is named client_id.default_document, where client_id is your client ID value.

  • Allow mapping multiple fields to a single column. This setting is for advanced use cases, and is related to tables that are similar to multi-value tables but with a fixed number of rows. Contact LincDoc Technical Support for more information.

Dynamically Defining a Security Policy

You can determine whether or not a security policy is defined when a document is saved to your repository using the settings on the Configure dialog box's Security tab.

For more information on these settings, see Using SQL Repository-Specific Security.

12.10. SQL Repository: Mapping Multiple Fields to a Single Column

Important: This topic contains advanced user material. If you need further assistance, or are unsure about how to proceed, contact LincDoc Technical Support.

It is possible to map multiple fields to the same column in a table. This action requires writing multiple rows in the table per document. To complete this task, a multi-mapping key column needs to be added to the table. This column should not be confused with the id system column. Multiple distinct values are set for the multiple rows written to the database, and each field mapped to another column in the table corresponds to one of the distinct values.

Note: It is also possible to write multiple rows in the table per multi-row table record.

About the Example

In order to better understand this topic, it is important that you understand the example that is being used.

In this example, suppose a Document Package collects a residence's address and a mailing address with the following fields and associated values:

  • address1: 123 Main St.
  • address2: Apartment 4B
  • city: Springfield
  • state: NY
  • zip: 12345
  • mail_address1: PO Box 7
  • mail_address2:
  • mail_city: East Springfield
  • mail_state: NY
  • mail_zip: 12346

Using this information, a table can be created with the following columns:

  • id
  • version
  • group_name
  • row_index
  • type
  • address1
  • address2
  • city
  • state
  • zip

The type column is the multi-mapping key column, and its values are residence and mailing. Using the type column as a filter, a single lookup can be created to retrieve either the physical address or the mailing address. Normally, two separate lookups would be needed. In addition, if more address types are added (such as home, office, etc.), the structure can support them without the need for even more lookups.

The address1, address2, city, state, and zip fields are mapped to the appropriate database columns that correspond to the residence value of the type column.

The mail_address1, mail_address2, mail_city, mail_state, and mail_zip fields are mapped to the appropriate database columns that correspond to the mail value of the type column.

The full table, including specified values, would appear as follows:

id

version 

group_name

row_index

type

address1

address2

city

state

zip

1

1

 

-1

residence

123 Main St.

Apartment 4B

Springfield

NY

12345

1

1

 

-1

mail

PO Box 7 

 

East Springfield

NY

12346

Search index fields should be mapped corresponding to only the first three multi-mapping key column values in the first table.

For example, if you have residence, mailing, work, and alternate as your four address types, the search will only use the residence, mailing, and work address types. The fourth type (alternate) will not be used in the search.

If you are using multiple mapping, you should contact your local database administrator for assistance. Although LincDoc attempts to make this configuration easy to understand, without the proper knowledge you can easily corrupt your database.

Accessing the Multiple Mapping Option

In order to use multiple mappings, you first need to activate the general settings. Once that is done, you need to specify the multi-mapping key column for each table in your repository.

  1. Access the repository's Configure dialog box as described in Creating a Repository.
  2. Click the Options tab.
  3. Select the Allow mapping multiple fields to a single column check box.
  4. Click the mapping tab.
    Notice that each table in your repository now displays a multiple mappings check box (immediately below the table's name).
  5. Click the multiple mappings check box for the desired table.
    A Multi-mapping key column drop-down list appears to the right of the multiple mapping check box.
  6. Select the multi-mapping key column from the corresponding drop-down list.
    Additional options appear near the top of the table, and in the corresponding row..
  7. Add multiple-mapping fields using the + buttons.
  8. Once multiple-mapping fields have been added, values can be entered for the key column values (these values must be distinct), and LincDoc fields can be mapped to each entry.
    In the following example, three values have been added to the type column.
  9. (optional) Delete any unneeded multiple-mapping fields using the - button for the appropriate field.

    For the example described in About the Example above, the final address mappings would appear as shown below.

12.11. Configuring a Laserfiche Repository

Laserfiche repository settings control the import of your completed LincDoc documents into your Laserfiche system. This includes document storage considerations such as the folder destination as well as document indexing.

Accessing the Configuration Dialog Box

The Laserfiche Config dialog box provides access to the configuration options available with a Laserfiche configuration.

This dialog box is accessed by clicking the edit button on the Admin dialog box's Repositories tab.

The dialog box itself is shown below.

Using the Laserfiche Repository Configuration Settings

This section describes the settings available when configuring a Laserfiche repository (via the Laserfiche Configure dialog box).

Proceed to one of the sections below for more information:

Defining Template Field Mappings

You can use the Template setting to define the field mapping from the LincDoc data entry process to the Laserfiche template fields. Click the arrow button adjacent to the setting to access the template configuration dialog box. The dialog box is divided into two sections. The LincDoc fields contained within the current eForm and the Laserfiche template fields that are read from the currently selected Laserfiche template.

Specify the folder information using the following procedure:

  1. Select the Laserfiche template from the drop down list at the top of the dialog box.
    Note: LincDoc reads the Laserfiche templates in real time.
  2. Select the Laserfiche field from the Laserfiche template field list.
  3. Drag and drop the Laserfiche template field to the LincDoc field.
    Note: The file types must match.
  4. Click save.

Note: Use care when mapping LincDoc fields to Laserfiche template fields. Laserfiche fields often have input constraints which must be taken into account. If the input from the LincDoc field is too long the form will not be saved into the Laserfiche repository.

Defining the Laserfiche Folder Location

You can use the Folder setting to define the path location and file names LincDoc will use to write the eForm or document package to the Laserfiche environment. Click the arrow button adjacent to the setting to access the folder selection dialog box.

This dialog box is divided into three sections. The first section (on the left) displays the Laserfiche directory structure as read in real time.  The other two sections (in the middle and on the right) define the token based file name and subdirectory definitions.
 

Configure these settings using the following procedure:

  1. In the Base folder list, browse to the folder location where the files should be stored.
    Note: This must not be the same location as the LincDoc connector.
  2. Double-click the subdirectory to define the location in the path setting. The location can also be dragged and dropped into the path setting.
  3. Define the path location for the LincDoc data (HTML) file import. You must drag and drop the path location to this path setting. If left blank, no data file will be imported into Laserfiche.
  4. Define any token based subdirectories by double-clicking the token to add it to the path definition. If a token needs to be removed, drag and drop it out of the path definition.
  5. Click save.

Additional tokens are listed below.

Token Name

Token

Description

username

($LDuserid$)

The LincDoc user name

document Package ID

$docpkgid$

Uses the current LincDoc eForm or Document Package ID

backslash

\

separator that can be used to define a subdirectory

hyphen

-

separator that can be used in a file name

underscore

_

separator that can be used in a file name

4 digit year

($YYYY$)

The current four digit year defined by the server clock time

2 digit year

 

The current two digit year

month

 

The current two digit month

day

 

The current two digit date

hour (0-23)

 

24 hour clock time

hour (01-12)

 

12 hour clock time

AM/PM

 

 

minute

 

 

second

 

 

day in year

 

 

week in year

 

 

day in week

 

 

custom string

 

Gives the ability to create a string to define a file name or subdirectory

Warning: Be careful when using tokens that may have values which contain invalid file name characters (for example, a date field of 9/1/2008 would be invalid file name). File with names using these characters will not be imported into Laserfiche.

Using Additional Laserfiche Configuration Settings

The following additional settings are available from the Laserfiche Config dialog box:

  • Store user uploaded files in Laserfiche?. Check this option if you would like uploaded documents for this form or document into Laserfiche.
  • Store template data with user uploaded files in Laserfiche?. Template data is stored with the LaserFiche document. Selecting this check box will also store a complete copy of the template data with each Laserfiche document created for file uploads.

  • Generate .html launcher file?. If the Generate .html launcher file? check box is selected, a small html file is written at the same time the normal PDF file is written to Laserfiche. If the html file is opened later, it connects to LincDoc and opens the original data entry form with all the data already populated. This feature allows the original user to make a small change and re-submit the form.

  • Store TIFF. When the Output format drop-down list is set to PDF (on the Admin dialog box's eForm or Document Package tab), but you want to add a TIFF version of the form to Laserfiche, you should click the Store TIFF check box. This option is available since Laserfiche as an application typically wants all of its content in TIFF format, and many of Laserfiche's features only work with TIFF files.
    Note: The "original" PDF file is also stored in Laserfiche along with the TIFF file.
    This option is useful when electronic signatures are involved and LincDoc needs a PDF file, since that's the only file type that supports signatures. However, if all of the signature are "image" signatures (instead of interactive "PDF" signatures), the PDF is not needed.

  • Append TIFF images on update. This feature tells LincDoc to convert any uploaded PDF files to TIFFs, and then append them to the generated file for storage into Laserfiche.
    Note: This only works when the output format for the eform is set to TIFF.

  • Insert/update timeout. Specify how much time, in seconds, LincDoc will wait when attempting to insert or update a document in Laserfiche. If the amount of specified time is reached, an error message will be shown.

  • Security Config.  Allows you to define security roles for the repository.
  • Launcher. The settings in this section allow you to specify the options that will be available using the LincDoc document launcher toolbar button (which is available when a TIFF file or PDF file is generated in LincDoc). When implemented, this button appears in the Laserfiche interface on the main toolbar.

    Important: This toolbar button is only supported with Laserfiche 8.x. If you need to use the toolbar in a different version of Laserfiche, contact Technical Support.

    The following options are available from the LincDoc button, if they have been enabled (checked):
    • Edit. Allows the user to make edits to the form. When the form is re-submitted, the original form and template field data are overwritten.
    • View. Allows the user to display the document (always in PDF format) in the LincDoc Document Viewer. Typically, this option is not used, since you can simply double-click the document and view it in Laserfiche.
    • Sign. Displays the document in the LincDoc Signature View, which allows it to be reviewed and signed.
      An example of this button, as it appears in Laserfiche, is shown below.

      Note: In this example, the ROI_20131028071519_eml PDF file was first selected, and then the LincDoc button was clicked. In addition, the Sign option is not present because no signatures are required in the document.


      The toolbar button must be separately installed on each Laserfiche workstation. For more information, including acquiring the installation program used to add the toolbar to Laserfiche, contact Technical Support.

12.12. Configuring a DocuWare Repository

DocuWare repository settings control the import of your completed LincDoc documents into your DocuWare system. This includes document storage considerations such as document indexing.

Using File Cabinets

Document File Cabinet

The Document File Cabinet is the file cabinet that stores the created LincDoc document. You may click on the arrow submenu button to configure field mapping between the LincDoc form data fields and the DocuWare file cabinet fields. In the image below, the LincDoc fields are on the left, and the DocuWare index fields for cabinet "Document Pool" appear on the right. Drag index fields on the right over to the desired field on the left to create a mapping (for example, in the image below, cabinet index field E-Mail has been mapped to LincDoc field emailAddress).

LD Data File Cabinet

The LD Data File Cabinet stores an XML representation of the form data fields and their values. This data file is accessed whenever a user attempts to edit a document in LincDoc. If this XML file record is modified or deleted, the user will not be able to edit or modify the document within LincDoc. The same LD Data File Cabinet may be used for all of your eForms.

Store HTML Launcher File

The .html launcher file gives the user access to the edit and sign hyperlinks that will open the form in LincDoc for the respective action. Check the check box and select the storage file cabinet to give the user the option of working with the file in LincDoc after initial submission.

User Uploaded Files

User uploaded files may be stored as individual files if you select this option and select the appropriate file cabinet.

Linking Documents in DocuWare

When LincDoc writes out a form to DocuWare, it may end up writing out several documents in different file cabinets: the generated form PDF may go in one cabinet, while extra files uploaded with the form go in another cabinet, etc. You can utilize the LdLinkedDocumentNode index field to link all of these documents together so that for example it helps an administrator more easily track all information related to a particular form passed to DocuWare from LincDoc.

  1. In the Docuware Administration window, open the main file cabinet for editing in the browser window.
  2. Under the Options node, expand Links.
  3. Right click Links, and choose Create New Link Configuration.
  4. Name the link (for example: "Attachments" for the upload file link, "Launcher" for the launcher file link).
  5. Clear (uncheck) the Use filter option.
  6. Select the LD Data file cabinet as the File Cabinet.
  7. Specify the Link Criteria as LdLinkedDocumentNode = LdLinkedDocumentNode.
Your window should appear similar to the example below.

12.13. Deleting a Repository from LincDoc

You can completely remove a repository from the LincDoc environment, meaning that it will no longer be available for use with any eForm or Document Package. Although the repository is removed and can no longer be used with any eForms or Document Packages, LincDoc makes no attempt to clean out existing data or documents inside the removed repository. To actually purge the data and documents inside the repository, refer to documentation specific to the repository type (LincDoc SQL Repository, Laserfiche, DocuWare, etc.).

Important: This procedure is not the same as removing a repository from an individual eForm or Document Package. If you only want to remove a repository from an eForm or Document Package, and not from LincDoc entirely, see Deleting a Repository.

  1. Verify that the repository is not being used by checking the Repositories tab  for each eForm or Document Package. 
  2. On the LincDoc toolbar, click the system button.
  3. Select repositories from the list of options that is displayed.
    The Repositories dialog box appears.
  4. Locate the repository that you want to permanently delete.
  5. Click the corresponding delete button.

    The Confirm remove dialog box appears.
  6. Click Yes.
    The repository is removed from LincDoc.

13. Security

13.1. About Security

Roles provide system-level or form-level access to features, and determine how much particular users can impact an eForm or Document Package.

Several roles are provided by default. However, you can make your own roles as described in Creating a Role.

Users or groups are assigned to global security roles, granting them the access specified by the roles.

Each provider contains its own users and groups.

This section discussed global security - specifying roles, users, and groups for the entire LincDoc environment. For more information on configuring form-specific security, see Using Form Security.

13.2. Managing Security Roles

Roles can be used to easily provide users or groups with specific rights, which are inherited from the role.

Proceed to one of the following sections below for more information:

About Default Roles

The following default roles are provided.

  • admin. Allows members to create, edit, delete, and execute eForms or Document Packages. In addition, the following options are available from the system button:
  • auth-provider-admin. Allows member to specify login providers and client login providers via the system button on the main LincDoc interface.
  • browse. Allows members to access the browse button on the main LincDoc interface.
  • form-admin. Allows members to create, edit, delete, and execute an eForm or Document Package. In addition, the search button is available. No system button options are available.
  • guest. Allows guest access (no username/password is required) to the form, often via a direct URL (OpenForm View).
  • login. Allows members to log in to LincDoc and use existing eForms or Document Packages as-is. Both the admin and the system buttons are inaccessible.
  • report-admin. Allows members to access the reports option via the system button. This role does not grant editing access, so the admin button is not available. This role is the same as the login role, but includes access to the reports option.
  • user-admin. Allows members to set up and configure security providers, users, groups, and roles. To support these functions, the following options are available from the system button:

Note: The superuser setting, available via the user settings, allows for full access to all system settings, including all of the system button options listed for the admin role above. In addition, there are several settings that only superusers can access (such as the configure system option).

Viewing Existing Roles

You can view the roles currently defined in LincDoc by selecting security roles from the system button.

The Security roles dialog box appears, with the current roles specified on the left side of the dialog box (highlighted below).

 

You can click on any existing role to see which users and groups are currently assigned to it. The provider for each user and group is also shown.
In the following example, no users (the user area is blank) and two groups have been assigned to the admin role. In addition, notice that each of the groups uses a different provider.

Creating a Role

You can create custom roles, to compliment the default roles provided by LincDoc.

  1. Access the Security roles dialog box as described in Viewing Existing Roles above.
  2. Click the + button.

    The New Role dialog box appears.
  3. Type the role name in the Role name text box, and click OK.
    The new role is added to the list on the Security roles dialog box.
  4. Click save to save the updated roles list. 

Adding Users and Groups to Roles

Once the appropriate roles are created, you can add user or groups to them. These added users and groups are then granted the access provided to the roles to which they are assigned. 

For more information on creating and working with users, see Managing Users.

For more information on creating and working with groups, see Managing Groups

Tip: It is recommended that you assign roles to groups instead of individual users. Although you can assign individual users to roles, assigning groups allows for easier administration.

  1. Access the Security roles dialog box as described in Viewing Existing Roles above.
  2. Click an existing role. Any currently assigned users or groups appear on the right side of the dialog box.
  3. Click the + button that corresponds to the user or group list, depending on which type of item you want to add.

    The Select dialog box appears. In the following
  4. Select the correct provider from the Provider drop-down list.
  5. Type a string in the text box below the Provider drop-down list.
  6. Click the Search icon.

    All users or groups that match the specified string appear.
  7. Click the appropriate user or group to select it.
    The selected item is highlighted.
  8. Click select.
    The specified item is added to the appropriate list on the Security roles dialog box. 

Deleting a Role

You can only delete non-default roles that you have added. Default roles cannot be removed.

  1. Access the Security roles dialog box as described in Viewing Existing Roles above.
  2. Hover over an existing non-default role.
    The delete button appears to the right of the role's name.
  3. Click the button.
    A confirmation message appears.
  4. Click Yes to confirm that you want to delete the role.
    The role is removed.
  5. Click save at the top of the Security roles dialog box.

 

13.3. Managing Users

To access secure forms in LincDoc, individual users and groups must be created or imported from an external LDAP provider. Once available in LincDoc, the users and groups are assigned to roles, granting them rights to access various parts of the system.

Proceed to one of the following sections below for more information:

Creating a New User

You can create a new user directly in LincDoc, if desired. 

Note: If you are using an LDAP provider, users are defined on the LDAP server and may not need to be created locally within LincDoc. However, you can have a mix of both locally defined user and LDAP users.

  1. You can view the roles currently defined in LincDoc by selecting users and groups from the system button.

    The Manage users and groups dialog box appears.
     
  2. Click the + button.

    The New user dialog box appears.
  3. Type the new user's name in the User name text box.
  4. Click OK.
    The new user is added to the list on the left side of the dialog box, and the user's settings appear on the right side of the dialog box.
  5. Proceed to Defining User Settings below for more information on the user's settings.
  6. Click save once you have defined the user's settings.
    The new user can now access LincDoc.

Locating Users

When working with new or existing users, you will need to locate the user in your user list.

  1. Access the Manage users and groups dialog box as described in Creating a New User.
  2. Type a string in the search text box.
  3. Click the Search icon.

    All users that contains the defined string in either their Username or Name settings are displayed, but only the Username is shown in the list.
    In the following example, the string "user" was used in the search.

Defining User Settings

When you create a new user, or need to update an existing user, you can do so using the user's individual settings.

  1. Access the Manage users and groups dialog box as described in Creating a New User.
  2. If necessary, locate the user whose settings you want to edit as described in Locating Users.
  3. Click the user whose settings you want to edit.
    The settings appear on the right side of the Manage users and groups dialog box.
     
  4. Alter any of the following settings, as desired. 
    • Username. The name used by LincDoc to represent the user. This setting was initially defined when the user was created. This setting is required.
    • Name. The real name of the user. This setting is required.
    • E-mail. The user's email address. This setting is required.
    • Password expires. Specify whether or not the user's password will expire or if it will be permanent.
    • Permissions. Specify which of the following permissions will be granted to the user:
      • superuser. When selected, the current user is granted superuser permissions.

        Note: This permission is only available with On-Premise (non-cloud) installations (for security reasons). By default, the account that uses this permission is named admin. In addition, only a user currently defined as a superuser can see this permission setting, when it is available. Otherwise, it is hidden from view.

      • change username. When selected, gives the user the ability to alter his/her username.
      • change name. When selected, gives the user the ability to alter his/her name in the LincDoc system.
      • change e-mail address. When selected, gives the user the ability to alter his/her e-mail address.
    • Lock/permanent. When selected, the current user's account is permanently locked (inaccessible) until unlocked by an administrator.
    • Lock/untilWhen selected, the current user's account is locked until the specified date and time.
    • Lock/unlocked. When selected, the current user's account is not locked and is fully accessible.
  5. (optional) Add attributes (custom settings) to the user as described in Adding Attributes to a User.
  6. Click save.
    Any changes you made are saved, and all altered users are updated.

Adding Attributes to a User

You can add attributes to users. Attributes allow to you specify custom user settings, which can then be used to call out particular users via the UserAttribute function. You can specify as many attributes as desired.

For example, you could specify a user's department or employee number.

  1. Access the Manage users and groups dialog box as described in Creating a New User.
  2. Locate the user whose settings you want to edit as described in Locating Users.
  3. Click the user to whom you want to add an attribute.
    The user's settings appear on the right side of the Manage users and groups dialog box.
     
  4. In the attribute list, click the + button.

    The attribute name dialog box appears.
  5. Type a name for the new attribute in the New attribute name text box. For example: department.
  6. Click OK.
    The attribute is added to the list.
     
  7. Specify a value for the attribute in the corresponding text box. For example: accounting
     
  8. Click save at the top of the Manager users and groups dialog box. The new user attribute is saved in the user's settings.

Resetting a User Password

You can reset a user's password. LincDoc will then send an email to the user, informing them that they need to create a new password.

  1. Access the Manage users and groups dialog box as described in Creating a New User.
  2. Locate the user whose password you want to reset as described in Locating Users.
  3. Click the user whose password you want to reset.
    The user's settings appear on the right side of the Manage users and groups dialog box.
  4. Click the reset password button.
     

Adding a User to a Group

You can add a user to a specific group, which allows you to easily grant multiple users roles at the same time.

Tip: It is recommended that you assign roles to groups instead of individual users. Although you can assign individual users to roles, assigning groups allows for easier administration. 

  1. Locate the user who you want to add to a group.
  2. Click the appropriate user.
    The user's information appears on the right side of the Manage users and groups dialog box.
     
  3. Click the users's Groups tab.
    Any currently assigned groups are displayed on the Groups tab. In the following example, the user is currently assigned to one group (Testing1).
     
  4. Click the + button on the Groups tab.

    The Select group dialog box appears.
     
  5. Locate the appropriate group using the Search button. In the following example, the string "T" was used as the search criteria.
     
  6. Click the group that will contain the user. The group is highlighted. 
  7. Click select.

    You are returned to the Manage users and groups dialog box, and the selected group appears in the groups and effective groups lists on the right side of the dialog box.
    In this example, the user has been added to the Testing2 group, and is now a member of this group as well as Testing1.
    Note: The user was already a member of the Testing1 group before being added to the Testing2 group. 
  8. Click save. The new group allocations are saved to your environment.

Removing a User

You can completely delete a user's account, if necessary.

  1. Using the Manage users and groups dialog box, locate the user that you want to remove.
  2. Hover over the user in the list of users.
    A delete button appears on the far right side of the user's entry.
  3. Click the delete button.
    A confirmation message appears.
  4. Click Yes.
    The user is removed.
  5. Click save at the top of the Manage users and groups dialog box.

    Tip: If you accidentally delete a user, you can close the dialog box without clicking save, and the deleted user will still be available when you re-open the dialog box.

 

13.4. Managing Groups

Groups allow you to combine user logically, allowing for easier administration, with regard to assigning roles to regulate form access.

Proceed to one of the following sections below for more information:

About Default Groups

Several groups are typically provided by default with your LincDoc installation. This section describes the default security roles assigned to these groups. These roles are the actual mechanism that controls what members of each group can access within LincDoc.

The following default groups, and their corresponding security roles, are provided with most LincDoc installations:

  • Admin.  This group is assigned the admin role.
  • Form Admin.  This group is assigned the form-admin role.
  • Reporters.  This group is assigned the report-admin role.
  • User. This group is assigned the login role.
  • User Admin.  This group is assigned the user-admin role.

Creating a New Group

You can create a new local group using the Manage users and groups dialog box. 

Note: If you are using an LDAP provider, groups are defined on the LDAP server and do not need to be created locally within LincDoc.

  1. From the system button, click users and groups.
     
    The Manager users and groups dialog box appears.
     
  2. Click the Groups tab.
     
  3. Click the + button.

    The New group dialog box appears.
  4. Type the new user's name in the Group name text box.
  5. Click OK.
    The new group is added to the list on the left side of the dialog box. In the following example, a group called "Advanced Training" has been created.
  6. Click save.
    The new group can now have users added to it, as desired. For more information, see Adding a User to a Group.

Locating Groups

When working with existing groups, you will need to locate the group in your group list before you can view it.

  1. Access the Manage users and groups dialog box as described in Creating a New User.
  2. Click the Group tab.
     
  3. Type a string in the search text box.
  4. Click the Search icon.

    All groups that contains the defined string are displayed.
    In the following example, the string "T" was used in the search.

Adding a User to a Group

The act of adding a user to a group is done on the Users tab. For more information, see Adding a User to a Group.

Viewing the Contents of a Group

It is not currently possible to view the contents of a group from the Groups tab. You can, however, see which groups a specific user belongs to via the Users tab.

Deleting a Group

You can remove a group by locating it and clicking the delete button, which appears when you hover over a listed group.

  1. Locate the group you want to delete.
  2. Hover over the group in the list of groups.
  3. Click the delete icon that corresponds to the group you want to delete.

    A confirmation message appears.
  4. Click Yes.
    The group is removed. 

13.5. Using Authentication Providers

Authentication providers allow you to create different ways to set up users and groups.

Two types of authentication providers are available in LincDoc:

  • Internal. Included in LincDoc.
  • LDAP. Can be configured to work with an existing LDAP (Active Directory) system.
Proceed to one of the following sections below for more information:

Viewing Existing Providers

You can view all of your client ID's currently defined providers by selecting client login providers from the system button.

Note: If you have been assigned the superuser permission, you can also view all login providers for all client IDs using the login providers option. For more information, see Configuring Login Providers (All Client IDs).

The Authentication providers dialog box appears, listing all of the currently defined providers. This dialog box provides access to all provider-based options including, but not limited to, enabling/disabling providers, making providers invisible to other users, and editing a provider's settings.

Proceed to one of the following topics for more information on the options available from this dialog box:

Creating a New Provider

You can create a new provider to control application access. This provider is created at the client ID level (it will be available to other users with access to your current client ID). There is no limit to the number of providers that you can create. However, one or two is the normal allotment.

  1. Access the Authentication providers dialog box.
  2. Click the new provider button.

    The New provider dialog box appears.
     
  3. Select the type of provider you want to create. You can select db (internal LincDoc provider) or ldap (external LDAP-based provider).
  4. Type a name for the provider in the ID text box. This setting will appear in the type column of the Authentication providers dialog box.
  5. Click add.
    The provider is added to the list of existing providers.
  6. Configure the provider. The configuration options differ based on if you have added an Internal LincDoc provider or an LDAP-based provider

Adding an Existing Provider

You can add a provider that has been previously defined at the administrative level. Providers accessed in this way are considered global providers, and can be see by all users who are logged into the system.

Note: This option is not available when using the login providers option.

  1. Access the Authentication providers dialog box.
  2. Click the add provider button.

    The New provider dialog box appears.
     
  3. Click the add button that corresponds to the provider you want to add.
    You are returned to the Authentication providers dialog box, and the selected provider appears in your list of providers.

Enabling a Provider

Once a provider has been added to the list on the Authentication providers dialog box, you can activate it and deactivate it, as necessary, using the check box in the enabled column.

In the following example, the provider labeled default corporate provider has been disabled (the corresponding check box in the enabled column has been cleared (unchecked)). 

This feature allows you to temporarily "turn off" defined providers, when you do not want them to be used, without having to completely delete them and then reconfigure them at a later date.

Important: Once you adjust the settings in the enabled column, be sure to click the save button at the top of the Authentication providers dialog box.

Controlling the Visibility of a Provider

Once a provider has been added to the list on the Authentication providers dialog box, you can determine whether or not it is visible on the LincDoc login page using the check box in the visible column. If the visible option is deactivated (if the provider is made invisible), the provider remains enabled (active), but it cannot be seen or selected by other users when they are accessing LincDoc.

Note: If you want to deactivate the provider, use the enabled column.

In the following example, the provider labeled default corporate provider has been made invisible (the corresponding check box in the visible column has been cleared (unchecked)). Notice that the provider is still active (checked in the enabled column).

You can also control the visibility of providers by editing the URL used to access LincDoc. For more information, see Configuring Your Login URL.

Important: Once you adjust the settings in the visible column, be sure to click the save button at the top of the Authentication providers dialog box.

Configuring an Internal Provider

You can configure an Internal-type provider to specifically control access to the LincDoc environment. This type of provider is included with LincDoc and is strictly designed to work with LincDoc.  

  1. Access the Authentication providers dialog box.
  2. Click the arrow button that corresponds to the Internal provider you want to configure.

    The Edit provider dialog box appears.
  3. In the General provider options area, enter information to create a custom link on the LincDoc login page for the specified provider, as shown below.
    1. Using the Help link label text box to specify the text that appears on the link. In the example above, this setting would contain the text "Acme Trailer Intranet".
    2. Using the Help link URL text box to specify the underlying web site address for the link.

    Tip: You can also use these two text boxes to specify a user registration URL that can be easily accessed from the LincDoc login page. For more information, see Using a Registration Path on the Login Screen.

  4. If you want to specify after how many days a password must be changed, click the Password expire check box, when specify (in days) how long a password can be used.
    You can also use the Lock after check box to specify a number of days after which accounts will automatically be frozen.
  5. If you want the system to not allow a user to log in after a certain number of authentication failures, click the Lock after authentication failures check box, and specify how many failed attempts will activate the lock-out option (Lock after option), and for how many minutes the lock-out will last (Lock for option).
  6. In the Password requirements area, alter any of the following settings, as necessary:
    • Minimum length. Specify the minimum number of characters that a password can contain. The default setting is 6.
    • Maximum length. Specify the maximum number of characters that a password can contain.
    • Minimum letters. Specify the minimum number of letters that a password can contain.
    • Minimum lowercase letters. If you want to force password to contain lowercase letters, specify the minimum number required.
    • Minimum uppercase letters. If you want to force password to contain uppercase letters, specify the minimum number required.
    • Minimum digits. If you want to force password to contain numbers, specify the minimum number required.
    • Minimum non-alphanumeric. If you want to force password to contain letters, and not allow all-number passwords, specify the minimum number of non-numeric characters required.
    • Maximum sequential letters. Specify the maximum number of alphabetically sequential letters that can appear in passwords (a,b,c,d,e,f,g, etc.). The default value is 3.
    • Maximum sequential numbers. Specify the maximum number of numerically sequential numbers that can appear in passwords (1,2,3,4,5, etc.). The default value is 3.
    • Maximum QWERTY sequence. Specify the maximum number of keyboard sequential letters that can appear in passwords (a,s,d,f,g, etc.). The default value is 3.
    • History. Specify how many former passwords are saved by the system, which prevents users from re-using passwords until the number of new passwords defined by this setting is met.
  7. (optional) Click the test button at the top of the dialog box to verify that the provider is working correctly.
  8. Click the save button at the top of the dialog box.
    Your configuration changes are saved, and you are returned to the Authentication providers dialog box. 

Configuring an LDAP Provider

You can configure an LDAP-type provider to connect to your current LDAP system, allowing you to use existing usernames and passwords to log into LincDoc as well as other software systems in your environment. 

Important: For complete details on the settings necessary for this type of provider, contact your local system or LDAP administrator. 

  1. Access the Authentication providers dialog box.
  2. Click the arrow button that corresponds to the LDAP provider you want to configure.

    The Edit provider dialog box appears.
  3. In the General provider options area, enter information to create a custom link on the LincDoc login page for the specified provider, as shown below.

    1. Using the Help link label text box to specify the text that appears on the link. In the example above, this setting would contain the text "Acme Trailer Intranet".
    2. Using the Help link URL text box to specify the underlying web site address for the link.

    Tip: You can also use these two text boxes to specify a user registration URL that can be easily accessed from the LincDoc login page. For more information, see Using a Registration Path on the Login Screen.

  4. Click the Active Directory button to automatically populate some of the settings in the LDAP server and Users areas.
     
  5. Edit the remaining settings, as necessary, based on your current LDAP configuration.
    Important: For complete details on the settings necessary for this type of provider, contact your local system or LDAP administrator. .
  6. (optional) Click the test button at the top of the dialog box to verify that the provider is working correctly.
  7. Click the save button at the top of the dialog box.
    Your configuration changes are saved, and you are returned to the Authentication providers dialog box. 

Deleting a Provider

You can delete an existing provider by clicking the delete icon on the far right side of the Authentication providers dialog box.

Note: You cannot delete the initial system provider. It is provided, by default, with the LincDoc installation. Access to other providers is based on your administration level.

13.6. Using Document-Specific Security (Coming Soon!)

This help topic is currently under construction. For more information in the interim, contact Technical Support.

 

13.7. Using Document-Specific Security in a SQL Repository

Document-specific security (or more accurately node-level security) allows you to configure access control for each node in a SQL repository individually, as you deem necessary for your LincDoc environment.

node is simply an individual item in your SQL repository, and can be used to collectively describe a document, a file, or a folder. Each of these nodes can have an individual security policy applied to them, if desired.

Proceed to one of the following sections below for more information:

About Policy Inheritance Behavior in SQL Repositories

Although the common scenario is that a node inherits security controls from its parent if it does not have a policy set for itself, this default behavior can be altered, if desired. From the repository level, you can specify if security policies are always initially inherited (the default setting) or if policies are dynamically set based on rules you specify in the SQL repository.

For more information on defining SQL repository security policy settings, see Dynamically Defining a Security Policy

Accessing the Security Options

Document (node) security for SQL repository items is defined using the Security for dialog box, which is accessed from the Browse dialog box.

  1. Access the Browse dialog box using the browse button on the LincDoc toolbar.
    .
    For more information on using the Browse dialog box, see Files and Folder - Browsing and Security.
  2. Locate the document, folder, or file whose security information you want to specify.
  3. Right-click the item, and select security from the menu that appears.
    The Security for dialog box appears.
  4. Proceed to one of on the following sections below, based on what you are trying to accomplish:

Specifying a Node-Specific Policy

You specify a node-specific policy by first determining if a policy exists (if not, you need to create one), and then specifying the individual security types and access privileges.

  1. Access a node's security policy as described in Accessing the Security Options.
  2. Determine whether or not a policy has already been created for this node. If no policy has been defined, a message appears stating this fact.
  3. If necessary, click the create policy button.
    The "no policy" message disappears, the create policy button is relabeled clear policy, and the bottom portion of the dialog box becomes editable.
  4. In the type list on the left side of the dialog box, click the type whose privilege you want to edit. These types represent users or groups of users that can share privileges. By default, the following types are available:
    • everybody. Represents all users, groups, or roles (including the guest role) that can access the node, despite the provider. It is a large, all-inclusive group.
    • owner. Only applies to the current owner of the node. For more information on ownership or changing a node's owner, see Changing the Ownership of an Item.

    Note: You can also create custom types for specific users, groups, roles, or tokens. For more information, see Creating a Custom Security Type.

  5. In the Privileges for list on the right side of the dialog box, select the privileges that are granted for the selected type.
    Privileges are specific to the item on which the privileges are granted. Selected privileges show a check mark in the corresponding check box.
    The following privileges allow you to control each operation that LincDoc performs upon a SQL repository item:
    • add_child. Allows for the adding of a document, a folder, or file within the SQL repository.
    • delete_child. Allows for the removal of a document, a folder, or a file that resides within the SQL repository.
    • history_delete. Allows for the removal of an old (non-current) version of a document or file.
    • history_read. Allows for the viewing of the version history of a document or file.
    • modify_security. Allows for the modification of the owner or security rules of a document, a folder, or a file.
    • read. Allows for the reading of the content of a file or the list of files in a folder, if and only if the parent folder is readable.
    • read_by_id. Allows for the reading of the content of a file or the list of files in a folder, but, unlike read above, it applies to a specific node ID. Furthermore, the parent folder does not need to be readable.
    • read_data. Allows for the reading of a document's data.
    • write. Allows for the updating of the content of a document or file or the data within a document.

    The following privilege allows you to control some operations that LincDoc allows a user to perform with data retrieved from a SQL repository:

    • show_edit_ui. Allows for the accessing and using of the Data Entry View in LincDoc.
    In the example below, the history_delete and read privileges have been selected.
  6. If necessary, define privileges for additional types.
  7. Once all privileges for all types are defined, as needed for your particular scenario, click save in the upper left corner of the dialog box.

Creating a Custom Security Type

You can create a custom security type, if you need additional types beyond the everybody and owner types supplied by default.

For an example of when a custom type is useful, click here.

  1. Access an item's security policy as described in Accessing the Security Options.
  2. Click the + button adjacent to the type list.

    A list of options appears.
  3. Select one of the following options:
    • user. Allows you to assign privileges to a specific user.
    • group. Allows you to assign privileges to a defined group.
    • role. Allows you to assign privileges to a defined security role.
    • token. Allows you to assign privileges based on a defined token.
  4. Proceed to one of the following sections below, based on your choice in the previous step:

Defining a User or Group Security Type

If you decide to add a custom user or group type, you need to specify a provider and then select an existing user or group you want to use.

  1. Once you select the user or group option from the + button's menu, the Select dialog box appears.
  2. Select a provider that contains the user or group from the Provider drop-down list.
  3. Perform one of the following actions:
    • If you know which user or group you want to use, type the name (or a portion of the name) in the text box below the Provider drop-down list.
    • Leave the text box below the Provider drop-down list blank to search for all defined users or groups in the selected provider.
  4. Click the search button. A list of users or groups is returned.
  5. Click the user or group you want to use, and click select in the upper left corner of the Select dialog box.
    You are returned to the Security for dialog box, and a new entry is added to the type list.
  6. Assign privileges to the new type as described in Specifying a Node-Specific Policy above.

Defining a Role Security Type

If you decide to add a custom role type, you need to select the existing role you want to use.

  1. Once you select the role option from the + button's menu, the Select role dialog box appears.
  2. Click the desired role.
    You are returned to the Security for dialog box, and a new entry based on your role selection is added to the type list.
  3. Assign privileges to the new type as described in Specifying a Node-Specific Policy above.

Defining a Token Security Type

Important: This security type, accessed as described below, is considered an advanced LincDoc feature. In addition, this procedure is not the recommended way to set up token security. Contact LincDoc Technical Support for configuration assistance. 

If you decide to add a custom token type, you need to define the new token and determine whether or not it will have an expiration date.

This security type allows you to specify policies that can be used throughout the LincDoc interface. You can also set them to expire at a certain date and time.

  1. Once you select the token option from the + button's menu, the Token policy entry dialog box appears.
  2. In the Type text box, enter a name for the token. This name will be used to identify the token through the rest of the LincDoc interface.
  3. In the Token text box, view the automatically created token. You can alter this value, if desired, directly in the text box. You can also click the refresh button (to the far right of the text box) to have a new value generated.
  4. If you'd like the token to only be available for a limited time, click the Expires check box, and specify a date and time from the options that appear. When this specified date/time is reached, the token will no longer be valid.
  5. Click save.
    You are returned to the Security for dialog box, and a new entry, based on the defined token, is added to the type list.
  6. Assign privileges to the new type as described in Specifying a Node-Specific Policy above.

For more information, see Example: Token-based Security Target.

Viewing a Security Type's Settings

The everybody and owner security types, as well as any custom user, group, or role types, display definition information in the column adjacent to the type column in the type list.

 

For token types, the name of the token itself is displayed in the column adjacent to the type column in the type list.

In addition, you can click the "information" icon adjacent to the token's name to view the token's value and (if applicable) the expiration date and time.

 

Removing a Security Type

You can remove any defined security type, including the default everybody and owner types, by clicking the delete button that appears when you select a type in the type list.

Removing the Current Policy

You can remove a defined, document-specific policy using the clear policy button. You have the option of completely clearing the policy (and reverting to an inherited policy based on your SQL repository settings) or simply clearing all policy settings, but leaving the document-specific policy available for redefining.

  1. Access an item's security policy as described in Accessing the Security Options
  2. Click the clear policy button.

    The Clear policy dialog box appears.
  3.  Click one of the following options:
      • Delete policy and inherit from parent. Deletes all policy settings and re-inherits the security policy from the parent item. Basically, you are returning the security policy to its state before you created a custom document-specific policy, and the inheritance message reappears.
      • Clear all privileges from policy. Clears all selected privileges for the everybody and owner types, and deletes any defined custom types. The custom policy is retained (as it appears immediately after the create policy button is clicked), but no privileges are selected (all check boxes are cleared).

      The policy is updated.

  4. Click save to keep the cleared policy, or define a new policy as described in Specifying a Node-Specific Policy.

Changing the Ownership of an Item

You can change the user who is currently designated as a node's owner using the change owner button.

The current owner and the user's provider are displayed immediately below the Security for dialog box's toolbar.

Important: You must either be a superuser (as defined in your user settingsor possess the modify_security privilege to change a node's owner setting.

  1. Access an node's security policy as described in Accessing the Security Options
  2. Click the change owner button.

    Several options appear.
  3. Select one of the following options:
      • make me owner. You (the current user) are given ownership of the item.
      • select user. Allows you to specify a provider and specific user via the Select user dialog box. The selection procedure is identical to the one used when specifying a user for a custom security type.
      • no owner. No one will own the item. If the node previously had an owner, that owner's security policy will no longer apply.

      The ownership of the selected item is updated, based on your selection.

  4. Click save to retain the updated ownership setting.

Changing Back to the Previous Security Setting

You can return to the previously saved policy setting using the revert button.

For example, if you have defined a single policy, clicking the revert button will change back to the original, inherited policy. Additionally, if you have defined a policy and then cleared it (using the clear policy button), clicking the revert button will reapply the last defined policy.

Basically, this button returns to the previous policy definition (even if no policy was defined). It behaves similar to a standard undo button.

13.8. Using SQL Repository-Specific Security

You can define your SQL repository to define the security policy for saved documents. Each time a document is saved (created or updated), a new security policy can be generated according to a set of rules defined within the repository. These rules are configured via the Security tab on the SQL repository's Configure dialog box.

Proceed to one of the following sections below for additional information:

Accessing the Repository's Security Options

The security options for a repository are set using the Security tab on the repository's Configure dialog box, which is accessed via the form's Admin dialog box.

  1. On the Admin dialog box, click the Repositories tab, and click the configuration button (wrench icon) that corresponds to the repository you want to configure.
  2. Once the Configure dialog box appears, click the Security tab.
    The two, initial security options appear (unless you have already defined additional settings).
  3. Proceed to one of the following sections below, based on how you want your repository to determine security policies:

Inheriting Security Policies

When a document is saved to the repository, if the Do not set a security policy - inherit policy from the parent option is selected, the document will not have its own security policy. Instead, it will inherit the policy from the first ancestor that has a set policy (based on your repository's tree-like structure, which is similar to Windows Explorer). Therefore, the item's effective policy will be that of its parent.

If that document happens to create one or more subfolders based on its token-based name, those folders are also created with no security policy (that is, they also inherit their policy from the first ancestor that currently has a policy).

Generating Security Policies

When a document is saved to the repository, if the When saving a document, generate the security policy by evaluating the rules below option is selected, a policy will be generated for each item based on the rules you specify.

First, you need to determine the initial policy state. After that, you need to specify the rules for creating the policy. Both of these steps are described below.

Determining the Initial Policy State

When generating a policy for a document to be saved, the specific repository item can start with a fresh policy or apply rules to an existing policy.

Tip: In most cases, starting with a fresh policy is best.

  1. On the Security tab, click the When saving a document, generate the security policy by evaluating the rules below option.
    Additional options appear in the bottom portion of the tab.
  2. Click one of the following options:
    • Start with an empty policy. Allows you to create a new policy from scratch (beginning with a completely empty security policy).
    • Apply the rules to the document's existing security policy. Allows you to set up a custom policy that builds on the policy of the selected item's first ancestor (the first ancestor that actually has a policy).
  3. Proceed to Specifying Policy Rules below.

Specifying Policy Rules

Once you have determined that you want to use rules to specify your security policy, you need to add and define the individual rules. When a document is saved to your repository, each rule is evaluated, in the order it is listed. If the condition evaluates to true, the selected privileges are used to update the selected target, as specified.

  1. On the far right side of the table's columns, click the + button.

    An empty rule is added to the table.
  2. Select when condition will apply using one of the following options: AlwaysNever, or any available custom conditions (such as Display Spouse? in the example below).

    For more information on creating a custom condition, see Creating and Editing Custom Conditions.
  3. When the rule's specified condition evaluates to "true", specify the action that will be taken in the +/- column:
    • add. The specified privileges are added to any existing policy settings.
    • remove. The specified privileges are removed from any existing policy settings.
    • replace. The specified privileges replace any existing policy settings.
  4. Specify what will be impacted using the drop-down list in the target column.

    The following options are available:
    • owner. Applies only to the owner of the item.
    • world. Applies to all users, groups, roles, and any existing tokens.
    • user. Applies to a specific user, whom you need to specify.
    • group. Applies to a specific group, which you need to specify.
    • role. Applies to a specific role, which you select from the Role drop-down list that appears.
    • token. Applies to a token that you need to define.
  5. Select the individual privileges granted by the rule using the corresponding check boxes.

    You can also click the all or none links, below the list of privilege check boxes, if you want to quickly select all of the listed privileges or clear (uncheck) all selected privileges.
    For more information on what is granted by each privilege, click here.
  6. If desired, add additional rules using either of the available + buttons, as highlighted below.


    Note: You can also delete any added rules using the - button.
  7. Return to step 1 and define additional rules, if necessary.
  8. When you are done adding rules, click save in the upper left corner of the Configure dialog box.

Selecting a User Target

If you select the user option from the target drop-down list, you need to select which user is affected by the rule you are defining. 

  1. After you select user from the target drop-down list, the current user and the select user button appear.
  2. Click the select user button.
    The Select user dialog box appears.
  3. Select the appropriate provider from the corresponding drop-down list.
  4. (optional) Add text on which to base your search in the text box below the Provider drop-down list.
  5. Click the search button.

    A list of users within the selected provider is displayed.
  6. Click the desired user from the list that appears.
    The user is highlighted when selected.
  7. In the upper left corner of the Select user dialog box, click select.
    You are returned to the Configure dialog box, and the selected user appears above the select user button.
  8. Return to step 5 above.

Selecting a Group Target

If you select the group option from the target drop-down list, you need to select which group is affected by the rule you are defining.

  1. After you select group from the target drop-down list, the current group (if any) and the select group button appear.
  2. Click the select group button.
    The Select group dialog box appears.
  3. Select the appropriate provider from the corresponding drop-down list.
  4. (optional) Add text on which to base your search in the text box below the Provider drop-down list.
  5. Click the search button.

    A list of groups within the selected provider is displayed.
  6. Click the desired group from the list that appears.
    The group is highlighted when selected.
  7. In the upper left corner of the Select group dialog box, click select.
    You are returned to the Configure dialog box, and the selected group appears above the select group button.
  8. Return to step 5 above.

Defining a Token Target

If you select the token option from the target drop-down list, you need to name your token and, if desired, set an expiration date.

  1. After you select token from the target drop-down list, additional options appear, as shown below.
  2. In the Token type text box, enter a name for the token. This name will be used to identify the token throughout the rest of the LincDoc interface.
  3. If you'd like the token to only be available for a limited time, click the Expires check box, and specify how many minutes, hours, or days the token will be available using the corresponding options (highlighted below).
  4. Return to step 5 above.

For more information, see Example: Token-based Security Target.

Example: Specifying Rules

The scenario below shows a series of rules to evaluate. When saving a document to your repository, each rule listed below would be evaluated in the order they are listed, thereby building off of one another.

If the first condition evaluates to true, the rule adds the read privilege to the system/admin user target.

If the second condition evaluates to true, the rule replaces the read privilege from the first condition (which is also shown in the example below) with the read_by_id and write privileges to the same system/admin user target.

If the third condition evaluates to true, the rule replaces the read and write privileges to the system/Users group target. The policy for the system/admin user is unchanged, since it is not the target of the third condition.

If the fourth condition evaluates to true, the rule removes the write privilege from the system/Users group target. Again, the policy for the system/admin user is unchanged, since it is not the target of the fourth condition either.

13.9. Using Laserfiche Repository-Specific Security

This topic describes how to configure Laserfiche-specific repository security settings, including prerequisites that must be met prior to configuring the repository's security. 

Proceed to one of the following sections below for more information:

Completing Necessary Prerequisites

Prior to configuring security your Laserfiche repository, the following actions need to be completed:

  1. Install and configure the LincDoc connector on your Laserfiche server.
  2. Verify that the connector is working properly. If you are having any problems, review the troubleshooting topic.
  3. Verify that a Laserfiche repository is available. If not, one should be added to your list of available repositories.
  4. Confirm that the Generate .html launcher file? option is enabled.
  5. Verify that your eForm or Document Package security is properly configured. You need to have the appropriate levels set for run access roles (for example, the login role).

    Note: Generally, for users to run the eForm or Document Package, the Status drop-down box on the Admin dialog box's initial tab is set to production, and the login role has been granted the run privilege on the Security tab. This configuration allows anyone with login access to actually run the eForm or Document Package, while more empowered users (such as administrators) can also edit the form.

Accessing the Laserfiche Repository Security Settings

Once you have completed the necessary prerequisites in the previous section, you need to access the Laserfiche repository's security settings.

  1. From the eForm or Document Package Admin dialog box, click the Repositories tab.
  2. If necessary, add the Laserfiche repository to the list of repositories.
  3. Click the config button for the Laserfiche repository.

    The Configure dialog box appears.
  4. Click the Security Config button.

    The Role Security Config dialog box appears.

    This dialog box contains a list of security settings (on the left side of the dialog box) and two columns of roles: Role for owner and Role for non-owner. The only active security settings that you need to use are the following: read, read data, write, and show edit ui.
  5. Proceed to Specifying the Laserfiche Repository Security Settings below.

Specifying the Laserfiche Repository Security Settings

Once you access the Role Security Config dialog box, as described in the previous section, you need to adjust the repository's security settings, based on your individual repository scenario. 

  • If the repository is not sending a LincDoc login to Laserfiche (via the Send LincDoc login to Laserfiche? setting on the Configure dialog box):
    • The owner of any documents submitted into Laserfiche is actually the user name in the handler.
    • Modify the Role for non-owner settings for the following security settings: read, read data, write, and show edit ui.

      To force a username/password prompt when opening a link (such as an "edit" or "sign" link, or the html launcher file inside the Laserfiche repository), assign the login role to the four security settings listed above.

      To allow these same links to be opened without a valid username/password, assign the guest role to the four security settings listed above.

    • The Role for owner settings have no effect, and therefore should be left blank.
  • If the repository is sending a LincDoc login to Laserfiche (which requires that the LincDoc provider is an LDAP provider, and Laserfiche itself is also configured for its users/groups to be in that same LDAP directory (Active Directory)):
    • The logged-in user becomes the owner, instead of the user name in the handler.
    • Enable the appropriate roles in the corresponding lists:
      • In most situations, the read, read data, write, and show edit ui settings should always be selected (checked) on for the owner for the login role.
      • To allow non-owners access (but still requiring a valid username/password), select (check) the read, read data, write, and show edit ui settings for non-owners for the login role.

Important: If your eForm of Document Package is an open form (meaning that the guest role has the ability to run the form), and the guest role does not have the ability to write to the form, then the correct user must log in prior to running the html launcher file. Otherwise, the launcher may think a guest user is attempting to access the form and will deny access.

Once you have configured the Laserfiche security settings, save and close all open dialog boxes.

13.10. Example: Token-based Security Target

This example describes how to set up token-based security for generated documents via your SQL repository.

Important: This example scenario is not supported with Laserfiche or DocuWare repositories.

About the Example Scenario

In this scenario, you want to store generated documents (from an existing eForm or Document Package) inside your LincDoc SQL Repository. When the storage task is executed by LincDoc, you want to grant a manager full read/write access to all submitted documents. At the same time, you only want to grant the individuals (who submit the documents) read/write access to the documents that he/she submitted. The mechanism by which individuals can get back to their respective documents to make changes is in the form of an email sent to them. This email contains a custom link, which, when clicked, takes them directly to the eForm or Document Package, automatically populated with the data they previously submitted.

A folder contains documents for numerous individuals. You want to grant a manager access to all of the documents, but individuals should only have access to their specific file within the folder (the document he/she created). In addition, these individuals will be able to access the document easily, and securely, via a link in an email message.

Note: Throughout most of this example, the medical form (seen in other locations within the LincDoc help) is used as the example eForm. However, you can use any eForm or Document Package you like, if it suits your environment and the example scenario.

The overall process for configuring this scenario is as follows:

  • Create a new folder in your repository that will hold all of the generated documents. 
  • Set a security policy for the new folder.
  • Verify that all generated documents for a particular eForm or Document Package will be saved in the new folder.
  • Set token-based security through your repository.
  • Define an email action to provide access to the documents generated by the selected eForm or Document Package.
  • Execute and submit a sample document.
  • View the generated document, both as an administrator (via the LincDoc Browse dialog box) and as the end user (via an automatically generated email).

Creating the Folder and Setting Folder-level Security

The first step is to create a new folder in your repository. This folder will store all of the generated documents in this scenario. Once created, the manager needs to have read and write access to this folder to allow full access to all of the generated documents.

  1. Login to LincDoc as an administrator.
  2. If necessary, select the appropriate eForm or Document Package from the Form Selection drop-down list.
    Tip: You can use any eForm of Document Package you like, as long as it has an email field to you can define prior to submitting it.
  3. Click the browse button to access your repository's Browse dialog box.
  4. On the Browse dialog box's toolbar, click the new folder button.

    The New folder name dialog box appears.
  5. In the name text box, type secure.
  6. Click OK.
    The new folder is created at the top level of your repository.
  7. Right-click the secure folder, and select security from the menu that appears.

    The Security for dialog box appears. Notice that no policy is currently defined for the folder.
  8. Click the create policy button.

    The lower portion of the dialog box becomes editable.
  9. In the type list on the left side of the dialog box, click the everybody type.
  10. In the Privileges for everybody list on the right side of the dialog box, verify that no privileges are selected (checked).
  11. In the type list on the left side of the dialog box, click the owner type.
  12. Select (check) the following privileges for the owner type in the Privileges for owner list:
    • add_child
    • read_data
    • show_edit_ui
    • write
  13. Your dialog box should appear as shown below (you will need to scroll up to see the add_child privilege in the list).
  14. These selections give the owner of a document (the user who fills out the eForm or Document Package and submits it) the ability to add the generated document to a folder (add_child), read the document's data (read_data), see the data in the Data Entry View (show_edit_ui), and edit the data (write).
    For more information on all available privileges, click here.

  15. At the top of the Security for dialog box, click save.
  16. Click OK to confirm the action.
  17. Close the Security for dialog box.
    You are returned to the repository's Browse dialog box.

Defining the Token-based Name Setting

Now that you have created a folder for storing all of the documents, you need to configure your eForm or Document Package so that all generated documents are automatically placed within the correct folder and given a logical file name.

  1. On the LincDoc toolbar, click the admin button.
  2. Select edit from the menu that appears.
    The Admin dialog box appears.
  3. On the eForm/Document Package tab, enter the following text directly in the Token-based name text box:
    secure/secure1-<<:doc-meta:created-date:hh-mm-ss>>
    Your tab should appear as shown below.

    This DRAT expression saves all generated documents to the new secure directory (via the secure/ entry), adds secure1- to the beginning of each document, and creates the rest of the file's name based on the creation date of the document (via the text enclosed by << >>).
    For more information on using DRAT, see Using Document Refinement Annotation Transformer (DRAT).
  4. Save the eForm or Document Package.

Configuring Token Security Via the Repository

Now you will create a rule in your repository, which will define token-based security for all documents stored in the repository based on the current eForm/Document Package.

  1. From the Admin dialog box, click the Repositories tab.
  2. Click the edit (wrench) button for the repository you used earlier when creating the secure folder.

    The repository's Configure dialog box appears.
  3. Click the Security tab.
    This tab can be used to create security rules for items stored in the repository. In this scenario, a rule will be created to configure token-based security.
  4. Click the When saving a document, generate the security policy by evaluating the rules below option.
    Additional options appear, including a table that allows you to create rules for creating a security policy.
  5. Verify that Start with an empty security policy is selected.
  6. On the right side of the rules table, click the add button to create an empty rule.

    A blank rule appears in the table.
  7. Configure the blank rule.
    1. Verify that the condition drop-down list is set to Always.
    2. Verify that the +/- drop-down list is set to add.
    3. Select token from the target drop-down list.
      Additional options appear.
    4. Type self-approval in the Token type text box.
      This entry represents the token name, and will appear in LincDoc when the token is used. This particular token represents one of two tokens created for document security, and it will control access to the document. The second token, which is created by LincDoc when a document is created, is the UUID that identifies the document itself.
    5. In the privileges column, select the last five privileges listed:
      • read
      • read_by_id
      • read_data
      • show_edit_ui
      • write

    Once complete, your rule should appear as shown below.

  8. Click save to close the Configure dialog box.

Specify an Email Action to Provide Secure Document Access

In this section, you will create an email action that will provide document access to the user that submitted the form (based on that individual's email address, as specified in the form).

  1. On Admin dialog box, click the Actions tab.
  2. In the Buttons list, click the arrow button the corresponds to the Submit button.

    Additional options appear.
  3. Hover over add, point to action, and click email.

    An email action is added below the Submit button.
  4. Click the arrow button that corresponds to the new email action.

    Additional options appear.
  5. Click edit.
    The email dialog box appears.
  6. In the Reply To drop-down list, specify an email address that will appear as the "from" address when the email is received by an applicant.
  7. Using the drop-down list adjacent to the TO drop-down list, select the field that represents the applicant's email address in the eForm or Document Package.
  8. In the Subject text box, enter a meaningful subject for the email message.
  9. Click the Send as HTML check box.
  10. Enter the following text in the large, message body text box:
    Link: <<:doc-link:edit:Click here to edit:::html::self-approval>>
    This text uses DRAT syntax, and will provide a clickable link (the Click here to edit portion) in the email generated by this action. This link will allow a user to access a secure version of their document.
    In this example, the authentication token types DRAT parameter is being used with the doc-link DRAT type. Notice how the self-approval token, which was defined earlier, is part of this DRAT expression. For more information on using DRAT, see Using Document Refinement Annotation Transformer (DRAT).
    When completed, your email action should appear as shown below.
  11. Click save to close the email dialog box.
  12. From the Admin dialog box, save the eForm or Document Package.

Executing and Submitting the Form

Now that you have configured token-based security for this scenario, you need to execute the eForm/Document Package, fill in the necessary information, and submit it to see how the security functions.

  1. (optional) Login as a sample non-admin user. You can also remain the administrator if you are just using this scenario to test and understand the process.
  2. On the Admin dialog box, click Run.
    The Data Entry View of the eForm/Document Package appears.
  3. Fill out the eForm/Document Package, as desired.

    Important: Be sure to specify an email address to which you have access, since it will be used to provide later access to the generated document.

  4. Once the form is complete, click Submit.
    A document is generated and saved to your repository. In addition, an email is generated and sent to the email address you specified.

Examining the Generated Document (Admin)

Now that the document has been generated, you can examine it in the Browse dialog box and see how the token-base security was applied.

  1. On the LincDoc toolbar, click the browse button to open the Browse dialog box.
  2. Locate the newly generated document (in the secure folder you created earlier).
  3. Click the check box adjacent to the file to select the file.
    Additional buttons appear in the Browse dialog box's toolbar.
  4. In the toolbar, click the security button.
    The Security for dialog box appears.
  5. In the type list on the left side of the dialog box, click the everybody and owner types. Notice that no privileges are selected for either entry (in the Privileges list of the right side of the dialog box).
  6. In the type list, click the token type. Notice that the name you specified earlier (self-approval) appears in the type list, allowing you to easily identify the token.
  7. In the Privileges for token self-approval list on the right side of the dialog box, verify that the last five privileges are selected (as defined earlier in your repository).
  8. Close the Security for dialog box.

Viewing the Form Via the Email Message (Individual Applicant)

Based on how the email action was set up in the eForm/Document Package, the submitter (document creator) can now easily access the OpenForm version of the document. Once open, the user can both view the original information and make changes, if necessary.

  1. Open the email generated by the eForm or Document Package.
    The body of the email will look similar to the example below.
  2. Click the Click here to edit link.
    The OpenForm version of the document is opened in your default web browser. Notice that this view allows you to further edit the file and then resubmit (update) it.
  3. Examine the URL in your web browser. An example URL is shown below (portions have been concealed for security purposes).

    Important: This URL grants full access to the specified document, including the ability to edit the document's contents, to anyone who possesses it. Therefore, it should be distributed with care.

    The following UUID strings are present in the URL:
    • First UUID. Identifies the document itself within LincDoc.
    • Second UUID (known as the access token). Controls login access to the document, allowing automatic (but secure) access after the URL is clicked in the email.

13.11. Setting Up Active Directory

See here for how to enable an Active Directory (LDAP) authentication provider. Note: AD integration is a separately licensed module.

About Active Directory User Attributes

You can prepopulate LincDoc fields from attributes from the logged in user's Active Directory record. 

On the Admin dialog box (accessed via the edit option), click the Fields/Sections tab. In Advanced Field Attributes, click the Default Calculation check box, then hit the "details" arrow on the right, select Edit Calculation, make sure the function icon is selected, , and then select the UserAttribute function from the drop-down. Then select the desired attribute in the new drop-down. Currently, only username, full name, or email address are available.

14. Searching Generated Documents

14.1. About the Search Feature

LincDoc has the ability to configure and save searches, within your SQL Repository, to locate previously generated documents.

This feature provides more flexibility when trying to find documents, and can be helpful when your repository contains a large number of generated documents.

Important: This feature is not currently available with DocuWare or Laserfiche repositories. For this reason, it is recommended that you use the search tools included with those respective products.

14.2. About Search Security

LincDoc uses two methods for securing search access. Search access allows users to find generated documents and view them in the search results list on the Search dialog box.

Note: View access must be granted to allow the user to retrieve and open the document.

The following security methods are used:

  • Form-level search security (described below)
  • Individual search filter restrictions (described here)

Form-level search security controls whether or not the Search button appears on the LincDoc toolbar when a form is selected from the form selection drop-down list. To have search rights to the form, the user's group must be selected on the Security tab for the eForm or Document Package in the Roles for search access list.

14.3. Accessing the Search Feature

 The search feature is executed at the form level and accessed using the search button on the LincDoc toolbar.

  1. Using the form selection drop-down list, verify that you are viewing the form that was used to generate the documents for which you want to search.
    Important: The search only displays results for the currently selected form.
  2. On  the LincDoc toolbar, click the search button.

    The Search dialog box appears.
  3. Proceed to one of the following topics:

14.4. Configuring a Search

You can view an existing search's configuration options, as well as create and configure new searches, using the Search dialog box. Once configured, you can use these searches to locate generated documents in your SQL repository.

Proceed to one of the following sections below for more information:

Selecting an Existing Search

You can select a previously defined search using the search drop-down list in the top left corner of the Search dialog box.

Once selected, access the search configuration options and edit them, as desired.

Creating a New Search

You can create a new search using the search drop-down list in the top left corner of the Search dialog box.

  1. In the search drop-down list, type the name of the new search.
    In the following example, a search called "New Search" is being created.
  2. Click any white space to the right of the search drop-down list (as shown by the mouse cursor below).

    The Save New Search dialog box appears.
  3. Specify one of the following save options:
    • everybody. The new search will be available to all users in the current client ID.
    • only me. The new search will only be available to you. Other users will not see it and will not be able to use it.

    The new search is saved.

  4. Access the search configuration options and edit them, as desired.

Viewing the Search Configuration Options

By default, the search configuration options are hidden on the Search dialog box.

You can access them using one of the following methods:

  • Click the thin line near the top of the Search dialog box.
  • Click the triangle icon in the top right corner of the Search dialog box.

    Note: You may need to resize the Search dialog box (click and drag to the right) to see this triangle icon.

The configuration options are displayed on several tabs immediately below the thin line/triangle icon (and above the search results table). 

Proceed to Specifying the Configuration Options below.

Specifying the Configuration Options

Once you access a search's configuration options, you can adjust the options, as desired, to verify that the search locates the correct generated documents in your repository. These configuration options are displayed in several tabs on the Search dialog box.

Proceed to one of the following sections below for more information on each individual tab:

The options tab allows you to specify a description for the search, which can be helpful for allowing other users to easily understand how to use the search.

This description will appear immediately below the search's name in the search drop-down list.

Specifying Search Filter Settings

The filter tab allows you to specify exactly what is searched for when the search is executed.

Using at least one condition, determine what the search will attempt to locate in your repository.

In the following example, all documents whose med_plan field contains the text gold will be returned by the search.

Tip: Use the + and - buttons to add or remove conditions, as necessary to define your search filters.

For more information on defining conditions, see Creating and Editing Custom Conditions.

Specifying Search Column Settings

The columns tab allows you to control the information that appears in the search results table (in the lower half of the Search dialog box). This table displays the documents that match your search criteria, after a search is executed.

The columns  tab is divided into the following three lists:

  • The available list shows any columns that are not currently being used in the search results table. If you want a column to appear in the table, you can drag it to the selected column or click the + button (to the right of the column's name).
  • The selected list shows all columns that are currently being used to create the search results table. If you do not want a column included in the table, you can drag it to the available list or click the - button (to the right of the column's name).
  • The sort columns list allows you to specify the order in which the search results appear (the sort order) in the search results table. You can select a single column or multiple columns using the column's corresponding check boxes. The order the columns appear in the list determines the sort order, with the initial sort being based on the column at the top of the list, followed by the next selected column, and so forth. You can also control the sort order (ascending or descending) using the icon that appears to the right of each selected column. The upward pointing arrow means ascending order is used, while the downward pointing arrow means descending order is used. If desired, you can click the current setting (arrow) to change it to the other setting (arrow).

Specifying Search Queue Settings

The queue tab allows to you specify if the configured search will be automatically executed when certain users log into LincDoc.

To use this option, you need to activate it by selecting the corresponding check box (it is not active by default) and then specify a user type that will use the option.

In the following example, the option has been activated and the search will automatically be performed for all users assigned the user-admin role.

When a user with this role next logs into LincDoc, a Queue dialog box similar to the following example will appear, showing the automatically executed search results.

Tip: You can click the button adjacent to the wrench button (highlighted below) to change from the Queue dialog box to the standard Search dialog box.

In addition, if this option is enabled for multiple searches, tabs appear at the top of the Queue dialog box. One tab appears for each search that uses the option. In the following example, two searches appear.

For more information on roles, see Managing Security Roles.

Saving Your Updated Search

Once you have completely configured your search, you need to save your changes.

  1. In the upper portion of the Search dialog box, click the save button to the right of the search drop-down list.

    A message appears confirming the save.
  2. Click OK.
    Your search changes have now been saved.

Deleting a Search

You can delete any search if it is no longer useful or necessary.

  1. Using the search drop-down list at the top of the Search dialog box, select the search you want to delete.
  2. Click the delete button.
     
    A confirmation message appears.
  3. Click Yes.
    The search is deleted.

14.5. Performing a Search and Viewing Results

Once you have configured a search, you can execute it, and view the results (the generated documents in your SQL repository returned by the search).

Proceed to one of the sections below for details:

Executing a Search

A search is performed (executed) on a form-by-form basis using the Search dialog box. 

  1. Access the Search dialog box for the desired form.
  2. From the search drop-down list, select an existing search or choose a new search.
  3. (optional) Verify that the search is correctly configured.
  4. Click the search button.

    The documents that match your search criteria are listed in the bottom half of the dialog box.
  5. Proceed to Working with Search Results below.

Working with Search Results

Once a search is complete, the results are displayed in the search results table in the bottom half of the Search dialog box. You are also provided with additional options that can be used with the returned list of documents.

  1. (optional) Using the wrench button (highlighted below), configure the columns of information displayed in the table of search results. Only selected columns will appear in the search results table.

    Tip: This customization only impacts the current search. If you want to permantely edit the information displayed in the search results table for the current search, see Specifying Search Column Settings.

  2. (optional) Adjust the order of the columns in the search results table by dragging the column headers to the desired location. This updated order is automatically saved and will appear the next time you access the Search dialog box and execute the search.

    Note: The column order is search-specific, so you can specify different column orders for different saved searches.


  3. If necessary, use the options in the bottom left corner of the dialog box to navigate the multiple pages of search results.

  4. Using the check boxes in the first column in the search results table, select the documents you want to manipulate. 

    Tip: You can select individual documents (using their corresponding check boxes), as shown below, or you can click the check box in the column's heading to select all listed documents.

    In the following example, two documents have been selected.
  5. Perform any of the following options for all selected documents, as desired:
    • edit. Opens the document in the Data Entry View, allowing you to alter it.
    • edit copy. Open a copy of the document in the Data Entry View, allowing you to alter the copy.
    • retrieve. Allows you to view the document in the Document Viewer.
    • remove. Deletes the document from your SQL repository.
    • export. Allows you to export the information in the search results table as a comma separated value (CSV) file. You can export either the entire table or only selected documents.
    • batch sign. Allows you to sign multiple documents returned from your search, if signatures are needed. For more information, see Using Batch Signing.

15. Files and Folder - Browsing and Security

15.1. About the File Browsing Feature

You can use LincDoc's internal file browser to store and access documents and related files (source documents, branding images, etc.) in a customizable directory structure. The files are actually stored in and accessed from your SQL repository.

You can also perform other actions using this feature including, but not limited to:

  • Editing (altering and resubmitting) existing documents
  • Signing documents
  • Viewing a document's history
  • Applying security to a folder or document (to control access to the item)

15.2. About Required Permissions

Access to the Browse feature's dialog box and associated directory structure is controlled by the browse role, which is set via the system/security roles option.

 

If you (or the group in which you are a member) have been given this role, you will be able to see the browse button and open the Browse dialog box.

For more information on roles, contact your local LincDoc administrator or see Managing Security Roles.

15.3. About the Browse Dialog Box Layout

The Browse dialog box is comprised of three main components, which are shown in the diagram below.

The toolbar, at the top of the dialog box, contains the buttons which allow you to perform specific actions within this dialog box. The contents of the toolbar are dynamic, based on the type of item selected in the lower portion of the dialog box, as well as the permissions you have been granted on the selected item.

The navigation tree, on the left side of the dialog box, is used for selecting individual folders or subfolders (including the Trash folder). You can click the button immediately above the navigation tree to return to the top level directory. This button is labeled with the name of your repository (default in the following example).

The content viewer, on the right side of the dialog box, displays the contents of the folder or subfolder selected in the navigation tree. Both files and subfolders are displayed. Clicking a folder or subfolder displays the item's contents.

Clicking the check box to the left of a folder's, subfolder's, or file's name selects the item, allowing you to manipulate it via the toolbar. In the following example, the second listed file is selected.

Right-clicking a folder, subfolder, or file allows you to access options for the item without first clicking the item's corresponding check box. In the following example, the second listed file has been right-clicked.

You can also view the path to the current location in your directory structure, which appears near the top of the content viewer (highlighted below).

15.4. Accessing the Feature (Browse) Interface

The Browse dialog box is accessed by click the browse button, if the selected eForm or Document Package has been properly configured.

About Form Configuration

In order to use the Browse dialog box with your eForm or Document Package (in other words, for the browse button to appear on the LincDoc toolbar, allowing access to the browse feature), it must meet the following requirements:

  • The eForm or Document Package needs to have a repository configured via the Repositories tab on the Admin dialog box.
  • The eForm or Document Package needs to have been submitted. Before being submitted, they are only available via the Form Selection drop-down list on the LincDoc toolbar.

Accessing the Feature

The browse button appears on the main LincDoc toolbar if the selected eForm or Document Package has been properly configured.

When the browse button is clicked, the Browse dialog box appears (shown below), displaying the current directory structure and your saved files. The dialog box itself takes its title from the title of your repository.

For more information on the layout of this dialog box, see About the Browse Dialog Box Layout.

15.5. Moving Files or Folders

You can move files or folders within the directory structure by clicking a file, and then dragging your mouse pointer over the desired, new location.

In the example below, the BackgroundForms document is being moved to the current forms subfolder. Notice the green check mark icon, which shows you that the move will be allowed when you release your mouse button.

You can also drag files to folders or subfolders listed in the navigation tree (on the left side of the dialog box), as shown below. 

15.6. Selecting a File, Folder, or Subfolder

The selection process is slightly different depending on whether you are selecting an individual file or a folder/subfolder.

Proceed to one of the following sections below for more information:

Selecting an Individual File

You select individual files by navigating to the file's location, and clicking it in the content viewer on the right side of the Browse dialog box.

  1. Using the navigation tree on the left side of the Browse dialog box, locate and click the folder or subfolder that contains the file you want to select.
    The contents of the folder are displayed in the content viewer.
     
  2. In the content viewer on the right side of the dialog box, click the check box, to the left of the file name, that corresponds to the desired file.
    The check box is marked, and the file is highlighted, showing you that it is selected.

    Note: If a file is grayed-out, and no check box is available, you do not have permission to manipulate the file. For more information, contact your local LincDoc administrator or see Security.


    Note: You can also right-click a file to both select it and access the menu of available options (which corresponds to the buttons that appear on the Browse dialog box's toolbar). Notice that the selected file's name appears at the top of the right-click menu, allowing you to verify that the correct file is selected.
     

  3. If the selected file has attachments, review them at the bottom of the Browse dialog box.

Selecting a Folder or Subfolder

Folders and subfolders (including the Trash folder) can be selected using both the navigation tree on the left side of the Browse dialog box and the content viewer on the right side of the dialog box.

Note: Clicking a folder or subfolder in the content viewer (on the right side of the dialog box) does not select it. Instead, it automatically opens it, showing you the item's contents. To select a folder or subfolder, you must use the item's corresponding check box.

  1. Using the navigation tree on the left side of the Browse dialog box, locate the folder or subfolder you want to select. You can easily expand folders to view subfolders using the arrow icons, as shown below.
  2. Use one of the following methods to select a folder or subfolder:
    • On the right side of the dialog box (the content viewer), click the check box that corresponds to the desired folder. This method is useful if you want to select more than one folder or subfolder.
       
    • On the left side of the dialog box (the navigation tree), click the desired folder or subfolder. The item is highlighted, showing you that it is selected, and the select item appears in the path (at the top of the contents viewer).
       
    • On either side of the dialog box, right-click a folder or subfolder to both select it and access the menu of available options (which corresponds to the buttons that appear on the Browse dialog box's toolbar). Notice that the selected folder's or subfolder's name appears at the top of the right-click menu, allowing you to verify that the correct item is selected.
       

Selecting Multiple Items

You can select multiple files, folders, or subfolders using the check boxes displayed in the content viewer on the right side of the dialog box.

The following options are available for multiple item selection:

  • Click the individual check boxes to select multiple, specific items.
     
  • Click the check box at the top of the Name column to select all of the displayed items.
     

15.7. Verifying the Current Contents

You can click the refresh button at any time to confirm that the displayed contents are the most up-to-date (current) contents.

 

This option is useful if you have just added a file or a folder/subfolder, or if another user had just added a file or folder/subfolder, and you are not seeing the expected items in your directory structure.

You can also access the feature using any of the following methods:

  • Right-clicking a "white area" in the navigation tree (left side) of the Browse dialog box, and clicking the refresh option allows you to refresh the entire repository. The repository's name is displayed at the top of the right-click menu, showing you that you will be refreshing all of its contents.
     
  • Right-clicking a "white area" in the content viewer (right side) of the Browse dialog box, and selecting the refresh option allows you to refresh the currently selected folder, which is displayed at the top of the right-click menu.
     
  • Right-clicking an individual folder or subfolder on either side of the Browse dialog box, and clicking the refresh option. Only the selected folder is refreshed.
     

15.8. Adding a New Folder or Subfolder

You can add a new folder or subfolder to your directory structure using the new folder button.

 

Important: If this button is not available from the toolbar, you may not have permission to edit your directory structure. For more information, contact your local LincDoc administrator or see Security.

Proceed to one of the following sections below:

Adding a New Top-level Folder

You can add a top-level folder by selecting the repository name and clicking the new folder button.

  1. In the navigation tree on the left side of the dialog box, click the repository-name entry (highlighted below).
     
  2. Click the new folder button.
    The New folder name dialog box appears.
     
  3. Type the folder's name in the name text box, and click OK.
    The new folder is added as a top-level folder in your directory structure.

Adding a New Subfolder

You can add a subfolder by selecting the folder in which the new subfolder will reside, and then clicking the new folder button.

  1. In the navigation tree on the left side of the dialog box, click the folder that will contain the subfolder.
    The selected folder is highlighted, as shown below.
     
  2. Click the new folder button.
    The New folder name dialog box appears.
     
  3. Type the folder's name in the name text box, and click OK.
    The new subfolder is added inside the selected folder.

Adding Folders and Subfolders Using the Right-click Menu

You can also use the right-click menu to add folders and subfolders to your directory structure.

  1. Perform one of the following actions, based on the type of folder or subfolder you are adding:
    • To add a folder to the top level of your directory structure: Right-click the "white area" on the left side of the Browse dialog box, and select new folder from the menu that appears.
    • To add a folder to the currently displayed directory level: Right-click the "white area" on the right side of the Browse dialog box, and select new folder from the menu that appears.
    • To add a new subfolder to a specific folder: Right-click the folder (on either side of the Browse dialog box) in which the new subfolder will reside, and select new folder from the menu that appears. 
  2. On the New folder name dialog box, type the folder's or subfolder's name in the name text box.
  3. Click OK.
    The new folder is added to your directory structure.

15.9. Adding Local Files to Your Directory Structure

You can add files from your local computer to your LincDoc directory structure using the upload button.

 

    1. In the navigation tree on the left side of the dialog box, select the folder or subfolder that will contain the uploaded file as described in Selecting a File, Folder, or Subfolder.
    2. Click the upload button.

      Note: You can also right-click a particular folder or subfolder (on either side of the dialog box) and select upload from the menu that appears.

      Important: If this button is not available from the toolbar, you may not have permission to add files to your directory structure. For more information, contact your local LincDoc administrator or see Security.

      The File Upload dialog box appears.
       
    3. Click the Browse button.
      The Open dialog box appears, allowing you to navigate to a file and select it.
    4. Select the appropriate file, and click Open.
      You are returned to the File Upload dialog box, and the selected file now appears on the dialog box, as shown below.
       

      Note: If you selected the wrong file, click the Cancel option immediately to the left of the currently selected file's name. The selected file is removed, and you can re-browse to a new file.

    5. Click Upload. The file is added to selected folder in your directory structure.

15.10. Renaming a File or Folder

You can change the name of a file or folder using the rename button.

 

  1. On the right-side of the Browse dialog box, select a file, folder, or subfolder.
    For more information, see Selecting a File, Folder, or Subfolder.
  2. Click the rename button.

    Note: You can also right-click the item (folder and subfolders on either side of the dialog box), and select rename from the menu that appears.

    The Enter new name for dialog box appears, showing the current name of the file or folder.
     
  3. In the Name text box, type a new name for the item.

    Important: Take care when changing a file name. Although you can alter the file's extension (.pdf, .docx, etc.) using the rename option, the file may no longer open properly. It is recommended that you change only the file's actual name.

  4. Click OK.
    The selected item is renamed.

15.11. Editing a Document

You can directly access a document in the Data Entry View and add or change information to the document using the edit button. This button is only available for documents, and will not appear on the toolbar if you select a non-document file (such as an image file).

Important: If you want to retain the current document and its defined information by editing a copy of the document and providing new information, you should use the edit copy option as described in Editing a Copy of a Document.

 

  1. Select the correct document as described in Selecting a File, Folder, or Subfolder.
  2. Click the edit button.

    Note: You can also right-click the document, and select edit from the menu that appears. The selected document's name appears at the top of the right-click menu.

    Important: If this button is not available from the toolbar, you have not selected a document or you do not have permission to edit the document. For more information on gaining access to the document, contact your local LincDoc administrator or see Security.

    The document appears in the Data Entry View, showing you the document's currently defined information.
  3. Edit the document, as desired.
    For more information on editing your document, see Running and Viewing a Form.
  4. Click Submit.
    The information is saved and the document is updated. If you have access to the document's history, you can verify that a new version has been created.

15.12. Editing a Copy of a Document

You can directly access a document in the Data Entry View and automatically add or change information to a copy of the document using the edit copy button. This button is only available for documents, and will not appear on the toolbar if you select a non-document file (such as an image file).

 

This option differs from the edit option in that any information added to or changed in the document is saved in a new copy of the document when you submit the changes. The original document is not updated.

Important: If you want to edit the actual, selected version of the document, and not create a new copy to edit, use the edit option as described in Editing a Document.

After you submit the document, a copy of the document appears in your folder structure, as described in the following procedure:

  1. Select the correct document as described in Selecting a File, Folder, or Subfolder.
  2. Click the edit copy button.

    Note: You can also right-click the document, and select edit copy from the menu that appears. The selected document's name appears at the top of the right-click menu.

    Important: If this button is not available from the toolbar, you have not selected a document or you do not have permission to edit the document. For more information on gaining access to the document, contact your local LincDoc administrator or see Security.

    The document appears in the Data Entry View, showing you the document's currently defined information.
  3. Edit the document, as desired.
    For more information on editing your document, see Running and Viewing a Form.
  4. Click Submit.
    A new copy of the document is created and added to your directory structure. The new information is saved, while the original document information is retained in the original document (as shown below).

    The new document is named based on the original document's type (as shown in the Type column, and typically corresponds to the eForm's or Document Package's name), as well as the date and time that the file was created (the eForm or Document Package was submitted), and the name of the user who created the copy.

15.13. Downloading a File

You can copy a file from LincDoc to your local system using the download button.

  1. Select the correct file as described in Selecting a File, Folder, or Subfolder.
  2. Click the download button.

    Note: You can also right-click the file, and select download from the menu that appears. The selected file's name appears at the top of the right-click menu.

    Important: If this button is not available from the toolbar, you may not have permission to access the file. For more information on gaining access to the file, contact your local LincDoc administrator or see Security.

    The file is saved to your local system. The exact process for saving the file differs based on your current web browser.

15.14. Viewing a Document

If a file is a document, you can access the final, completed document in the Document Viewer using the view button.

 

  1. Select the correct document as described in Selecting a File, Folder, or Subfolder.
  2. Click the view button.

    Note: You can also right-click the document, and select view from the menu that appears. The selected document's name appears at the top of the right-click menu.

    Important: If this button is not available from the toolbar, you may not have permission to access the document. For more information on gaining access to the document, contact your local LincDoc administrator or see Security.

    The final version of the document is loaded in the Document Viewer.

    Tip: If you notice that the document information needs to be edited, you can quickly edit it using the edit button as described in Editing a Document.

15.15. Signing a Document

If a document has signature fields, you can access them using the sign button.

 

  1. Select the appropriate document as described in Selecting a File, Folder, or Subfolder.
  2. Click the sign button.

    Note: You can also right-click the document, and select sign from the menu that appears.

    Important: If this button is not available from the toolbar, you may not have permission to access the document. For more information on gaining access to the document, contact your local LincDoc administrator or see Security.

    The document is loaded in the Document Viewer, and any signature fields are highlighted. If no signature fields exist in the document, a message appears telling you of the lack of signature fields.

For more information on signatures, see Signatures.

15.16. Removing a File or Folder

You can delete a file or folder from your LincDoc directory structure using the remove button.

When removed, the item is placed in the Trash folder until it is permanently removed. When necessary, files in the Trash folder can be moved back to a non-deleted regular folder.

  1. Select the file or folder you want to remove as described in Selecting a File, Folder, or Subfolder.
  2. Click the remove button, or right-click the item and select remove from the menu that appears.

    Important: If this button (or option) is not available from the toolbar, you may not have permission to access the file. For more information on gaining access to the file, contact your local LincDoc administrator or see Security.

  3. Click Yes to confirm the action.
    The file or folder is placed in the Trash folder.
     
    Note: Once a file is added to the Trash folder, only users who put it there and admin-type users can see it.

For more information on using files or folders in the Trash folder, see Working With Items in the Trash Folder.

15.17. Viewing a File's History

You can view a file's revision history using the history button.

 

Important: Additional versions of a form file are only created when you edit an existing file. The most recent edit automatically becomes the primary version of the file.

About Displayed Information

The following information is displayed when viewing a file's history:

  • An entry for each version of the file
  • Time and date stamp for each version (based on the time/date of the LincDoc server)
  • The user that modified each version
  • Options for manipulating a particular version (including viewing, editing, and deleting a particular version)

About History Privileges

User and group privileges can be used to control which users have access to version history.

For more information, see Security.

Allowing Versioning

You can specify whether or not versioning is available on a repository-by-repository basis. In other words, if you have multiple repositories, one can use versioning and one can have the feature turned off.

For more information, see Creating a Repository.

Accessing the History Dialog Box

A file's history information can be viewed by accessing the History for dialog box. 

  1. Select the file whose history you want to view as described in Selecting a File, Folder, or Subfolder.
  2. Click the history button, or right-click the file and select history from the menu that appears.
    The History for dialog box appears.

    Note: You can click the refresh button at any time to verify that you are viewing the most recent history information.
    Along with simply viewing the history, listed from the newest version down to the oldest version, you can perform the following actions, as desired:

Viewing a Specific Version

You can view a specific version, including all non-removed older versions, by clicking the corresponding view button.

 

The final version of the file is opened in the Document Viewer.

Downloading a Specific Version

You can copy a specific version to your local system using the download button.

 

The file is saved to your local system. The exact process for saving the file differs based on your current web browser.

Editing a Specific Version

You can edit a specific version of a document, or edit a copy of a document, using the edit and edit copy buttons.

 

For more information on these options, and how they differ, see Editing a Document and Editing a Copy of a Document.

Promoting a Specific Version

You can move an older version to the top of the history list, making it the current version, using the promote button.

 

When the promote button is clicked, a copy of the selected version is given the current date/time stamp, and is moved to the top of the list. The original version is retained, with its original date/time stamp and location in the overall history list.

In the following example, the oldest version of a file (Version 0) has been promoted to the main version. Notice that all other versions have been shifted down, but retain their original version numbers. In addition, the original copy of the promoted version is still present, and the total number of versions has increased from 5 to 6.

Note: In the following example, notice that two versions of the file were previously deleted from the version history. This action was not part of the promotion process, but merely represents a sample file history that you might see in your environment.

Deleting a Specific Version

You can remove a specific version from a file's history using the delete version button. However, more than only history entry must exist. You cannot delete a file's history if only a single entry is present.

Note: The ability to delete file history is controlled by a security privilege (history_delete). If you have not been granted this security privilege, you will not be able to delete history files (you will not even see the delete version button). For more information, see Security.

The delete version button is highlighted below.

 

When a file version is deleted, the version is made inaccessible (all of its corresponding buttons are removed), and the version number is struck-through. However, a permanent record of the version remains present. In the following example, two versions have been deleted.

15.18. Specifying Document-level and Folder-level Security

You can set security for individual files or folders, which overrides any system-level security settings, using the security button.

This feature gives you the ability to better customize your security settings, as you deem necessary for your environment.

 

For more information, see Document/Folder-level Security.

15.19. Working with File Links

You can easily access the links (hyperlinks) related to a document via the link button.

 

These links allow you to edit the original document, edit a copy of the document, view the document, or sign the document using the OpenForm Viewer (a version of the Data Entry View that appears in a web browser).

 

Note: These are the same links that can be created using DRAT expressions.

15.20. Accessing the Browse Dialog Box from the Repositories Dialog Box

When viewing your repositories (using the system/repositories option), you can easily access a specific repository's Browse dialog box by clicking the corresponding icon in the Browse column of the Repositories dialog box.

Important: This option is only available for SQL Repository-type repositories.

 

For more information on the Repositories dialog box, see Configuring Storage Repositories.

15.21. Working with Items in the Trash Folder

The Trash folder automatically stores deleted files and folders until you permanently remove them. When you empty the contents of the Trash folder, the file or folders within it are permanently deleted from LincDoc. This folder's behavior is similar to the Recycle Bin on Windows operating systems.

Removing an Item from the Trash Folder

You can remove items from the Trash folder, which permanently deletes them.

Important: Special care should be taken when removing items from the Trash folder, since, once removed, they cannot be recovered.

  1. On the left side of the Browse dialog box, click the Trash folder to select it.
    The contents of the folder appear on the right side of the dialog box.
  2. Perform one of the following actions:
      • To remove all of the files in the Trash folder: Click the empty trash button at the top of the dialog box, or right-click the Trash folder on the left side of the dialog box and select empty trash from the menu that appears.
      • To remove a specific file: Select a file on the right side of the dialog box, and click the purge button at the top of the dialog box, or right-click the file and select purge from the menu that appears.
      • To remove multiple, specific files: Select the files on the right side of the dialog box, and click the purge button at the top of the dialog box, or right-click the file and select purge from the menu that appears.
  3. Click Yes to verify the removal.
    The selected files are permanently removed from LincDoc.
  4. Click OK.

Restoring an Item

You can also return an item in the Trash folder to its original location using the restore option.

  1. On the left side of the Browse dialog box, click the Trash folder to select it.
    The contents of the folder appear on the right side of the dialog box.
  2. On the right side of the dialog box, locate the file you want to restore.
  3. Perform one of the following actions:
      • Select a file on the right side of the dialog box (using the corresponding check box), and click the restore option on the toolbar (at the top of the dialog box).
      • Right-click the file, and select restore from the menu that appears.
  4. From the Select target folder dialog box (shown below), navigate to the folder that will contain the restored file.
  5. Click the folder to select it (the folder is highlighted), and click select.
    A confirmation message appears.
  6. Click Yes.
    The file is removed from the Trash folder and returned to the specified location in your LincDoc folder structure.

16. Running and Viewing a Form

16.1. Running a Form

Once you have defined all information for an eForm or Document Package using the Admin dialog box, you can execute it using the Run button on the LincDoc toolbar.

 

Clicking this button opens the eForm or Document Package in the Data Entry View, which allows you to enter information. This information is then transferred to the final document when you click the Submit button (at the bottom of the Data Entry View dialog box).

 

After you click Submit, the document is displayed in the Document Viewer.

16.2. Using the Document Viewer

The Document Viewer, which appears after you complete a form in the Data Entry view and click Submit, allows you to perform the following actions:

Viewing Your Completed Document

When you click the Submit button on the Data Entry View, the Document Viewer appears, allowing you to view the final, completed document.

 

You can view the document either as a PDF or as an image (PNG) file. By default, the PDF version is shown. However, if the PDF does not render correctly on your system, click the Adobe button to switch to the image view.

 

The Document Viewer is updated, and the appearance of the Adobe button changes, showing you that you are now using the image (PNG) view.

When using the PDF view, you can navigate between pages using the Page drop-down list and buttons. You can also adjust the size of the document in the Document Viewer using the Fit Width drop-down list and buttons. Both items are highlighted below.

 

When using the image (PNG) view, there are no size of page controls. You simply scroll down to view the entire document.

Tip: You can also access previously saved documents using the Browse dialog box.

Downloading the Completed Document

You can copy a completed document to your local system using the download button.

 

Note: The exact process for downloading the document differs based on your current web browser.

Emailing the Completed Document

You can email a copy of the completed document using the email button.

 

When this button is clicked, the Compose New Email dialog box appears. 

To send an email:

  1. Specify the recipient's email address in the To text box.
  2. Specify a subject in the corresponding text box.
  3. Type the email's message in the corresponding text box.
  4. Click send email.
    Your message is send, with the document automatically attached.

Tip: You can customize the appearance of the text that you add to the Message text box, including adding custom HTML text and tags, using an email template. For more information, see Creating an Email Template.

Signing the Completed Document

If signature fields are present in your document, you are immediately alerted when the Document Viewer first opens.

You can then sign the document using the sign button, as specified in the message above.

This button opens the Signature screen, which allows you to sign the document.

For more information, see Signatures.

Viewing Signature Information

Once you sign the document, you can view the corresponding signature information using the signInfo button.

When you click this button, the Signature Info dialog box appears, displaying complete details about all of the document's signatures. For more information, see Viewing Signature Details (Signature Log).

The method used to print the document is based on the view you are using in the Document Viewer, as described below:

  • PDF View. Use the print feature that is native to your local PDF rendering software.
    For example, when using the Chrome browser, if you hover your mouse pointer over the document in the Document Viewer, the following toolbar is displayed:

    You should use the print button (far right button) to print the document. 
  • PNG View. Download the file, and then print it using the image viewer of your choice.

17. Signatures

17.1. About Signatures Types

This topic provides a brief overview of the use of digital and electronic signatures in LincDoc.

LincDoc has several digital signature options (or signature providers):

Each type of signature is described below. However, for complete details, you should refer to the individual signature type's documentation.

Note: When used in this topic, the terms "final document" or "generated document" refer to a PDF generated by LincDoc.

About Topaz Pad Signatures

A Topaz signature pad captures the user's handwriting/signature and converts it into an electronic format. This process creates an image and captures biometric data of the signature. When using a Topaz pad to sign documents in LincDoc, LincDoc will capture this image and biometric data and store it in the generated PDF document. The biometric data that is collected by the Topaz pad is also encrypted with the unsigned document. This means that not only can this method be used to verify that someone has signed the document, but we cal also verify that this is the document that they signed and that the biometric data has not been tampered with. This signature process begins after the data entry steps are complete and the user has reviewed the draft copy of the document. 

The following is breakdown of the steps:

  1. The user completes the data entry process and generates the PDF form/document.
  2. LincDoc displays the form in the document viewer window for the user to review.
  3. Once reviewed, the user clicks on the sign button on the document viewer window.
  4. LincDoc prompts the user for the signer of the document.
  5. The user selects the signer and clicks OK.
  6. LincDoc then initializes Topaz pad.
  7. The user signs the pad.
  8. LincDoc merges the image of the signature into the form
  9. LincDoc stores the biometric data from the signature along with the data record.
  10. LincDoc locks the PDF form with a digital signing certificate.
  11. LincDoc displays the signed form in the document viewer window.

This is best illustrated in an example. Sally Jones comes into the office and sits down with John Doe (assume he is an office clerk) to complete an application. The data is gathered and the document is ready to be signed.

  • The preview button is clicked in LincDoc; a watermarked PDF document is generated (possibly even printed) and displayed to Sally for her to review all of the information.
  • Once Sally is satisfied, the sign button is clicked in LincDoc, the Topaz signature pad that is connected to John's computer is initialized and Sally signs the document.
  • LincDoc inserts the image of the signature into an Adobe signature field and stores the Topaz biometric information in the LincDoc database.
  • If the document is tampered with in any way, then anyone opening the document gets an immediate visual indication that the signature is no longer valid.
  • In order to validate the Adobe signature, the LincDoc Trust Certificate must be installed on the computer of the user who is validating the signature. This is a one-time, 2 step process performed inside of Acrobat Reader.
  • In addition, the user has the ability to upload the PDF document to the LincDoc server to run it through the aforementioned hashing validation process.

Click here for configuration details.

About LDAP Signatures

An LDAP signature validates the user by challenging that user for his/her password when he/she executes an LDAP signature. Once validated, LincDoc will apply a digital signature certificate to digitally lock the document. This signature process begins after the data entry steps are complete and the user has reviewed the draft copy of the document. This type of signature is sometimes referred to as an authenticated signature.

The following is breakdown of the steps:

  1. The user completes the data entry process and generates the PDF form/document.
  2. LincDoc displays the form in the document viewer window for the user to review.
  3. Once reviewed, the user clicks on the sign button on the document viewer window.
  4. LincDoc prompts the user for the signer of the document.
  5. The user selects the signer and clicks OK.
  6. LincDoc then prompts for the current logged in user's password.
  7. LincDoc will then validate that password against LDAP or Active Directory.
  8. If success, LincDoc will digitally lock the PDF with the digital signing certificate.
  9. If fail, LincDoc will prompt the user's password.
  10. LincDoc displays the signed form in the document viewer window.

Click here for configuration details.

About Mouse Signatures

The mouse signature (also known as an "On-screen Canvas" signature) applies the same process that Topaz uses but instead of using a Topaz pad, the user simply uses their mouse to draw their signature on the signature canvas. The type of signature requires the use of an HTML5 compliant browser. Note: Internet Explorer 6-8 are not compatible with this type of signature.

The following is breakdown of the steps:

  1. The user completes the data entry process and generates the PDF form/document.
  2. LincDoc displays the form in the document viewer window for the user to review.
  3. Once reviewed, the user clicks on the sign button on the document viewer window.
  4. LincDoc prompts the user to select the appropriate signer.
  5. LincDoc displays a canvas for the user to draw their signature using a mouse or stylus.
  6. The user must click Accept to apply the signature.
  7. LincDoc displays the signed form in the document viewer window.

Click here for configuration details.

About Mobile Signatures

This type of signature allows the user to complete a form on their iPad and have a user sign directly on the screen of that device, as illustrated below.

Currently, LincDoc only supports iPads for use with Mobile signatures but will be coming out with support for the iPhone, and all mobile devices that support a webkit browser.

The user must download and install the LincDoc Mobile iPad application. Once installed and configured with an activation key, the user is able to access the forms on their LincDoc Server.

The following is breakdown of the steps:

  1. The user launches on the LincDoc Mobile application
  2. The user completes the data entry process and generates the PDF form/document.
  3. LincDoc Mobile displays the form in the document viewer window for the user to review.
  4. Once reviewed, the user clicks on the sign button on the lower toolbar.
  5. LincDoc Mobile prompts the user to select a signer.
  6. Once selected, a canvas is displayed for the user to sign.
  7. The user must click Accept to apply the signature.
  8. LincDoc Mobile displays the signed document.

Click here for configuration details.

About Clickwrap Signatures

Clickwrap signatures are electronic signatures that do not require a digital certificate or signature capture pad. Clickwrap signatures in LincDoc offer a simple method of obtaining electronic evidence of user acceptance to the data entered into a LincDoc form. The data entry question/answer process ensures a level of authentication that the user is who he/she says they are.

 Clickwrap signatures can be configured in LincDoc to collect any information including:

  • User's name.
  • User's personal information, such as mother's maiden name, can be used to verify identity.
  • Statement to show that the user certifies and agrees with the document they are signing.

Once the user provides this information, the data is written to the document, and cannot be changed because it is written to an image format or a secured, read-only PDF document.

Click here for configuration details.

17.2. Configuring Signature Field Settings

This topic describes the settings that must be configured for signatures. These settings are located on the Admin dialog box's Fields/Sections tab.

Note: This topic only describes settings that are unique to signature fields or settings that need to be handled differently when working with a signature field. For more information on fields not explicitly described in this topic, see Defining Field Attributes.

Proceed to one of the following sections below:

Label

Although this setting is available for all fields types, when using it with a signature field, the Label setting can be used to specify the "terms" that are being agreed to when signing the form .

You can access a separate dialog box, for entering large amounts of text, by clicking the arrow button adjacent to the setting.

This dialog box is shown below, with sample additional text added.

 

Signature type

Defines the type of signature. Types of signatures can be:

Signature mode

Allows you to specify if the signature will simply be a image (a digitial representation of the signature) or will be an image and a PDF time stamp.

Note: In the following examples, a signature stamp was used to sign the document.

  • Image. Adds a digital representation of your signature to the document.
     
  • PDF signature Adds a digital representation of your signature to the document. Also adds a PDF time stamp adjacent to the signature.
     

Signer name field

Allows you to specify the field that will be used in the signature signing process. This field must either be the current LincDoc user or a field in the document that will be filled out with the signer's name.

For example, suppose a document has a field called first_signer, which will be filled with the name of the person who will be signing the document. By selected first_signer with the Signer name field setting, when the user clicks sign inside the Document Viewer, the name typed into the first_signer field will be used to populate the list of signature fields. In other words, this name will be used as the document's signature.

Add data to image

These settings allow you to add data around a signature. You can specify the location of the data based on the selected setting (Top Left, Top Right, Bottom Left, or Bottom Right).

Important: These settings only appear when Image is selected from the Signature mode drop-down list.

Certification level

A certification level is set when the first signature is applied. Once set, it cannot be changed without invalidating existing signatures. Any changes not allowed by the level will result in the signature being marked as invalid. Changes since a signature has been applied can be listed by clicking on the signature. The signed version of the document may be seen by clicking on the signature.

Important: This setting only appears when Pdf Signature is selected from the Signature mode drop-down list.

The following options are available:

  • Not Certified: Additional signatures may be added. Changes to the document and the form data may be made. Document meta-data may be added.
    Use case: You have a document detailing a proposal. In order to fill this out the form must be approved. However, the contents of the form may be subject to change (new sections, schedules, etc...). This certification level would be used in this case.
  • Form Filling Allowed: Additional signatures may be added. Editable form fields may be changed or locked. Document meta-data may be added.
    Use case: Suppose that there is an office only section of a form that must be completed after the rest of the form is signed. This certification level will allow this functionality.
  • Form Filling and Annotations Allowed: Additional signatures may be added. Editable form fields may be changed or locked. Annotations may be added. Document meta-data may be added.
    Use case: Suppose that your documents need to be annotated after signing, you must choose this option.
  • No Changes Allowed: No additional signatures may be added. All form fields are set to read-only. No changes may be made at all.
    Use case: You have a document that once signed, such as a contract, that cannot be modified. This certification level will essentially lock all fields.

Note: These options only affect the ability of the PDF to be modified through Adobe Acrobat.

Fields to update when signing

You can specify fields that will be updated on PDF documents when the documents are signed.

Use the check boxes in this section to specify the fields that will be updated when applying the signature.

The selected fields are then updated after the signature field value is created and set to the form data, but before the signature is stamped on the document, allowing these field values to be written to the document at the same time as the signature.

Fields to lock

You can specify the fields that cannot be altered after a signature has been applied to the document, which prevents a user from changing the corresponding values.

In the example above, once the signature is applied, the fields Order_Number and Total_Price are locked. They can no longer be edited using Adobe Acrobat (or any other PDF software). If a document is reopened in LincDoc, the signature is removed and the document is no longer signed (or locked).

Fields to updated when declining

You can specify fields that will be updated on PDF documents when a signature is declined (the document is not signed).

Use the check boxes in this section to specify the fields that will be updated when a signature is declined.

The selected fields are updated when a signature is declined and the document is not signed.

Signable

Allows you to specify a condition that, when true, lets a user sign the document. Otherwise, the signature is not accessible on the final form.

Batch Signable

When selected, the corresponding signature field can be used with the batch signing feature. This feature allows you to sign multiple signature fields, in multiple documents, at the same time and with a single signature.

Exempt from flattening

This setting must be used for any signature field if the flatten generated PDFs? check box is selected on the Admin dialog box's eForm or Document Package tab. If this is not selected, the signing process will fail and an error will be shown.

Important: This setting only appears when the advanced check box is selected at the top of the Field attributes area on the Admin dialog box.

17.3. Setting the Signature Date

When a document is signed, you want the date of the signature automatically determined and populated by LincDoc. You can configure your form's signature date field to add the date using the set field value action.

This process is described in the following sections below:

About Signature Date Best Practices

This section describes best practices that should be considered when setting the signature date field and related fields.

Proceed to one of the following sections below for more information:

About Hiding the Signature Field

In almost all circumstances, an end user should never have the ability to manually enter a signature date. Instead, it should be automatically generated immediately after a form is signed. In fact, it is recommended that you completely hide the signature and signature date fields from the Data Entry View. The fields should only appear when your form is viewed in the Document Viewer.

To simply this process, you can place your signature fields in their own section (as shown below).

Once the signature fields are grouped in a section, you can conditionally hide the entire section from the Data Entry View using the Condition to display setting.

For more information on working with sections, see Section Attributes and Options.

About the Signature Field Size

You should also confirm that your signature field is large enough to accommodate all of the information it will contain, especially if you want to add information besides just the signature (such as a printed version of the signer's name). If you do not want to change the signature field size, you can also use the Add data to image settings to place text or images around the form's signature.

About the Overall Signature Date Process

In general, the following steps are necessary to configure your form to automatically add a signature date:

  1. Verify that the signature date field's settings are correctly configured:
    • Clear value when hidden setting
    • Exempt from flattening setting
  2. Configure the signature field.
    1. Make sure the correct signature date field is locked.
    2. Make sure the correct signature date field will be updated when the signature is applied.
    3. Add a set field value action to the Before applying signature event.
  3. Configure the set field value action based on whether or not you want to add a signature date or a signature date and time.
  4. (optional) Add additional text or images around the signature.

Configuring the Signature Date Field's Settings

To ensure that your signature date field displays correctly in the final form, you need to make sure the field is never "flattened" when the final PDF is generated and that the field is not cleared if hidden. 

Flattening removes the visibly editable fields from the final generated PDF. All fields (except for signature fields) are set to be flattened by default. Date fields, including those used for signature dates, must not be flattened, or the action that updates them will fail because the field will essentially be missing. In addition, the actual signature fields are exempted from flattening by default. Otherwise, the first signing action would flatten all of the other signatures, making it impossible to update or apply them at a later time. 

  1. On the Admin dialog box's Fields/Sections tab, click the appropriate signature date field.
    In the following example, the empDD_signdt field has been selected.
  2. In the Field attributes area, click the advanced check box.
  3. Verify that the Clear value when hidden field is cleared (unchecked) as shown below. This setting is located near the bottom of the settings list.
  4. Select Always from the Exempt from flattening setting. 

    Your signature date field is now ready.
  5. Click save the upper left corner of the Admin dialog box.
  6. Proceed to the next section below to configure your signature field.

Configuring the Signature Field

You need to configure the signature field so that the correct signature date fields are used, and you need to specify the action needed to automatically set the signature date. 

  1. On the Fields/Sections tab, click the appropriate signature field.
    In the following example, the empDD_sign field has been selected.
  2. In the Field attributes area, verify that the advanced check box is selected. It should still be selected from the procedure described in Configuring the Signature Date Field's Settings above.
  3. In the Fields to update when signing list, select the appropriate signature date field.
  4. In the Fields to lock list, verify that the signature date field that corresponds to the signature field you are configuring is selected.

    Important: If you have multiple signature fields or signature date fields in your form, you must clear (uncheck) those that do not apply to the signature field you are currently configuring. Failure to do so will cause the non-corresponding fields to be locked by the unrelated signature. 

  5. Click the arrow button that corresponds to the Action and Buttons option.

    The Actions and Buttons dialog box appears.
  6. Click the arrow button that corresponds to the Before applying signature event.
  7. Point to add / action, and click the set field value action.
     
    A set field value action is added below the event listing.
  8. Click the arrow button that corresponds to the new set field value action.
  9. Click edit.
    The set field value dialog box appears.
  10. Proceed to one of the following sections, based on the type of entry you want in your signature date field:

Specifying a Date-only Entry for a Signature

If you only want to have a signature date automatically added to your form (instead of a date and a time), configure the set field date action as shown in the following procedure. 

  1. Select the appropriate signature date field from the first drop-down list.
  2. Click the function button adjacent to the date drop-down list.

    A new drop-down list appears.
  3. Select DateFromDateTime from the new drop-down list. This option verifies that you only want to use the date from the date/time stamp at the time the form is signed.
  4. Click the function button adjacent to the datetime setting.
  5. Select SignDate from the drop-down list that appears.
  6. Click the field button adjacent to the signature setting.
  7. Select the appropriate signature field (the one you are configuring).
  8. Click the function button adjacent to the timezone setting.
  9. Specify the appropriate timezone function from the corresponding drop-down list.
  10. Click save.
    You are returned to the Actions and Buttons dialog box.
  11. Click save.
    You are returned to the Admin dialog box.
  12. Click save.
  13. Proceed to Adding Additional Items Around a Signature below.

Specifying a DateTime Entry for a Signature

If you want to have a signature date and time automatically added to your form (instead of just a date), configure the set field date action as shown in the following procedure.  

Note: Datetime values are only available as of LincDoc version 3.2.

  1. Verify that your signature date field is defined as a datetime field type (not just a date field type).
  2. On the set field value dialog box, select the appropriate signature date field from the first drop-down list.
  3. Click the field button adjacent to the date drop-down list.

    A new drop-down list appears.
  4. Select SignDate from the new drop-down list.

    Important: If you do not see the SignDate option, you need to make sure that your signature date field is defined as a datetime field type as described above.

  5. Click the field button adjacent to the signature setting.
  6. Select the appropriate signature field.
  7. Click save.
    You are returned to the Actions and Buttons dialog box.
  8. Click save.
    You are returned to the Admin dialog box.
  9. Click save.
  10. Proceed to Adding Additional Items Around a Signature below.

Adding Additional Items Around a Signature

You can add additional text or images around a signature (to the left, to the right, above, or below) using the Add data to image options. Using these options is not required when configuring the signature date, but it does provide you with additional customization ability.

Some scenarios where this feature would be useful:

  • Adding a printed name below a signature field.
  • Placing a time stamp adjacent to the signature date.
  • Adding the phrase "electronically signed" near the signature to clarify how the document was signed.
Tip: If you are placing an item to the right of your signature, the signature image may be affected (compressed). If this occurs, and the result is undesirable, it is recommended that you add the additional items to the left of your signature instead.

Using Signature Dates with the LincDoc Mobile App

When setting signature dates with the LincDoc mobile app (on an iPad), since you can clear existing signatures using the delete button (shown below), you may not want to hide the signature field if the form is going to be used in the LincDoc mobile app.

 

If the signature field is hidden, the delete button is not accessible.

17.4. Using Topaz Signatures

LincDoc supports the use of Topaz signature pads with PDF source documents. In order to use this technology, several steps must be followed to properly configure your form, the LincDoc application, and Adobe Reader. Currently, SignatureGem and SigLite pads are supported. For a list of Topaz products, click here.

About Prerequisites

The following prerequisites are required when using Topaz signatures:

  • A valid LincDoc signature capture license
  • A signing certificate, which can be acquired through LincWare or any of Adobe's CDS providers
  • A PDF document with signature field(s) and a minimum signature field size of 20 pt x 20 pt (using Adobe Acrobat measurement tools)
    Note: Word source documents are not supported with this signature type.
  • A Topaz signature pad (SignatureGem and SigLite pads are currently supported)
  • The Java Runtime Environment must be installed on the workstation that the pad is plugged in to (recommendation: use the latest stable build of Java 8)

Configuring Topaz Signatures

  1. Upload the signing key file as described in Installing Your Signature Key.
  2. Add an Adobe digital signature to your PDF document.
  3. Commit the document, and reparse to enable configuration in LincDoc.
  4. Set up the appropriate fields via the administrator interface
  5. From the Admin dialog box, on the Fields/Sections tab, specify the necessary signature settings.
    1. Verify that the correct signature field is selected on the left side of the Fields/Sections tab.
    2. From the Field type drop-down list, select signature.
    3. From the Signature type drop-down list, select Topaz Signature Pad.
    4. Specify the Signature mode.
    5. Select the Certification level.
    6. From the Signer name field, choose the field that will contain the signers name.
    7. Specify the fields that will be updated when the document is signed (if any).
    8. Specify the fields that will be locked (if any).
    9. Specify the fields that will be updated when the document is not signed (if any).
    10. Use the Signable setting to specify a condition to control whether or not the document can be signed.
    11. Use the Exempt from flattening setting to specify a condition if the flatten generated PDFs? option is selected. You need to click the advanced check box, at the top of the Field attributes section, to see this setting.
  6. Set the trust levels for the certificates in order to validate signatures. (Must be completed only once)
    When a document is signed, the signing certificate is used to validate the signature and raise a warning when the document is changed. When you see the Validity unknown mark inside the signature, that means that the PDF viewer does not have the certificate installed.

    In order to do that, you need to read these instructions, and click the validity unknown icon in the upper right corner of the screen and follow the directions contained within.
  7. There are 2 timeout settings to be aware of, and possibly adjusted. These are found under >system >configure client.

    1. Server timeout: How long the web application will wait for the user to launch the signature pad application and sign. The count starts when the user clicks the "sign" button to select which signature to sign. This should be set to at least 15 seconds longer than the client timeout.
    2. Client timeout: How long the signature pad application will wait for the user to sign before closing automatically. The count starts when the signature pad application launches. This should be set to at least 15 seconds shorter than the server timeout.

About Possible Errors

When using Topaz signatures, first-time users may encounter the issue noted below regarding missing dependent libraries and the SigUsb.dll driver.

To resolve this issue, you need to access this Microsoft web site and download the Visual C++ Redistributable for Visual Studio 2015.

Windows 7 SP 1 or higher

After downloading the package, install it by following the instructions provided by the installation wizard.

17.5. Using Mobile Signatures

When using LincDoc on mobile devices, the signature type specified in the form by the form administrator is overridden to use a method native to the mobile device.

Currently, only the iPad is supported by LincDoc and the Mouse signature type is used, allowing signatures created using a finger on the iPad's screen.

About Prerequisites

The following prerequisites are required for using mobile LincDoc signatures:

  • A valid LincDoc signature capture license
  • A signing certificate, which can be acquired through LincWare or any of Adobe's CDS providers
  • A PDF document with signature field(s) and a minimum signature field size of 20 pt x 20 pt (using Adobe Acrobat measurement tools).
    Note: Word source documents are not supported with this signature type.
  • An iPad tablet

Configuring Mobile Signatures

In LincDoc's administrator interface (using the standard LincDoc application), complete the following

  1. Upload the signing key file as described in Installing Your Signature Key.
  2. Add an Adobe digital signature to your PDF document
  3. Commit the document and reparse to enable configuration in LincDoc
  4. Set up the appropriate fields via the administrator interface.
  5. From the Admin dialog box, on the Fields/Sections tab, specify the necessary signature settings.
    1. Verify that the correct signature field is selected on the left side of the Fields/Sections tab.
    2. From the Field type drop-down list, select signature.
    3. From the Signature type drop-down list, select On-screen Canvas.
    4. Specify the Signature mode.
    5. Select the Certification level.
    6. From the Signer name field, choose the field that will contain the signers name.
    7. Specify the fields that will be updated when the document is signed (if any).
    8. Specify the fields that will be locked (if any).
    9. Specify the fields that will be updated when the document is not signed (if any).
    10. Use the Signable option to specify a condition to control whether or not the document can be signed.
    11. Use the Exempt from flattening option to specify a condition if the flatten generated PDFs? option is selected. You need to click the advanced check box, at the top of the Field attributes section, to see this setting.
  6. Set the trust levels for the certificates in order to validate signatures.
    • Click on the validity unknown icon in the upper right corner of the screen.
    • Follow the directions to set up the trust levels for the certificates in Adobe Acrobat (or Reader).

17.6. Using Mouse Signatures

LincDoc supports signatures with a mouse (or your finger on an iPad) through the HTML5 canvas, meaning that this signature method is available only if you are using an HTML5 compliant browser.

About Prerequisites

  • A valid LincDoc signature capture license
  • A signing certificate, which can be acquired through LincWare or any of Adobe's CDS providers
  • A PDF document with signature field(s) and a minimum signature field size of 20 pt x 20 pt (using Adobe Acrobat measurement tools).
    Note: Word source documents are not supported with this signature type.
  • An HTML5 compliant browser, such as recent versions of Firefox, Chrome, or Safari

Configuring Mouse Signatures

  1. Upload the signing key file as described in Installing Your Signature Key.
  2. Add an Adobe digital signature to your PDF document.
  3. Commit the document and reparse to enable configuration in LincDoc.
  4. Set up the appropriate fields via the administrator interface.
  5. From the Admin dialog box, on the Fields/Sections tab, specify the necessary signature settings.
    1. Verify that the correct signature field is selected on the left side of the Fields/Sections tab.
    2. From the Field type drop-down list, select signature.
    3. From the Signature type drop-down list, select On-screen Canvas.
    4. Specify the Signature mode.
    5. Select the Certification level.
    6. From the Signer name field, choose the field that will contain the signers name.
    7. Specify the fields that will be updated when the document is signed (if any).
    8. Specify the fields that will be locked (if any).
    9. Specify the fields that will be updated when the document is not signed (if any).
    10. Use the Signable option to specify a condition to control whether or not the document can be signed.
    11. Use the Exempt from flattening option to specify a condition if the flatten generated PDFs? option is selected. You need to click the advanced check box, at the top of the Field attributes section, to see this setting.
  6. Set the trust levels for the certificates in order to validate signatures.
    1. Click the validity unknown icon in the upper right corner of the screen.

    2. Follow the directions to set up the trust levels for the certificates in Adobe Acrobat (or Reader).

17.7. Using Clickwrap Signatures

Clickwrap signatures are electronic signatures that do not require a digital certificate or signature capture pad.

For more information on how LincDoc uses this signature type, see About Clickwrap Signatures.

About Clickwrap Prerequisites

eForm or Document Package with fields corresponding to required information are required to use this signature type.

Configuring Clickwrap Signatures

  1. Upload the document with standard text fields (can be a PDF or Word source document).
  2. Create a section for the signature. Be sure to select Enter name from the Signature type drop-down list when defining the signature field. This type is synonymous with Clickwrap signatures.
  3. Add a statement to show that the user certifies and agrees with the document they are signing.
    This statement can be added to the section's long description.
  4. Specify the remaining signature fields.
  5. Continue setting up the other text fields in your eForm or Document Package.

17.8. Using LDAP (Authenticated Digital) Signatures

Authenticated digital (LDAP) signatures are available for all browsers without any additional equipment. This type of signature involves the signer proving their identity by providing LDAP credentials. Currently this only allows the currently logged in LincDoc user to sign, future enhancements will be made to provide both username and password to allow multiple people to sign from one LincDoc session.

Prerequisites

  • Valid LincDoc Signature Capture license
  • Signing certificate – this can be acquired through LincWare or any of Adobe's CDS providers
  • PDF document with signature field(s) (note that Word source documents are not supported with this signature type at this time)

Set-up Procedure

  1. Upload the signing key file as described in Installing Your Signature Key.
  2. Add an Adobe digital signature to your PDF document.
  3. Commit the document and reparse to enable configuration in LincDoc
  4. Set up the appropriate fields via the administrator interface.
    1. Set the field type to signature
    2. Select LincDoc Login from the list of signature types
    3. Choose which person will be signing this field
    4. Select the certification level. The following options are available:
      • None
      • Not Certified
      • Form Filling Allowed
      • Form Filling and Annotations Allowed
      • No Changes Allowed
    5. Choose which fields to lock (if any)
    6. Check the "advanced" checkbox is checked to show advanced field options
    7. Check the exempt from flattening attribute is set to "Always"
  5. Set the trust levels for the certificates in order to validate signatures.
  6. Click on the validity unknown icon in the upper right corner of the screen.
  7. Follow the directions to set up the trust levels for the certificates in Adobe Acrobat (or Reader).

Signature Type

Defines the type of signature.

Signer Name Field

Defines the field value that will be used in the signature signing process. This must either be the current LincDoc user or a field in the document that will specify the signer's name.

Certification Levels

A certification level is set when the first signature is applied. Once set, it cannot be changed without invalidating existing signatures. Any changes not allowed by the level will result in the signature being marked as invalid. Changes since a signature has been applied can be listed by clicking on the signature. The signed version of the document may be seen by clicking on the signature.

  • Not Certified: Additional signatures may be added. Changes to the document and the form data may be made. Document meta-data may be added.
    • Use case: You have a document detailing a proposal. In order to fill this out the form must be approved.  However, the contents of the form may be subject to change (new sections, schedules, etc...). This certification level would be used in this case.
  • Form Filling and Annotations: Additional signatures may be added. Editable form fields may be changed or locked. Annotations may be added. Document meta-data may be added.
    • Use case: Suppose that your documents need to be annotated after signing, you must choose this option.
  • Form Filling: Additional signatures may be added. Editable form fields may be changed or locked. Document meta-data may be added.
    • Use case: Suppose that there is an office only section of a form that must be completed after the rest of the form is signed. This certification level will allow this functionality
  • No Changes Allowed: No additional signatures may be added. All form fields are set to read-only. No changes may be made at all.
    • Use case: A single signature contract. Once signed, all fields are locked. If there are any other signatures present it will make them invalid.

Note: These options only affect the ability of the PDF to be modified through Adobe Acrobat.

Fields to lock

These are the fields that will be locked from user changing the values after a signature has been applied to the document.

Exempt from flattening

This must be selected for any signature field if flatten generated PDFs is checked under PDF options on the Other Options tab. If it is not, the signing process will fail and an error will be shown.

17.9. Using Signature Stamps

You can use signature stamps to sign documents.

Proceed to one of the following sections below:

About Signature Stamps

A signature stamp is an image that can be used in place of a script font representation of a signature, and is a digital representation of your actual signature.

An example of a signature stamp is shown below.

Important: Signature stamps can only be used with authenticated digital signatures, also known as LDAP signatures or LincDoc Login signatures.

Signature stamps allow you and other users to personalize a signature so it can be quickly determined if a document was "signed" with something unique to the signer. They also compliment LDAP signatures. When you're in the process of signing with LDAP, you can be confident in the reliability of the signature since you have to enter a password at the time of signing. Later on, however, all that appears on the document itself is your name in a font format, and you cannot visually discern that your true "signature" was generated with a password.

By using signature stamps, when you sign with LDAP, you can apply a visual representation of your true signature to the document instead of just your name in a font format.

The process of uploading and using signature stamps is described in the sections below.

Defining Your Signature Stamp

Before you can use your signature stamp to sign documents, you need to create an electronic version of your signature and upload it to your LincDoc profile.

  1. Sign a piece of paper and scan the signature to create a digital image (file) of the signature.
    Important: You can only use GIF, JPG/JPEG, and PNG image files for your signature stamp.
    The precise process for this step will vary based on your scanning technology. Contact your local system administrator for more assistance.
  2. Start LincDoc, and click the profile button on the LincDoc toolbar.

    Additional options appear.
     
  3. Click profile from the list of options that appears.

    The Preference for dialog box appears.
  4. In the Signature Stamp area, click the upload button.
    The File Upload dialog box appears.
  5. Click the Browse button, and navigate to the location of the file you created in step 1.
  6. Select the file, and click Open.
    You are returned to the File Upload dialog box, and your selected file is displayed.
  7. Click Upload.
    The selected file is displayed below the Signature Stamp buttons on the Preferences dialog box.

    Note: Any specified signature stamp will always be displayed on this dialog box.

  8. At the top of the Preference for dialog box, click save.

Configuring a Form for Signature Stamp Usage

After a signature stamp is uploaded to your profile, the form administrator needs to set up the form's signature field to use the LincDoc Login option. This signature option allows you to use your signature stamp when signing a document.

  1. Login to LincDoc as the desired form's administrator.
  2. Select the appropriate form using the Form Selection drop-down list.
  3. Access the Fields/Sections tab on the form's Admin dialog box (via the Admin button on the LincDoc toolbar).
  4. On the left side of the tab, click the signature field to select it.
    The fields information appears on the right side of the tab.
  5. Verify that the Signature type option is set to LincDoc Login.
  6. Specify whether or not the signature should be displayed as a cursive font, if no signature stamp is present, using the Create cursive signature image if no stamp present check box.
    When this option is selected, LincDoc automatically create a cursive signature image if no signature stamp has been specified for the user signing the form.
  7. At the top of the Admin dialog box, click save.

Signing a Document with a Signature Stamp

After you upload a signature stamp file to your profile, you can use it to sign a properly configured form in LincDoc.

  1. Access the Signature view by clicking the sign button on the Document Viewer.
    The signature box appears.
  2. Click sign.
    The Enter password dialog box appears, and your signature stamp is displayed.
  3. Verify that the correct signature stamp is displayed.

    Note: If the wrong signature stamp is displayed, you can change it using the upload button that appears immediately above the signature stamp. The upload process is the same as the one described in Defining Your Signature Stamp.

  4. In the text box, type your password. This password is the one you use to log in to LincDoc.
  5. Click OK.
    The signature stamp is used to sign your form. It will appear differently based on your Signature mode setting.

    Note: If your signature stamp contains a color image, the color will only appear when using the PDF view in the Document Viewer. When PNG view is used, the image is, by default, converted to black and white (although color can be achieved by altering the Document.png.ghostscript.device advanced option).

    In the following example, the Pdf Signature option was used for the Signature mode setting on the Fields/Sections tab of the Admin dialog box. Notice the additional time stamp added when using this option.
     

    Note: If your PDF time stamp contains a question mark icon (?) instead of a green check mark icon (as in the above example), you need to verify your signature as described here.

    In the following example, the Image option was used for the Signature mode setting on the Fields/Sections tab of the Admin dialog box. Notice that the PDF time stamp is not present.
  6. If more than one person needs to sign the document, proceed to the next section for more information.

Using Signature Stamps with Multiple Signers

If more than one person needs to sign a document, and each signer has a signature stamp, each signer needs to log in to LincDoc separately and apply the appropriate signature stamp.

  1. The first signer needs to perform the following steps:
    1. Sign the document as described in Signing a Document with a Signature Stamp above.
    2. Close the form.
    3. Log out of LincDoc.
  2. The second signer needs to perform the following steps:
    1. Log in to LincDoc.
      Important: You cannot use a Guest login if you want to sign a document with a signature stamp. 
    2. Open the form using any appropriate method.
    3. Submit the form.
    4. Sign the form as described in Signing a Document with a Signature Stamp above. This step ensures that the user's individual signature stamp is applied.

Downloading Your Signature Stamp

You can download a copy of your signature stamp to your local system, which allows you to save it locally, distribute it, or even edit it, as desired. 

  1. Access the Preferences for dialog box as described in Defining Your Signature Stamp above.
  2. Click the download button.

    The stamp's file is saved to your local computer.

    Note: The exact method of downloading will vary based on the browser you are using.

Clearing Your Signature Stamp

You can remove the currently selected signature stamp using the Clear button on the Preference for dialog box. This option is used if you do not want to use a signature stamp at all.

Note: If you want to replace the existing signature stamp with a new one, simply upload a new one (as described in Defining Your Signature Stamp). The new stamp will automatically overwrite the old stamp.

  1. Access the Preferences for dialog box as described in Defining Your Signature Stamp above.
  2. Click the Clear button.

    The stamp is removed, and no stamp is defined until you specify a new file using the upload button.
  3. Click save at the top of the Preferences for dialog box.

17.10. Using Bulk Signing

You can sign multiple signature fields, in the same document, using a single signature. This feature is known as bulk signing.

If multiple signature fields are present in a form, you are presented with a screen that shows all available signature fields. Clicking the sign all button (highlighted below), instead of an individual signature field, allows you to sign all of the available signature fields with a single signature.

Note: The Signer name field setting is used to determine which signature fields can be signed at the same time.

17.11. Using Batch Signing

Batch signing allows you to sign multiple documents, with a single signature, via the Browse dialog box. Once the documents are selected, you can pick and choose the fields that you want to sign.

About Batch Signing Limitations

The following limitations should be understood before using the batch signing feature:

  • The Batch signable setting must be selected (checked) for the form's signature field.
  • The Signer name field setting must be the same for each signature field that will be signed with a specific, individual signature.

Accessing and Using the Feature

The batch signing feature is used by accessing the desired documents via the Browse dialog box.

  1. Verify that the Batch signable setting is active (checked) for each signature field (in each form) that you want to sign using the batch signing feature.
    Note: If a signature field does not have this option active, it will not use the signature applied during the batch signing process.
  2. From the Browse dialog box, select the documents that you want to sign.
  3. On the Browse dialog box's toolbar, click the sign button.
    The Who is signging? screen appears, and displays the number of documents and valid signature fields in the selected documents.

    Note: If a Nothing to sign error message appears, then you have not specified any fields to use batch signing.
  4. Click sign.
    The Select signatures to sign dialog box appears.
  5. Select the fields you want to sign using the check boxes to the left of each listed field.
  6. Click review documents and sign.
    The Select documents to sign dialog box appears.
  7. Select the actual documents that you want to sign using the check boxes to the left of each listed document.
  8. (optional) Click view to see each selected document in the Document Viewer. Each document is opened in its own Document Viewer dialog box.
  9. Click sign.
    The Signature Pad dialog box appears.
  10. Using your mouse, add your signature to the pad.
  11. Click accept.

    Tip: If you are not satisfied with the signature, click clear to recreate it.

    The signature is applied to the selected fields in the selected documents, and each document is opened in its own Document Viewer window, allowing you to see the applied signatures. In addition, the Signed documents dialog box appears, allowing you to review the signature actions that just occurred.
  12. Perform any of the following actions, as desired:
    • Click a listed document to select it, and click Signature info to view addition information about the signature itself.
    • Click a listed document to select it, and click view to open the document in the Document Viewer.
    • Click close to exit the dialog box.

Accessing for the Search Feature

You can also access batch signing using the LincDoc Search feature. When multiple documents are selected, the batch sign button becomes active.

Clicking the batch sign button opens the Who is signing? screen.

17.12. Resolving "Validity Unknown" Signatures

This topic describes what to do if your signatures have a Validity unknown mark on them.

Note: This procedure describes how to resolve these errors using Adobe Reader.

If signatures display a "Validity Unknown" issue (as shown below), then your PDF application does not have the proper Certificate Authority certificate.

For a certificate provided by LincWare, if you click the Validity Unknown button on the generated form, you will have access to a download button, which allows you to download a .fdf file. This file contains information which reduces the complexity of importing the signature certificate into Adobe Acrobat and Reader.

  1. For a certificate provided by LincWare, click the Validity unknown? button on the generated form.

    A new browser tab or window (depending on your browser settings) is opened, showing additional information concerning how to resolve the issue.
  2. Click the download button.

    The LincWareDigitalSignatureIntermediateCA.fdf file is downloaded to your local system (the exact method and location varies based on your web browser). This file contains information which reduces the complexity of importing the signature certificate into Adobe Acrobat and Reader.
  3. Open the downloaded file with Adobe Acrobat or Reader (even if you are using different PDF software for creating your forms).

    Note: You can access the free download of Adobe Acrobat Reader at this web site.

  4. Click Add Contacts to List of Trusted Identities.
  5. Select lincware.com in the Contacts list.
  6. Select lincware.com in the Certificates list.
  7. Click Trust.
  8. Click the Use this certificate as a trusted root check box.
  9. Click OK.
  10. Click Import.
  11. Click OK.
  12. Close Adobe Acrobat or Reader.
  13. Click the signature. It should now appear similar to the following example, with the "Validity Unknown" issue now resolved:
 

17.13. Adding a Signature Field to a PDF

This topic describes the process of adding a digital signature field to a document in Adobe Acrobat.

About Prerequisites

The following prerequisites are required for adding a digital signature fields to a PDF document:

  • Adobe Acrobat
  • A form requiring a digital signature

Adding the Signature Field

  1. Open the form in Adobe Acrobat.
  2. From the Forms menu, click the Add or Edit Fields option.
     
  3. Proceed to the general area where the signature appear.
  4. Right-click the document.
  5. Select Digital Signature from the menu.
  6. Place the field in the proper location.
  7. Rename the field to an acceptable name.
  8. Save the document.
  9. Upload (or re-upload) the document.

18. Generating Reports

18.1. About Reports

Reports are created using the JasperReports library, which is a free, downloadable, open-source reporting engine. It is available from the following web site:

http://community.jaspersoft.com/project/jasperreports-library

Important: To create reports, it is necessary for you to have knowledge of JasperReports.

You can create a report and then upload it via the Report dialog box as described in Uploading a Report.

18.2. Uploading a Report

You can create a report using the JasperReports library and upload it into LincDoc.

For more information on this tool, see About Reports.

  1. Create the report using the JasperReports library.
    Important: Be sure to save the report as a JRXML file.
  2. On the main LincDoc interface, select reports from the system button.

    The Reports dialog box appears, displaying any previously created and uploaded reports. In the following example, no reports are listed.
     
  3. Click the new report button.

    The New report dialog box appears.
  4. Type a name for the report in the name text box.
    This name will appear on the Reports dialog box and will be used by others to find and access the report.
  5. Click OK
    The Report dialog box appears.
     
  6. Specify the following settings:
    • Database. Specify an existing database connection where the report will be stored.
    • Role. Specify which role a user will need to have in order to view the report.
  7. Click upload.
  8. Click save.
    The report is added to the Reports dialog box, and all users with the proper permissions can now view the report.

18.3. Viewing a Report

Once a report has been created and uploaded, it can be accessed and viewed (by users with the correct permissions) from the Reports dialog box.

  1. On the main LincDoc toolbar, select reports from the system button.

    The Reports dialog box appears, displaying any previously created and uploaded reports.
     
  2. Click the report that you want to view. The report is opened.

19. Database Lookups

19.1. About Database Lookups

LincDoc database lookups (also referred to as simply "lookups") are designed to read data from external databases and prepopulate data into a LincDoc form. A lookup can be configured on one or many fields to refine a search to a single or many records. To enable a lookup, a LincDoc administrator must first fully understand the data being read and the field types being prepopulated in the LincDoc form. The process starts by configuring a datasource at the LincDoc server level using the Databases dialog box. Once configured, a lookup can be defined and configured on a specific field in a LincDoc form. Although a lookup may be configured for a specific field, it can be reused on multiple fields inside multiple forms.

A LincDoc lookup is made of two parts:

  • The SQL query that searches for data in a database.
  • Mappings of the retrieved database fields/columns with the LincDoc fields in your form.

19.2. Connecting LincDoc to an External Database

You can configure a connection between LincDoc and an external database using the Databases dialog box.

Once a connection has been established, you use database lookups in a lookup action to pull database information into your forms. This connection may also be used for the stored procedure action.

Proceed to one of the following sections for more information:

Accessing the Databases Dialog Box

On the LincDoc toolbar, click the system button, and select databases from the list of options that appears.

 

The Databases dialog box appears, displaying any currently configured database connections.

About the "default" Connection

A default database connection is supplied with every installation of LincDoc.

You cannot delete this connection; it is the connection to the back-end database that drives the LincDoc application. In addition, certain configuration settings (such as Max idle, Max wait, and the property/value pairings) are only available to superusers (the "admin" account).

In addition, this database is the default database used for the LincDoc repository.

Adding a New Database

You can add a new database connection using the new database button on the Databases dialog box.

  1. Access the Databases dialog box.
  2. At the top of the Databases dialog box, click the new database button.

    The New Database dialog box appears.
     
  3. In the ID text box, type a name for the new database connection.
    This name will appear in the list of existing database connections on the Databases dialog box.
  4. Click OK.
    The Configure database dialog box appears.
     
  5. Proceed to Configuring a Database Connection below.

Configuring a Database Connection

You can configure an existing database connection using the Configure database dialog box, which is accessed via the configure button on the Databases dialog box.

  1. Access the Configure databases dialog box using one of the following options:
    • If you are creating a new database connection, the dialog box automatically appears when creating a new database as described in Adding a New Database.
    • If you are editing an existing database connection, click the edit icon that corresponds to the appropriate connection.
  1. On the Configure database dialog box, specify or alter the connection options, as necessary.
    Note: For assistance on determining your exact local settings, contact your local database administrator.

    The following options are available:
    • Driver. Specify the driver that will be used for the connection, based on the type of database the connection will use.
      The following options are available:
      • MySQL (MariaDB)
      • Microsoft SQL Server
      • Oracle
      • PostgreSQL
      • Sybase
    • URL. Specify the hostname of the database system, the port number to connect to on that system, and the particular database instance on that system. The specific syntax is dependent on the driver chosen. When a new driver is chosen, this field is populated with a template appropriate to the driver.
      For example, a URL for connecting to a Microsoft SQL Server database would appear similar to the following:
      jdbc:jtds:sqlserver://72.1.207.241:1433/lincdoc_database
      Or consider this more advanced example which overrides the default database instance:
      jdbc:jtds:sqlserver://10.10.10.1:1433;database=HR;instance=SQL2012
      Tip: In most situations you should enable "mixed" mode authentication on your SQL Server database.
    • Username. The name of the user that has access to the database.
    • Password. The specified user's database password.
    • Max active. Set the maximum number of connections LincDoc should attempt to use to the database.
      Tip: Whenever possible, you should use the default value. 
    • Max idle. Set the maximum number of idle connections LincDoc should maintain to the database. These idle connections allow LincDoc to maintain a minimal connection to the database, so that when an actual connection is needed, the communication between LincDoc and the database will be faster, the necessary data will be transferred more rapidly, as it does not require the overhead of creating a new connection.
      Tip: It is recommended that you use the default value.
    • Max wait (ms). Set the most amount of time LincDoc should wait for a connection to become available, if all connections are already in use.
      Tip: It is recommended that you use the default value.
    • Validation query. Specify a sample SQL query that will be run when LincDoc is trying to determine if a connection is still valid (sometimes connections timeout, and thus become unresponsive).
      Tip: It is recommended that you use the default value. 
  1. If necessary, specify custom properties and values using the table at the bottom of the dialog box.

    Important: These property and value settings are designed for advanced users, and allow you to pass extra parameters to the JDBC driver. The parameters that can be passed are dependent on the selected JDBC driver. For example, review the following website for more information on parameters used by Microsoft SQL Server.

    1. Click the add button (highlighted below).

      The property name dialog box appears.
       
    2. In the New property name text box, type a name for the property.
    3. Click OK.
      The new property appears in the property column of the table on the Configure database dialog box. 
    4. Specify a value for the property in the value column.
  2. At the top of the Configure database dialog box, click test.
    Your configuration settings are tested, and if the database connection works as expected, a Success dialog box appears. Otherwise, verify that your settings are correct and re-test.
  3. Click OK to close the Success dialog box.
  4. At the top of the Configure database dialog box, click save.
    You are returned to the Databases dialog box. 

Applying Configuration Updates

You must click the apply button at the top of the Databases dialog box to verify that the configuration updates are being used.

 

A message appears, confirming that you most recent changes have been applied to the database configurations.

Click OK to close the dialog box.

Uploading a CSV File

You can upload an external CSV file to create a new database table, or replace an existing table.

  1. Access the Configure databases as described in Configuring a Database Connection.
  2. Click the upload button that corresponds to the appropriate connection.
     
    The Upload CSV to database dialog box appears.
     
  3. From the Table drop-down list, select the existing database table that will hold the data from the CSV file. This will replace the entire contents of the table. If you wish to create a new table, type in the name instead of picking from the list.
  4. Click the select button.
    The Open dialog box appears.
  5. Navigate to the location of the CSV file you want to use, and click it to select it.
  6. Click Open.
    You are returned to the Upload CSV to database dialog box, and the selected CSV file now appears next to the select button.
  7. Click upload.The data in the CSV file is loaded to the specified database table. 

Exporting a Database Table

You can use the export button on the Databases dialog box to export data from a connected database's table to a local CSV file.
 

Exporting the table data requires that you select the appropriate database, schema, and table from a displayed list.

  1. Click the export button that corresponds to the database whose data you want to export.
    A list of the database's schema appears.
     
  2. Click the desired schema.
    A list of the schema's tables appears.
     
  3. Click the table whose data you want to export.
    The table's data is saved into a CSV file and downloaded by your browser.
    Note: The exact process for downloading the CSV file differs based on your current web browser. 

Removing a Database Configuration

For more information, see Deleting a Database Connection.

19.3. Configuring a Lookup Action

You can configure lookup actions to use individual lookups to automatically extract data from your existing database connection and populate fields in your form.

  1. Add a lookup action to your form. For more information, see Actions.
  2. Click the action's arrow button, and select edit from the menu that appears.

    The lookup dialog box appears.
     
  3. From the On single result drop-down list, select one of the following options to determine the behavior of the lookup when the search criteria generates a single match:
    • Load. Maps the queried results to the form fields automatically.
    • Prompt. Display a message option to the user before loading the results.
  1. From the On multiple results drop-down list, select one of the following options to determine the behavior of the lookup when the search criteria has generated more than one match:
    • Prompt to Select One. Displays the matches in list format for the user to narrow further.
    • Load All. Loads all of the returned rows into the currently executing data entry form. This option is only applicable when the lookup is mapping data into a multi-value table inside the data entry form. In this context, the system will add in the required number of new rows into the data entry form. In doing so, all the rows of data retrieved from the database are used.
  1. (optional) In the Message if no results text box, specify text that will appear to the user when no match is found via the lookup action.
  2. Using the table in the lower half of the dialog box, specify the individual lookups that this action will use and when they will be used (via a condition).
    1. In the conditions columns, configure a condition that must be met before the individual lookup is executed.
      Tip: If the lookup is always used, verify that Always is selected from the drop-down list in the condition column.
      For more information on defining conditions in LincDoc, see Configuring conditions.
    2. In the lookup column, select an existing lookup or create a new lookup.
    3. (optional) Specify additional condition/lookup pairings for your lookup action using the add remove buttons (highlighted below).
       
  3. At the top of the lookup dialog box, click the save button.

19.4. Creating a New Lookup

You can create a new lookup using the new button available from the drop-down list in the lookup column.

Note: Once configured, a lookup is available system-wide, not just in the action in which it was created.

Adding a Lookup and Specifying the Lookup Type

You can add a new individual lookup using the new button available from the lookup drop-down list on the lookup dialog box.

  1. Access the lookup dialog box as described in Configuring a Lookup Action.
  2. In the lookup column at the bottom of the dialog box, click the drop-down list.
    A list of previously defined lookups appears. 
  3. In the upper right corner of the displayed list, click new.


    The New lookup dialog box appears.
     
  4. In the ID text box, specify a name for the new lookup.
    This name will appear in the list of available lookups.
  5. Specify the type of lookup you are creating using the Type drop-down list. The following options are available:
    • Multi Value Field. Allows you to extract data from a multivalue table in the current document.
      ImportantThis lookup type is only available with LincDoc version 3.2 (and above) and is not currently available with LincDoc Mobile.
    • JDBC Advanced. Allows you to write your own custom SELECT query (which may join two or more existing tables/views) to pull data from a third party database into a LincDoc form. The query can use any syntax that is acceptable for the back end database.
      Important: This lookup type is currently not available with LincDoc Mobile. 
    • JDBC. Assumes that the table or view from which you want to extract form data already exists in your third party database. The data is then extracted and inserted into a running LincDoc form.
  6. Click the add button.
    The lookup's configuration dialog box appears.
  7. Proceed to one of the following sections, based on the lookup type you are creating:

Configuring a Multi Value Field Lookup

Note: This feature is only available with LincDoc version 3.2 and above.

A Multi Value Field lookup allows you to extract data from a multivalue table in the current document. You specify the table that you want to use by selecting any existing field in the corresponding table. No database is used with this type of lookup, unlike the other two lookup types (JDBC and JDBC Advanced).

  1. Access the lookup's configuration dialog box as described in Adding a Lookup and Selecting the Lookup Type.
     
  2. (optional) Provide a description for the lookup in the corresponding text box.
    This text will appear immediately below the lookup's name in the list of lookups.
  3. From the Any field in source table drop-down list, select an existing field in the multi-value table you want to use. This action selects the table for use by the lookup. You can choose any field in the desired multi-value table.
  4. Proceed to one of the following topics for information on using the settings at the bottom of the dialog box:

Configuring a JDBC Lookup

A JDBC lookup assumes that the table or view from which you want to extract form data already exists in your third party database. When the lookup is used, the data is extracted and inserted into the currently running LincDoc form.

  1. Access the lookup's configuration dialog box as described in Adding a Lookup and Selecting the Lookup Type.
  2. (optional) Provide a description for the lookup in the corresponding text box.
    This text will appear immediately below the lookup's name in the list of lookups.
  3. From the Data source drop-down list, select the existing data source (database connection) that the lookup will use.
    For more information on creating and configuring these connections, see Connecting LincDoc to an External Database.
  4. From the Table/View drop-down list, select the table or view in the specified data source that the lookup will use.

    NoteYou can also upload data directly from a CSV file to a table using the upload CSV button or export information from the selected table to CSV file using the export CSV button.

  5. From the Sort column drop-down list, select the column in the table that the lookup will use.
  6. From the Sort direction drop-down list, select whether the data in the column will be arranged in ascending (A-Z) or descending (Z-A) order.
  7. (optional) Specify a condition if you want to execute one type of lookup (if the condition is true) and a different lookup under different (defined) circumstances.
    For example, if your company has an expense report where you want to run a different lookup based on the employee type, you could define conditions so that a specific lookup is executed for employees of type "SALES" and a different lookup to executed for employees of type "ENGINEERING". Each employee type would use a different condition.
    1. Click the Condition check box.
    2. Define a single condition or multiple conditions. For more information, see Creating and Editing Custom Conditions.
  8. Determine if you want to allow offline caching. This option applies to forms that are enabled to run on LincDoc Mobile (an iPad). Because forms on an iPad may be run without having a WiFi signal (network connection), it would otherwise be impossible to run the lookup, since the lookup connects to a database somewhere on the network, requiring a network connection. When this option is active, LincDoc Mobile will download the entire table that corresponds to this lookup when form definitions are refreshed on the iPad and a network connection is present.

    Tip: It is recommended that you not use this option with tables that contain more than approximately a few hundred rows.

    1. Click the allow offline caching? check box.
      Additional cache options appear. 
    2. Specify one of the following cache policies from the corresponding drop-down list:
      • timed. Whenever you update forms on an iPad using information from the server, the offline lookups are refreshed. The act of refreshing starts the "timer" for each lookup. At the point that the lookup data is needed (for example, while running the form), this time is evaluated to determine whether the data for the lookup needs to be refreshed. If the iPad is online, the data will be refreshed and the timer reset before the lookup is run. If the iPad is not online (not connected to WiFi and the network), the lookup simply uses the existing offline data, and attempts to refresh the data the next time it is needed or the next time the forms are updated from the server.
      • userSession. A timed lookup, as described above, with a pre-determined duration of 24 hours.
  9. Proceed to one of the following topics for information on using the settings at the bottom of the dialog box:

Configuring an Advanced JDBC Lookup

An Advanced JDBC lookup allows you to write your own custom SELECT query (which may join two or more existing tables/views) to pull data from a third party database into a LincDoc form. The lookup's query can use any syntax that is acceptable for the back end database as well as DRAT expressions. 

  1. Access the lookup's configuration dialog box as described in Adding a Lookup and Selecting the Lookup Type.
  2. (optional) Provide a description for the lookup in the corresponding text box.
    This text will appear immediately below the lookup's name in the list of lookups.
  3. From the Data source drop-down list, select the existing data source (database connection) that the lookup will use.
    For more information on creating and configuring these connections, see Connecting LincDoc to an External Database.
  4. In the large Query dialog box, define a standard SQL SELECT statement. Each column returned by the query can then be mapped to a LincDoc field, as described below.
    For complete details, see Defining a Lookup Query.
  5. Proceed to one of the following topics for information on using the settings at the bottom of the dialog box:

Automatically Mapping Lookup Fields

You can use the auto-map button to have LincDoc attempt to automatically map the database columns or multi-value table entries (based on your lookup type) returned by the specified query to fields in the current form.

This feature works by comparing LincDoc fields in the current form with database columns returned by the lookup. For any returned column, if there is a LincDoc field with the same name (independent of case), the column is automatically mapped to the field.

Tip: If you use this option, it is highly recommended that you check the results of the automatic mapping. If necessary, you can edit the automatic mappings as described in Manually Configuring Lookup Mapping and Prompt Columns.

Once the automap operation is complete, click save at the top of the dialog box.

Manually Mapping Lookup Fields

You can manually map the database columns or multi-value table entries (based on your lookup type) returned by the specified query to fields in your LincDoc form using the Mapping tab at the bottom of the lookup's configuration dialog box.

Tip: At any time, you can click the refresh button (near the middle of the dialog box, above the Mapping tab) to verify that you are viewing the most up-to-date database or multi-value table information.

  1. Verify that you have configured the basic lookup settings and specified the type of lookup you are creating as described in the appropriate sections above.
  2. On the Mapping tab at the bottom of the dialog box, specify the relationships between the database columns/multi-value table entries and the form's fields.
    1. Click and drag items from the lookup fields column (left side of the tab) to the correct item in the forms fields column (right side of the tab).
      A green check mark icon appears if the mapping is valid.
       
    2. Release your mouse button when your mouse pointer is over the correct items in the form fields column.
      The mapped lookup field appears in the lookup fields column on the right side of the tab when the mapping is complete.

      Note: You can also remove mapping by dragging entries in the lookup fields column on the right side of the tab back to the lookup fields column on the left side of the tab. A mapping is removed once the entry in the lookup fields column on the right side of the tab is blank. 

  3. Repeat this process until all of the fields are mapped to your satisfaction.
  4. At the top of the dialog box, click save.

Configuring the Prompt Columns Settings

Note: This feature is only available with LincDoc version 3.2 and above.

The Prompt columns tab allows you to sort and specify the data that will be shown to the user during the data entry process, allowing the user to chose the desired row of data that will be mapped into the running form from among several options. These prompts differ based on the current (selected) lookup.

  1. Click the Prompt columns tab.
    The currently mapped fields are displayed, allowing you to select which ones will be used as prompts.
  2. Using the check boxes on the left side of the tab, select the mapped fields that will appear when the lookup is performed.
  3. (optional) Add text to the label column for each selected entries.
    When defined, the label text will appear in the lookup instead of the field name (as it appears in the lookup fields column).
  4. (optional) Reorganize the list of fields by clicking and dragging the entries in the lookup fields column.
    A green check mark icon appears when the item is being moved, and shows you that the current location (where your mouse pointer is hovering) is an acceptable new location.
     
  5. At the top of the dialog box, click save.

19.5. Editing an Existing Lookup

You can edit an existing lookup directly from the lookup dialog box.

  1. Access the lookup's configuration dialog box as described in Adding a Lookup and Selecting the Lookup Type.
  2. Click the drop-down list in the lookup column.
    The currently defined lookups appear.
  3. Click the edit icon for the lookup you wish to alter.

    The lookup's configuration dialog box appears.
     
  4. Adjust the lookup's settings, including the settings specific to your lookup type, as desired. For more information, see Creating a New Lookup.

19.6. Defining a Lookup Query

When you use the JDBC Advanced lookup type, the lookup configuration dialog box allows you to customize  the database query using the large Query dialog box (highlighted below).

Proceed to one of the following sections below for more information on defining the query:

Defining the Query

The query is a standard SQL SELECT statement. Each column returned by the query can be mapped to a LincDoc field.

A special property of lookup queries is that you can use field names from your LincDoc form in WHERE clauses. Field names should be bracketed with double less-than and greater-than symbols (for example <<name>>).

Some example queries will help to explain the functionality. Let's say you wanted to lookup applicant information from a permit application based on the application number entered on your form in a field called app_number. You might enter a query like the following:

1
SELECT applicant, app_city, app_prov, total FROM demo.permit_app WHERE app_no=<<app_number>>

You could then map applicantapp_cityapp_prov and total to fields on your LincDoc form.

Let's say that the user completing the form does not know the application number and wants to choose an application from a list of HVAC permits filled out in the last 30 days. To do this, you would set the On multiple results option to Prompt to Select One and provide a query like the following:

1
SELECT app_no,applicant,app_city,app_prov,app_zip,hvac_fee,total,CURRENT_DATE-CAST(app_dt as date) as "age" FROM demo.permit_app where disciplines='HVAC' and (CURRENT_DATE-cast(app_dt as date))<=30 order by age

Several interesting features are being used here.

  1. When the user is presented with a list of results to choose from, the columns in the list will appear in the order in which they're specified in the query.
  2. The SQL CAST() function is being used to convert the app_dt field from the timestamp type to the date type.
  3. The SQL CURRENT_DATE keyword is being used to calculate the number of days between now and the application date.
  4. The SQL "AS" keyword is being used to give the calculated column the name "age". You will notice that when you click refresh columns, you will see a column called age in the Query Result Column list, and you will be able to map this column to a field on your LincDoc form. Also, when the user is presented with a list of results to choose from, the column heading will use the names specified with the "AS" keyword.
  5. The SQL ORDER BY clause is being used to sort the results. You will notice that when the user is presented with a list of results to choose from, that list will be in the order you specify in the query.

The CAST() function is a good way to make sure that the data type of the database column matches the data type of the field on the form. For example, if the app_zip column in the database is an integer field and the zip code field on your LincDoc form is a string, you could use CAST(app_zip, VARCHAR(5)) to convert the column to a string type.

Let's say that you wanted to search for records based on a partial match of a person's last name. Assuming that your LincDoc form has a field called lastname and your database table has columns called person_firstperson_last and person_city, you could use a query like the following:

1
SELECT person_first, person_last, person_city FROM demo.job_apps WHERE LOWER(person_last) LIKE LOWER(<<lastname>>)

The first thing to notice is that we've made the search case-insensitive by using the SQL LOWER function on both the database column and the field from the LincDoc form. So a database record with the value "Smith" in the person_last column will be included in the query results regardless of whether the user types "smith", "SMITH" or "Smith" in the lastname field on the LincDoc form.

The second thing to notice is that we have allowed partial matches by using the SQL LIKE keyword. It is very important to note that using LIKE will perform exact matches unless there is at least one SQL wildcard character in the search string. So in our example above, if the user types "Smit" in the lastname field on the form, the query results will not include the record where the person_last column is "Smith". To make the partial match, the user will need to type something like "Smit%" in the lastname field. The percent sign wildcard matches multiple characters at any point in a string, so our "Smith" record would be included in the results if the user typed "s%h", "%mit%" or "%ith" in the lastname field on the form.

As a final example, let's say that your query is likely to return more than one result, but that you wanted to choose one of the results automatically rather than having the user pick from a list. You could accomplish this with a combination of an SQL ORDER BY clause and an SQL LIMIT clause, as in the following query:

1
SELECT app_dt,app_no,applicant,app_city,app_prov,app_zip FROM demo.app_permit WHERE disciplines=<<permit_type>> ORDER BY app_dt DESC LIMIT 1

This will cause only the first result to be returned, thus preventing a list of results from being presented to the user. In this case, the first result will be the most recent application because of the ORDER BY clause.

Note: Older versions of Microsoft's SQL Server do not support the LIMIT clause. To get the same functionality, you would use "SELECT TOP 1 ..."

Using DRAT Expressions in Your Query

You can use DRAT expressions (such as: <<fieldName>>,<<:doc-meta:uuid>) in the SQL. These expressions will be parsed before sending the SQL to the RDBMS.

In the following example, the DRAT expression is underlined and represents a patient's last name.

In this query example, the where clause uses the lower function to automatically make both sides of the comparison lowercase, even if they are added in uppercase. This step eliminates any case-comparison issues by removing the difficult to control variable of how an end user enters the information. In addition, some back end databases always store information in all uppercase. In short, this part of the query verifies that all possible matches are found for use in your form, regardless of the original entry case.

In addition, the rtrim functions removes unnecessary blank values, which can cause lookup issues, especially if a database pads the end of entries with blank values. For example, a lookup can fail since it is expecting "Smith" but it instead finds "Smith " and does not return the correct value for the lookup.

Finally, the percent signs ( % ) act as wildcard characters, allowing for the use of partial matches. For example, if a user enters "chest" for a town name lookup request, matches would be made with entries such as "Rochester", "Chesterville", etc.

For more information on DRAT, see Using Document Refinement Annotation Transformer (DRAT).

Using a Query with Multi-value Fields

When setting up a lookup using a multivalue field, it is important to note the syntax – don't include the # inside of the lookup query.  Take the example.  Suppose that there are three fields in a multivalue group: description, upc, and price. In the database, the fields are item_description,item_upc, and item_price. In order to do a lookup for the price based on the entered UPC, the necessary query would be:

1
select item_price from price_table where item_upc = <<upc>>

Normally, when working with multivalue fields, you would have done upc#.  But that will not work with lookups.

19.7. Deleting a Lookup

You can remove an existing individual lookup using the delete button which appears on the lookup drop-down list.

Important: The lookup definition is stored in the system database, but it is stored separately from the rest of the form definition. Therefore, once you delete it, as described above, it is permanently removed, even if you then leave the Admin dialog box without saving your form.

For more information on accessing this drop-down list, see Adding a Lookup and Selecting the Lookup Type.

19.8. Deleting a Database Connection

You can delete a database (datasource) connection using the delete button on the Databases dialog box (accessed via the system button).

The following important information should be noted before you delete a database connection:

  • This action only deletes the connection between the database and LincDoc. It does not delete the database itself.
  • All lookups that use this database should be deleted before deleting the database connection. LincDoc does not automatically locate and disable these lookups as part of the database connection deletion process. For more information, see Deleting a Lookup.

20. Connecting to Other Software Systems

20.1. Overview

This section describes additional configuration that is necessary for connecting to certain third-party applications (outside of LincDoc).

20.2. LincDoc Connector for Laserfiche: Installing and Configuring

The LincDoc Connector is a Java-based Windows service that allows LincDoc to write documents and data to external systems. In this documentation, Laserfiche connectivity will be discussed in detail. Other connectivity includes file share access, as well as other document management systems. The connector has an auto-update feature which communicates with your LincDoc server to retrieve the most up-to-date version for your software configuration.

Proceed to one of the sections below for more information:

About the LincDoc Connector

A connection between LincDoc and Laserfiche allows LincDoc to read and write data and documents both to and from Laserfiche. When setting up this connection, certain connection parameters must be used to make the connection. These parameters are given a collective, descriptive identifier name, which is known as the Connector ID, and is later used when specifying the Laserfiche repository connection.

About the Installation Process

The high level steps to set up Laserfiche communication are:

  1. Download the installer.
  2. Install the LincDoc Laserfiche Connector module.
  3. Create the Laserfiche connection on the LincDoc Server.
  4. Create and configure Laserfiche handler.
  5. Create and configure the LincDoc connector.
  6. Click Start to start the connector.

Installing the Laserfiche Connector Module

While LincDoc is based on the Linux operating system and Java programming language, Laserfiche is a Windows-based software package. For LincDoc to effectively integrate with Laserfiche, it must work with the Laserfiche Toolkit, which is also based on (Windows-only) COM technology.

Note: The current system must already have the Laserfiche (thick) client installed. Alternatively, and more typically, it can be a system running the Laserfiche server.

About Installation Requirements

The following requirements are necessary for the Laserfiche connector to function correctly:

  • A Windows Server system that already has the Laserfiche client or server installed.
  • The system's user must have full Administrator rights to install any additional software.

Installing the Connector

The following procedure should be used to install the LincDoc Connector.

  1. Download the connector_setup.exe from hereNote: this installer will only work for 64-bit environments. Using a 32-bit installer is no longer supported.
  2. Double-click the connector_setup.exe file to run it.
    The LincDoc Connector Setup dialog box appears.
  3. (optional) Change the path in the Destination Folder text box. The default location is C:\Program Files\LincWare\Connector.
  4. Click Next.
    The Service name information appears.
  5. (optional) In the Service name text box, change the default Windows service name that the connector will use. It is recommended that you use the default LincDocConnector name.
  6. Click Next.
    The component information appears.
  7. Use the Start Menu entries check box to determine whether or not you want the connector to be accessible from the Window Start menu.
  8. Click Install.
    The connector software is installed, and the Completed screen appears.
  9. Click Next.
    The Launch setup utility option appears.
  10. Verify that the corresponding check box is selected, and click Close.
    The LincDoc Connect - Service Configuration dialog box appears.

    The LincDoc connector - service configuration is a small Java application which allows an administrator to start and stop the third-party Windows service, as well as configure the LincDoc Connector. The first thing to do upon executing the configuration application is to set the URL of your LincDoc VM.
  11. Click Test to determine if the URL that you have entered is correct, and that the LincDoc server is running.
  12. Verify that the Windows service is registered by examining the Status entry. If the connector is registered, the status will be either Stopped or Running.

    Note: When the connector is installed, it should automatically register the service. However, if it is unregistered for any reason, simply click Register to register the service with windows.

  13. Leave the LincDoc Connector - Service Configuration dialog box open. You will need it later in this process.
  14. Proceed to Configuring the LincDoc Server Connector below.

Configuring the LincDoc Server Connector

Once you have installed the LincDoc Connector, you need to configure it communicate with Laserfiche.

Proceed to one of the following sections below for more information:

About LincDoc Connector Components

The LincDoc connector has two components to its configuration: a handler and a connector.

A handler defines the configuration of the local system LincDoc needs to write to. In this case, Laserfiche is the local system. The handler defines the server, path locations, and user credentials used to access the Laserfiche system.

The connector defines the configuration parameters for connecting to the LincDoc system. Once both of these components are defined, the handler can be mapped to an individual connector.

Accessing the Connectors Dialog Box

The configuration of the LincDoc Connector is done using the Connectors dialog box, which is accessed from inside of LincDoc. 

  1. Verify that you have installed the LincDoc Connector.
  2. Log in to LincDoc as an administrator (admin-type user).
  3. Verify that you are using the correct client ID using the User Profile button on the LincDoc toolbar.
  4. On the LincDoc toolbar, click the system button and select connectors.
    The Connectors dialog box appears.
  5. In the New Connector ID text box, type an ID for a new connector.
    Important: Connector IDs are case-sensitive.
  6. Click Add to create the connector.
    The connect is added to the list on the dialog box.
  7. Right-click the newly added connector.
    A menu appears.
     
  8. Click the View passphrase option to create a new password. The password appears in a separate dialog box.
  9. Copy the password (you will need to paste it into the configuration screen for this connector later in this process).
  10. Proceed to the next section below.

Using the Connector to Determine the Connection Status

Once the connector is configured, you can use LincDoc to view any sessions using the connection. Additionally, you can set up a monitor to send out an alert if the connector can no longer communicate with the external system. Both of these actions are accomplished through LincDoc's connector menu.

  1. Log into LincDoc.
  2. Open the Connectors dialog box as described in Accessing the Connectors Dialog Box.
  3. Click the connector on which you want to set up a monitor or view current sessions.
    The connector is highlighted, and additional tabs (Sessions and Monitors) appear below the connector.
  4. Click the Monitors tab. The contents of the tab appear.
  5. Set up a monitor.
    1. Click the Add button to add a monitor recipient.
    2. Enter an email address to receive notifications.
    3. Specify the amount of time that must elapse, after communication is lost, before the monitor starts to send out alerts using the Timeout (sec) setting.
    4. (optional) Specify how long the monitor will wait before attempting to reconnect, and send out a new alert, using the Repeat (sec) setting.
      Note: This setting must first be activated using the check box to the left of the setting.
      Your monitor should appear similar to the following example.
  6. Close the Connectors dialog box.
  7. Proceed to the next section below.

Creating and Configuring the Laserfiche Connector Components

Once you create and configure the Laserfiche connector, you need to define the handler and connector.

Proceed to one of the sections below for more information:

Defining the Laserfiche Handler

The Laserfiche handler is defined using the LincDoc Connector - Configuration dialog box's Handlers tab.

  1. From the LincDoc Connector - Service Configuration dialog box, click the Configure Connectors button.
    The LincDoc Connector - Configuration dialog box appears.
  2. From the dialog box's Configuration menu, point to Add Handler, and click Laserfiche.
    The Handlers tab is populated with various settings.
  3. Define the following settings:
      • Handler ID. A unique identifier that is used by the connector. This setting is case sensitive.
      • Version. The version of Laserfiche (7.2 and higher is supported).
      • Server. The Laserfiche server name (127.0.0.1 can be used if installing directly on the Laserfiche server).
      • Repository. The Laserfiche repository where the documents will be stored.
      • Username. The Laserfiche username that will be used to write the forms.
      • Password. The password for the Laserfiche username specified in the previous setting.
      • Volume. The Laserfiche volume where the documents will be written.
      • LF Temp Folder. The folder location where the connector will temporarily write forms prior to moving them to the final location.  This setting is used to address any Laserfiche (LF) workflow locking issues.
      • Max Connections. The Maximum number of connections made from the Connector to Laserfiche.
      • Max Wait (sec). The maximum number of seconds the Connector will wait for a connection to Laserfiche to become available.
      • Allow LincDoc to override username. Provides the ability to use the username and password of the current LincDoc user.
  4. Proceed to Defining the Laserfiche Connector below.

Defining the Laserfiche Connector

The Laserfiche connector is defined using the LincDoc Connector - Configuration dialog box's Connectors tab.

  1. If necessary, click the Configure Connectors button from the LincDoc Connector - Service Configuration dialog box to access the LincDoc Connector - Configuration dialog box.
  2. Click the Connectors tab. The contents of the tab appear.
  3. From the Configuration menu, click Add Connector.
    The Connectors tab is populated with various settings.
  4. Define the following settings:
    • LincDoc URL. The URL of the LincDoc server. Note the full path location (for example: http://<yourservername>/lincdoc).
    • Client ID. The unique customer ID for your LincDoc server provided by LincWare.
    • Connector ID. The unique ID for this connector. It must be set for each form in LincDoc that will use this connector.
    • Password. The passphrase for the connector generated from inside LincDoc. You copied it earlier in this process.
    • Handler. The unique identifier created for the Laserfiche handler configuration.
    • Description. Description assigned to the connector that will be used for logging purposes.
    • Connections. The number of connections the connector will make to the LincDoc server.
    • Enabled. This check box allows you to enable the connector. If not enabled, LincDoc will report an error when trying to use the connector.
  5. From the dialog box's File menu, click Save Configuration.
  6. Close the LincDoc Connector - Configuration dialog box.
  7. Return to the LincDoc Connector - Service Configuration dialog box.
  8. Click Start.
  9. Close the LincDoc Connector - Service Configuration dialog box.

Laserfiche Connector

LincDoc is based on Linux and Java. Laserfiche is based on Windows. In order for LincDoc to effectively integrate with Laserfiche, it must work with the Laserfiche Toolkit which is also based on (Windows only) COM technology. This machine must already have the Laserfiche (thick) client installed (or it can be a Laserfiche server machine). High level steps to be performed on the Windows machine:
  • Install the LincDoc Laserfiche Connector module
  • Create a Laserfiche handler
  • Create a LincDoc Connector
  • Configure each
  • Setup the Laserfiche connection in LincDoc

20.3. LincDoc Connector for Laserfiche: Troubleshooting

This topic describes steps to take when troubleshooting connectivity issues between LincDoc and Laserfiche. The basic goal to be accomplished is to get to a known state. 

Reconfiguring the Environment

Some of these steps may seem superfluous, and not all are absolutely necessary, but they should result in a correctly-running environment.

The general steps to use are as follows (in this order):

  1. Turn off all Laserfiche workflow tasks that are associated with any of the folders to which LincDoc may be attempting to save files.
  2. Confirm you can login to the Laserfiche server using the standard (thick) Laserfiche client software using the same username and password as used in the Connector configuration.
  3. Verify the same login used above can also save a new file into Laserfiche (while running the standard client).
  4. Verify the same login used above can also edit and save data in every template field (while running the standard client) to which LincDoc may be attempting to write data.
  5. Ensure you are logged in to the Laserfiche server as the Administrator.
  6. Stop the LincDoc Connector Windows service using the Service Configuration dialog box.
  7. Unregister the service using the Service Configuration dialog box.
  8. Close the Service Configuration dialog box.
  9. Open the Windows Task Manager application, and locate any java.exe or javaw.exe processes. If any are running, force them to stop.
  10. Uninstall all previous versions of Java.
  11. Re-install the 32-bit Java SE 6 (regardless of your server's operating system, the 32-bit version must be used because the Laserfiche DLLs are still 32-bit).
  12. Go to https://lincdoc.example.com/lwsa (substituting for the appropriate local LincDoc hostname/IP address); login as admin, download the SSL .exe installer (refer to the screenshots below); and run the file on the Laserfiche server.
  13. Verify that the .exe installer worked properly.
    1. Open the Windows Control Panel.
    2. Open the Java preferences.
    3. Click the Security tab.
    4. Select the Signer CA type, and click the System tab.
      You should see the web site certificate listed.
      In this screenshot below (taken from a Windows Server 2008 R2 system), it shows that lw3el0.lincware.com's SSL certificate was properly imported.
       
  14. Re-install the LincDoc Connector software.
  15. Open the Connector configuration dialog box; set up a handler first, and then a connector (remember the names of handlers and connectors are case sensitive); double-check all the settings are correct; and all test buttons report success.
  16. Verify that the enabled check box is selected (checked).
  17. Verify that you have saved all changes for the connector and handler you just configured.
  18. Register the connector as a Windows service by clicking the button.
  19. Start the service by clicking the Start button.
  20. Login to LincDoc.
  21. From the system button, click connectors.
  22. Choose the connector that was just configured. It should show an enabled status, and a last hit value in the last 30 seconds or so. A value of 0 or -1 indicates a problem, in that case try pressing the refresh button. It should look similar to this screen shot.
     

Viewing Log Files

System log files exist under c:\Program Files (x86)\LincWare\Connector\log. The service.log file captures messages when the connector service is running. You may want to open this file in notepad and look for the phrases exception, error, and permission denied.

Understanding SSL Issues

If you see the following error message in the service.log file, or in a warning dialog box:

Error: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

it means you should stop the connector service if it is running, close the connector configuration dialog box, and use Windows Task Manager to ensure all java.exe and javaw.exe processes are stopped (by force, if necessary). Once all Java processes are completed, access the LWSA, download the SSL .exe installer, and run that file:

Restart the connector service and/or the connector configuration dialog box.

Similarly, if you press the test button:

And get the following warning:

It means you must follow the same steps noted above to run the .exe.

21. Advanced Features

21.1. Using Source Document Field Options

The following options can be used in your Microsoft Word/OpenOffice source document to provide advanced control over defined fields.

Note: You can use the options together, as long as they are separated by a comma within the square brackets (for example: <<product#[hidden, no_multirow_expand]>>)

For more information on using these options in source documents, see LincDoc Markup - Microsoft Word/OpenOffice Source Files.

No_Multirow_Expand

In the advanced case of having a repeating source document where it is desired to not have a multi-value table in that document expand out,  you can now use the no_multirow_expand option in that source document's field definitions to prevent the expansion of multi-value tables.

For example: <<product#[no_multirow_expand]>>

Hidden

This option allows you to hide a field's value in a generated document. 

For example: <<product#[hidden]>>

Note: You can also hide a repeated field in one part of a source document, but then not hide it in another part, if desired.

21.2. Specifying an Authentication Provider in a Link

You can specify a particular authentication provider directly in a hyperlink.

When adding links (which are DRAT expressions), you can specify the authentication provider using the seventh parameter in a link.

In the following example, an Email action uses a link in its body text to specify the authentication provider as "mainActiveDirectory". Notice the six colons prior to the authentication provider name, which act as notations for the six (non-used) parameters.

 

Since this option is considered an advanced option, you should contact Technical Support for further assistance.

22. LincDoc Interface Customization and Branding

22.1. About Image (Branding) Customization Options

You have the ability to change the LincDoc interface images to use your own branding.

Important: Branding and customization, as described in this chapter, is only available with SQL repositories.

The following images can be customized:

 

22.2. About the Resources Repository

Custom image files (such as logos) must be stored in your resources repository. Once they are uploaded into this repository, you will be able to access when specifying a new main logo or toolbar logo, as described below.

For more information about the resources repository, as well as other repositories, see About Provided Repositories.

For more information on how to add files to a repository, see Adding Local Files to Your Directory Structure.

22.3. Customizing the Data Entry View Images

Data entry images appear in the upper portion of the Data Entry View. You can specify an image for the left and right sides separately (as highlighted below).

Important: Custom data entry image files must be stored in your resources repository. Otherwise, you will not be able to access them from the LincDoc Admin dialog box (as described in the sections below). For more information, see About Provided Repositories.

Proceed to one of the following sections below for more information:

Customizing the Data Entry View Header Images

Use the following steps to change the data entry images to a custom image (.jpg, .gif, or .png) for each form.

  1. Verify that the image file you want to use has been added to your resources repository. For more information, see Adding Local Files to Your Directory Structure.

    Tip: You can access the resources repository's Browse dialog box using the Repositories dialog box.

  2. From the Form Selection Drop-Down List, select the eForm or Document Package whose images you want to customize.
  3. Open the Admin dialog box.
  4. On the eForm or Document Package tab, locate the Data entry header settings.
  5. Click the select button for the image you want to define (left or right side).
    The Select data entry header dialog box appears for the side you select.
  6. Locate the desired image file in your resource repository's directory structure, and click it to select it.
  7. At the bottom of the Select data entry header dialog box, click the select button.
    You are returned to the Admin dialog box, and the selected image is displayed adjacent to the corresponding setting. In the following example, the Data entry header left setting is using a custom image.
  8. At the top of the Admin dialog box, click save.
    Your new image(s) will now appear the next time the Data Entry View is accessed.

Changing a Custom Data Entry Image

If you have specified a custom data entry image, and you want to specify a different image, simply use the select button (as described in the section above) and choose the new file from your repository.

It is not necessary to reset the image and then select the new image. Resetting, described below, should only be used when you want to return an image to its default.

Removing Custom Data Entry Images

You can delete your custom data entry images, returning to the original, default images, using the reset buttons.

  1. From the Form Selection Drop-Down List, select the eForm or Document Package whose images you want to customize.
  2. Open the Admin dialog box.
  3. On the eForm or Document Package tab, locate the Data entry header settings.
  4. Click the reset button the corresponds to the custom data entry image that you want to remove.

    Note: Only settings that show a custom image are currently using one (in the example below, the Data entry header left setting is using one such image).


    When a reset button is clicked, the corresponding custom image is removed.
  5. At the top of the Admin dialog box, click save.
    The original, default image(s) will now appear the next time the Data Entry View is accessed.

22.4. Customizing Sections

You can customize the text of a section's long description, specifying custom formatting. In addition, you can determine the overall width of the description area and whether or not a border is displayed around the section's area. 

Proceed to one of the following sections below for more information:

Customizing the Long Description Text

You have the ability to provide a long description for a section or field.

  1. From the Admin dialog box, locate the Section long description setting on the Fields/Sections tab.
  2. On the left side of the tab, click the section you want to edit.
  3. On the right side of the tab, click the edit button below the description's text box.

    The Long description dialog box appears, providing you with a number of formatting and editing options.
  4. Using the large text box and the various formatting options, specify your section's long description.
  5. When the long description is complete, click the preview button.
    A dialog box appears, showing you how the long description will appear in the Data Entry View of your eForm or Document Package.
  6. Click close to return to the Long description dialog box.
  7. If necessary, adjust your long description and preview it again.
  8. Once you are satisfied with your long description, click OK.
    You are returned to the Admin dialog box, and the HTML for your long description appears in the Section long description text box.
  9. Once you have completed editing your eForm or Document Package, click save at the top of the Admin dialog box.

Customizing Images in Section Headings

You can insert custom images into section headings by specifying a URL that points to the file's location in a repository.

Proceed to one of the following sections below for more information:

Adding a New Custom Image

You can add a custom image to your section heading using the Long description text box.

  1. Verify that the image you want to use has been uploaded to your resources repository
    Important: Be sure to note the location (path) of the file. You will use this information later to identify the file.
  2. From the Admin dialog box, locate the Section long description setting on the Fields/Sections tab.
  3. On the left side of the tab, click the section you want to edit.
  4. On the right side of the tab, click the edit button below the description's text box.

    The Long description dialog box appears, showing any existing text and providing you with a number of formatting and editing options.
  5. In the large text box, place your cursor where you want to add an image. This action is important if you already have text in the header.
  6. Click the image button.

    The Image Properties dialog box appears.

    Note: The Latin text in the Preview area appears by default. It simply gives you an idea as to how text will wrap around your inserted image, as shown below.

  7. In the URL text box, type the path to the image you want to add, based on its location in your resources repository.
    For complete details, see Manually Specifying a URL.
    Once you add your image and click anywhere on the Image Properties dialog box, the image should appear in the Preview area.

    If it does not appear, your URL is not correctly defined. Double-check it and make sure you specified it correctly.
  8. Click OK.
    The image appears in the large text box on the Long description dialog box.
  9. Click OK.
    You are returned to the Admin dialog box.
  10. Save your form, run it, and verify that the image appears in the section header in the Data Entry View.

Editing a Custom Image

You can edit a previously specified image in a section heading, if the image needs to be changed, or if the previously specified URL is no longer valid and needs to be updated.

  1. Access the section's Long description dialog box.
  2. In the large text box, click the image (or the placeholder that appears if the image can not longer be located by the existing URL).
    The image (or placeholder) is highlighted, as shown below.
  3. Click the image button.

    The Image Properties dialog box appears, and the currently defined URL is displayed in the URL text box.
  4. Change the URL, as needed, until the desired image is displayed.
  5. Click OK.
    You are returned to the Long description dialog box.
  6. Verify that the correct image now appears in the large text box.
  7. Click OK.
    You are returned to the Admin dialog box.
  8. Save your form, run it, and verify that the image appears in the section header in the Data Entry View.

Customizing the Long Description Width and Border

You can control the width and border options (including not using a border) of your section's long description from the Admin dialog box.

  1. From the Admin dialog box, click the eForm or Document Package tab.
  2. Locate the Section long description format setting (highlighted below).
  3. Click the setting's arrow button.
    The Section Long Description Format dialog box appears.
  4. Using the Width drop-down list, specify (in pixels) the width of the section long description's area in the Data Entry View. By default, the Auto option is selected, which allows LincDoc to automatically determine the ideal width.
  5. Using the Border drop-down list, specify the width of the section area's border (between 1 and 3 pixels). By default, no border is specified.
  6. Click the preview button.
    A dialog box appears, showing you how the long description will appear in the Data Entry View of your eForm or Document Package.
  7. Click close to return to the Section Long Description Format dialog box.
  8. If necessary, adjust your formatting and preview it again.
  9. Once you are satisfied with your formatting, click OK.
    You are returned to the Admin dialog box, and the format options are updated, based on your changes.
  10. Once you have completed editing your eForm or Document Package, click save at the top of the Admin dialog box.

22.5. Editing Interface Logos

You can specify custom images (logos) for the LincDoc background (desktop), the LincDoc toolbar, and the LincDoc login screen by uploading images to your resources repository and then specifying them via the system button.

Proceed to one of the following sections below for more information:

Customizing the Background (Desktop) Logo

You can use a custom logo for the LincDoc background logo, replacing the default LincDoc logo highlighted below.

 

Note: Only .png, .gif, and .jpg image files can be used in LincDoc.

  1. Verify that the image file you want to use has been added to your resources repository. For more information, see Adding Local Files to Your Directory Structure.

    Tip: You can access the resources repository's Browse dialog box using the Repositories dialog box.

  2. Close any open dialog boxes within LincDoc (such as the repository's Browse dialog box or the Admin dialog box).
  3. Click the system button on the LincDoc toolbar.
  4. Select configure client.
    The Configure dialog box appears.
  5. Click the select button adjacent to the desktop logo setting.

    The Select desktop logo dialog box appears, showing you the contents of the resources repository. In the following example, subfolders for both images and source documents were previously created.
  6. Locate the desired image file in your resource repository's directory structure, and click it to select it.
  7. At the bottom of the Select desktop logo dialog box, click the select button.
    You are returned to the Configure dialog box, and the selected file (and its path) is displayed adjacent to the select button.
  8. At the top of the Configure dialog box, click save.
  9. Click OK.
    The Configure dialog box is closed, and you are returned to the main LincDoc interface.
  10. Refresh your web browser.
    The new image is displayed in place of the default LincDoc logo.

Customizing the Toolbar Logo

You can use a custom logo for the LincDoc toolbar logo, replacing the default LincDoc logo highlighted below.

 

Although you can alter this logo, it is recommended that an image no larger than 84 pixels wide by 24 pixels high be used (so that it fits correctly within the confines of the toolbar and does not affect the other toolbar options).

Note: Only .png, .gif, and .jpg image files can be used in LincDoc.

  1. Verify that the image file you want to use has been added to your resources repository. For more information, see Adding Local Files to Your Directory Structure.

    Tip: You can access the resources repository's Browse dialog box using the Repositories dialog box.

  2. Close any open dialog boxes within LincDoc (such as the repository's Browse dialog box or the Admin dialog box).
  3. Click the system button on the LincDoc toolbar.
  4. Select configure client.
    The Configure dialog box appears.
  5. Click the select button adjacent to the toolbar logo setting.

    The Select toolbar logo dialog box appears, showing you the contents of the resources repository. In the following example, subfolders for both images and source documents were previously created.
  6. Locate the desired image file in your resource repository's directory structure, and click it to select it.
  7. At the bottom of the Select toolbar logo dialog box, click the select button.
    You are returned to the Configure dialog box, and the selected file (and its path) is displayed adjacent to the select button.
  8. At the top of the Configure dialog box, click save.
  9. Click OK.
    The Configure dialog box is closed, and you are returned to the main LincDoc interface.
  10. Refresh your web browser.
    The new image is displayed.

Customizing the Login Screen Logo

You can use a custom logo for the LincDoc login screen logo, replacing the default LincDoc logo highlighted below.

For more information about accessing the login screen and configuring how it is displayed, see Logging Into LincDoc.

  1. Verify that the image file you want to use has been added to your resources repository. For more information, see Adding Local Files to Your Directory Structure.

    Tip: You can access the resources repository's Browse dialog box using the Repositories dialog box.

  2. Close any open dialog boxes within LincDoc (such as the repository's Browse dialog box or the Admin dialog box).
  3. Click the system button on the LincDoc toolbar.
  4. Select configure client.
    The Configure dialog box appears.
  5. Click the select button adjacent to the logo setting in the Login page area.

    The Select login page logo dialog box appears, showing you the contents of the resources repository. In the following example, subfolders for both images and source documents were previously created.
  6. Locate the desired image file in your resource repository's directory structure, and click it to select it.
  7. At the bottom of the Select toolbar logo dialog box, click the select button.
    You are returned to the Configure dialog box, and the selected file (and its path) is displayed adjacent to the logo button.
  8. At the top of the Configure dialog box, click save.
  9. Click OK.
    The Configure dialog box is closed, and you are returned to the main LincDoc interface.
  10. Refresh your web browser.
  11. On the LincDoc toolbar, click the Logout button.
  12. Click Yes to confirm the action.
    The new image is displayed on the login screen.

Changing a Custom Logo

If you have specified a custom logo, and you want to specify a different custom logo, simply use the select button (as described in the sections above) and choose the new file from your repository.

It is not necessary to reset the logo and then select the new logo. Resetting, described below, should only be used when you want to return a logo to its default, LincDoc logo.

Removing Custom Logos

You can delete your custom logos, returning to the default LincDoc logos, using the reset buttons.

  1. Click the system button on the LincDoc toolbar.
  2. Select configure client.
    The Configure dialog box appears.
  3. Click the reset button the corresponds to the custom logo you want to remove.
    Note: Only settings that show a specific path and file are currently using a custom logo. In the example below, only the desktop and login logos currently use custom images (highlighted with arrows).

    When a reset button is clicked, the corresponding path and file are removed. In the example below, the login logo has been reset.
  4. At the top of the Configure dialog box, click save.
  5. Click OK.
    The Configure dialog box is closed, and you are returned to the main LincDoc interface. Your logo will be updated (returned to the default LincDoc logo) the next time you refresh your web browser or login to the application.

 

22.6. Creating and Customizing Context Sensitive Field Help

You can create custom help for individual fields in your eForm of Document Package. You can also customize the dialog box in which the help is displayed.

Proceed to one of the following sections below for more information:

About the Custom Online Help

Once defined, the help information is accessed from the Data Entry View via a small help button adjacent to the specific field (highlighted below).

When a help button is clicked, the defined help is displayed in a small, customizable dialog box.

Creating Context Sensitive Field Help

You can create custom help screens to allow a user to better understand the purpose or intent of a specific field in your eForm or Document Package. 

  1. From the Form Selection Drop-Down List, select the eForm or Document Package whose images you want to customize.
  2. Open the Admin dialog box.
  3. Click the Fields/Sections tab.
  4. On the right side of the tab, click the advanced check box.
  5. Scroll to the bottom of the listed field settings and locate the Field help setting.
  6. Click the arrow button that corresponds to the setting, and select edit from the list of options that is displayed.
    The Field help dialog box appears.
  7. Using the large text box and the various formatting options, specify explanatory (help) text for the field.
  8. When the help text is complete, click the preview button.
    A dialog box appears, showing you how the help text will appear when accessed from the Data Entry View of your eForm or Document Package.
  9. Click close to return to the Field help dialog box.
  10. If necessary, adjust the help text and preview it again.
  11. Once you are satisfied with the help text, click OK.
    You are returned to the Admin dialog box, and the HTML for your help text appears in the Field help text box.
  12. Once you have completed editing your eForm or Document Package, click save at the top of the Admin dialog box.
  13. (optional) Run your eForm or Document Package and verify that the field help appears correctly in the Data Entry View

Customizing the Context Sensitive Help Width and Border

You can control the width and border options (including not using a border) of every field help dialog box. These dialog boxes appear when field help buttons are clicked in the Data Entry View.

  1. From the Admin dialog box, click the eForm or Document Package tab.
  2. Locate the Field help format setting (highlighted below).
  3. Click the setting's arrow button.
    The Field Help Format dialog box appears.
  4. Using the Width drop-down list, specify (in pixels) the width of the field help dialog box. By default, the Auto option is selected, which allows LincDoc to automatically determine the ideal width.
  5. Using the Border drop-down list, specify the width of the field help dialog box's border (between 1 and 3 pixels). By default, no border is specified.
  6. Click the preview button.
    A dialog box appears, showing you how the field help dialog box will appear in the Data Entry View of your eForm or Document Package.
  7. Click close to return to the Field Help Format dialog box.
  8. If necessary, adjust your formatting and preview it again.
  9. Once you are satisfied with your formatting, click OK.
    You are returned to the Admin dialog box, and the format options are updated, based on your changes.
  10. Once you have completed editing your eForm or Document Package, click save at the top of the Admin dialog box.

23. Configuring System Settings

23.1. Configuring Your System

You can configure system-level settings using the configure system option available from the system button.

Important: Only users with the superuser permission can view the configure system option and access the corresponding settings.

When this option is selected, the Configure system dialog box appears.

 

The following settings are available from this dialog box:

  • System name. Allows you to define a simple identifier for your LincDoc application. This name appears on your browser's tab (shown below) as well as in other places throughout the interface (such as on the verification screen when you click the logout button and in email notifications when new users are added to the system).
  • Hostname. Specify the name of the computer that is running LincDoc. This setting is used to create the hostname element in hyperlinks that LincDoc generates, such as the "sign" or "edit" links in an email message. It typically uses a format similar to the following example: eforms.example.com.
  • From address. Specify the default origination address that will be used with emails generated by an email action.

    Tip: It is recommended that this address use the format following: do-not-reply@custom-host-name.com (where custom-host-name is your Hostname specified above).

  • Days to keep statistics. Specify the number of days that LincDoc should retain basic system event information. LincDoc tracks events such as the login time for a user, the logout time for a user, when a particular eForm or Document Package is launched, etc. After the defined number of days, any data that falls outside of the specified time frame is deleted.
  • Session timeout. Specify the number of minutes of inactivity after which a user is automatically logged out of LincDoc. Only inactive minutes are used when calculating whether or not the time limit has been reached.

    Tip: A value of 30 minutes (half an hour) is recommended.

  • Allowed iPad app versions. Allows you to specify which versions of LincDoc Mobile are allowed to connect to your LincDoc server. You can specify particular versions or a range of versions. You can also simply leave the setting blank, which automatically means that the latest version is required.
    The following examples show two ways to specify this setting:
    • A single version: 3.1.1.3
    • A range of versions: 3.2.6.0-3.2.8.9

    Tip: It is recommended that you leave this setting blank so that the latest version of LincDoc Mobile is required.

  • iPad app URL. This setting is no longer used by the application and should be left blank.
  • STMP configuration
    • Host. Specify the fully qualified hostname (or IP address) of your mail server.

      Important: Consult with your mail administrator to verify that a rule is added that allows LincDoc to relay mail through the specified host.

  • Login page. These settings allow you to change the labels that appear on the LincDoc login screen.
    • label. Specify the text label that will appear above the list of providers and the username/password text boxes.
    • logo. Click the select button to specify the logo that will appear adjacent to the login details.

      Note: The logo file must be present in your resources repository. For more information, see Adding Local Files to Your Directory Structure.


      Once you select a file in your resources repository and click the select button, the selected file (and its path) is displayed adjacent to the logo setting (as shown in the example at the top of this topic).
    • Auto-complete. If this check box is selected, LincDoc will inform your browser that it is acceptable to cache the specified username and password in the browser's password file. Once this information is cached, it will automatically be populated when the LincDoc login screen is accessed.

23.2. Configuring Your Client

You can configure client-specific settings using the configure client option available from the system button.

Initially, settings are inherited from the global, system settings. However, you can then override some of these settings at the client level, allowing for increased customization. In short, you can have different settings for each client in your system, if you have multiple clients available.

Note: If settings inherited via the system settings are left blank at the client level, the system (global) settings are automatically used. The settings that inherit values are specified in the list below.

For more information on clients and the corresponding client IDs, see About Client IDs.

The following settings are available from the Configure (client) dialog box:

  • description. Provide a brief text overview of the client. When switching client IDs, this text appears below the corresponding client ID in the list of available client IDs.
  • hostname. Specify the name of the computer that is running LincDoc. This setting is used to create the hostname element in hyperlinks that LincDoc generates, such as the "sign" or "edit" links in an email message. It typically uses a format similar to the following example: eforms.example.com.

    Note: If specified, this setting overrides the corresponding system setting.

  • from address. Specify the default origination address that will be used with emails generated by an email action.

    Tip: It is recommended that this address use the format following: do-not-reply@custom-host-name.com (where custom-host-name is your Hostname specified above).

    Note: If specified, this setting overrides the corresponding system setting.

  • desktop logo. Specify the logo that appears in the background on the main LincDoc screen. For complete details, see Customizing the Background (Desktop) Logo.
  • toolbar logo. Specify the logo that appears on the LincDoc toolbar. For complete details, see Customizing the Toolbar Logo.
  • email template. Specify a text file, containing HTML code, that will be used as an email template. For more information, including when this template is used by LincDoc, see Creating an Email Template.
  • time zone. Specify the time zone for all users in the client. This setting is used in some DANG functions which require time zone information (as well as datetime calculations).

    Tip: You can set a different time zone for a specific user in the client via that user's profile, which will override this client-wide setting.

  • guest user. If checked, the guest security role is made available. For more information, see Managing Security Roles.
  • batchSign. If desired, enable batch signing (completing multiple signature fields using a single signature). For complete details, see Using Batch Signing.
  • toolbar configuration. This setting is for very specific use cases. For more information on using it, contact LincDoc Technical Support.
  • Login page. These settings allow you to change the labels that appear on the LincDoc login screen.

    Note: If specified, these settings override the corresponding system settings.

    • label. Specify the text label that will appear above the list of providers and the username/password text boxes.

    • logo. Click the select button to specify the logo that will appear adjacent to the login details.

      Note: The logo file must be present in your resources repository. For more information, see Adding Local Files to Your Directory Structure.

      Once you select a file in your resources repository and click the select button, the selected file (and its path) is displayed adjacent to the logo setting (as shown in the example at the top of this topic).

  • Signing key. The settings in this area allow you to upload and configure a signature key file, which is necessary if you will be using any type of signatures in LincDoc eForms or Document Packages. For complete details. see Installing Your Signature Key.

23.3. Installing Your Signature Key

Before using any type of signatures in LincDoc eForms or Document Packages, you need to install a signing key file. Installing this file is only necessary before an eForm or Document Package containing an electronic signature is used for the first time.

Note: This installation is typically performed during the LincDoc installation process.

The procedure below assumes that you are using a LincWare-supplied JKS-type signing key (.ks) file.

Note: Once a signing key file is installed, there is currently no way to delete it. However, you can overwrite it with a different file, as necessary. 

  1. Verify that you have a signing key (.ks) file.
  2. From the system button, click the Configure System option.
    The Configure dialog box appears.
  3. In the Signing key area, at the bottom of the dialog box, upload the signing key (.ks) file.
    1. Click the upload button (highlighted below) adjacent to the keystore setting.

      The File Upload dialog box appears.
    2. Click the Browse button, and navigate to the location of the signing key (.ks) file.
    3. Click the file to select it, and click Open.
      You are returned to the File Upload dialog box, and the selected signing key file's name appears in the middle of the dialog box.
    4. Click Upload.
      You are returned to the Configure dialog box, and keystore present appears adjacent to the keystore setting.
  4. Verify that JKS is selected from the keystore type drop-down list. 

    Note: The PKCS12 type is not often used. It is for an Adobe-supplied signing key file. For more information, including details for the additional settings listed below, contact LincDoc Technical Support.

  5. Specify the following settings, which should have been supplied to you along with the signing key (.ks) file specified above:
    • keystore password
    • key alias
    • key password

    If you do not have the appropriate information for the settings listed above, contact LincDoc Technical Support.

  6. In the upper left corner of the Configure dialog box, click save.
  7. Verify that no error messages appear.
    A lack of error messages means that you can now use signatures in your eForms or Document Packages.

23.4. Viewing Signature Details (Signature Log)

You can view detailed signature information using the signature log option available from the system button. This option allows you to upload a signed document (PDF file).

Once uploaded, the Signature Info dialog box displays the document's signature details, including the name of the signer, the date of the signature, the signer's system information, an image of the signature, and related stamp details.

Note: Uploaded PDFs are not saved to your system's hard drive. Instead, they are loaded into your system's memory, and are automatically removed when the Signature Info dialog box is closed. The PDF is never written to disk, it is only in memory until the time the dialog is dismissed.

Proceed to one of the sections below for more information:

About Signatures and Stamps

The Signature Info dialog box displays information for both signatures and stamps. In order to better understand the displayed information, you need to understand the meaning of both of these terms:

  • signature. Refers to the actual signer's name and its graphical representation. Also represents information that applies generally to all fields in which the signature is used. This information can include the signer's name, IP address, the current date/time, and an image of the signature itself.
  • stamp. Represents the place on the document where the signature is applied, and includes information such as the document ID, field name, current date/time, and the document's pre-hash and post-hash codes. A signature's stamp acts as an electronic record that captures details essential to demonstrate the authenticity of a given signature. It is designed to capture the information/meaning/essence of someone (the term actually originates from historical use when actual stamps and inkpads or wax seals were used). A single stamp is always applied to one field on one PDF document.

    Important: The term stamp can also be used to describe the default, user stamp that can be assigned via the Preferences dialog box. Typically, this feature is known by its full name: signature stamp.

When a user signs a document, the signature may be applied to multiple fields across multiple documents. Therefore, it can be said that a single signature may be stamped multiple times on multiple documents, and each "signature" object can have one or more "stamp" objects associated with it.

About Signature Hash Codes

The hash codes associated with signatures are digital fingerprints of the document after the signature was applied. They act as a security feature, and can be used to determine if the document has been tampered with or altered. For example, if someone emailed you a PDF, and you know the hash algorithm that has been used, you could compute the PDF's fingerprint. This fingerprint could then be compared to the fingerprint of the signature stamp. If the fingerprints are not identical, the PDFs are not the same, even if they appear identical.

For more information, refer to the following website:

http://en.wikipedia.org/wiki/Cryptographic_hash_function

About Displayed Content

In general, the information displayed in the Signature Info dialog box is for viewing purposes only. The displayed information cannot be altered or edited in any way.

Note: If more than one signature exists in a document, all signatures are shown. The example at the beginning of this topic shows only a single signature.

This dialog box allows you to view the following information:

  • An image of the signature as it appears in the PDF (if available)
  • The Signer entry represents the name of the LincDoc user who signed the document (as specified by the Signer name field setting) and the date/time when the signature was applied.
  • The ID of the signature (a unique identifier generated for every signature so that it can be properly stored in a database).
  • The IP address of the system on which the signature was applied.
  • The LincDoc provider and user name (LincDoc login ID) of the logged in user at the time the signature was acquired.
  • Related stamp information including: 
    • The name of the eForm/Document Package to which signature was applied.
    • The name of the eForm/Document Package field that contains the signature.
    • The ID of the document (a unique identifier generated for the PDF document so that it can be properly stored in a database).
    • The Stamp ID (a unique identifier generated for the stamp so that it can be properly stored in a database).
    • The fingerprint, which is a hash of the signed PDF (described above). You can click the link to view the signed hash.

In the following example, two individuals (Mrs. Johnson and Mr. Bauer) needed to sign a medical insurance form at the doctor's office. After they both signed, the resulting details (one signature details section with two individual stamps) are displayed on the Signature Info dialog box.

Accessing the Signature Info Dialog Box

The Signature Info dialog box can be accessed from any of the following locations:

 If you are accessing the dialog box from the system button, you will need to specify a document (PDF file) to use (as described below).

Note: When using the other two methods listed above (via the Document Viewer and the Signed dialog box), the signed document has been pre-selected, so the Signature Info dialog box immediately appears.

  1. Verify that the document whose signature you want to view is accessible on your local computer. If necessary, you can download it from your repository.

    Important: The PDF file must always be uploaded and viewed using the same system that originally generated it, since the signature stamp data is actually stored in the LincDoc database, not in the PDF itself.

  2. From the system button, click the signature log option.
    The Upload PDF dialog box appears.
  3. Click upload.
    The Open dialog box appears.
  4. Navigate to the location of the document whose signature information you want to view, and click the file to select it.
  5. Click Open.
    The Signature Info dialog box appears, showing you the document's signature details.
  6. Review the signature information, as desired.
  7. When you are done reviewing the information, close the Signature Info dialog box.

23.5. Defining Offline Settings

These settings allow you to control the behavior of the mobile devices that connect to your LincDoc server.

For complete details, see Offline Settings (Server-side Mobile App Control).

23.6. Registering a User

The user registration feature allows for the easy creation of new LincDoc users. The feature generates a path (URL) to your LincDoc instance, which you then distribute to the potential new user (typically via an email message). The new user accesses LincDoc via the path, provides all of the necessary login information, and a new LincDoc account is dynamically created.

Note: This feature is similar to the Register a User action. The difference is that, unlike the action, this option allows you to make publishable paths (URLs) for distribution, and any recipient can open up the path to self register. LincDoc prompts the users for all of their registration details. For more information, see Action Details: Register a User.

Proceed to one of the following sections below for more information: 

Accessing the User Registration Feature

The feature is accessed by selecting the user registration option, available from the system button on the main LincDoc interface, as shown below.

 

When this option is selected, the User Registration dialog box appears. From this dialog box, you can add a new registration path, edit an existing registration path, delete an existing registration path, or view a path's associated link.

Registration paths differ based on a few characteristics, including, but not limited to the following: the provider, the group to which new users are assigned, and email restrictions. These characteristics are described in more detail in the remainder of this topic.

Editing an Existing Path 

If a path has already been defined, you can click the Edit button (highlighted below) to change its settings.

For more information on the available settings, see Adding a New Path below.

Adding a New Path 

You can add any number of new registration paths, as needed. There is no limit on the number of paths you can create.

  1. From the User Registration dialog box, click the new registration path button.

    The New user registration path dialog box appears.
  2. Determine how you want the path created using one of the following options:
    • To have LincDoc randomly create a path for you, verify that the Use random generated ID check box is selected.
    • To manually specify a path, clear (uncheck) the Use random generated ID check box, and specify the path in the Path ID text box. Paths may contains letters, numbers, underscores, and hyphens (dashes).

    Important: Anyone with an account who correctly enters the defined path can gain access to the account. You should take special care in providing the path ID.

  3. Click add.
    The User registration dialog box for the new path appears, and the path's identifier appears at the top of the dialog box (in the ID field).
  4. Specify the following information:
    • Description. A text string that can be used to better identify the path (instead of simply the ID). This string will appear on the User registration dialog box after you create the path.
    • Provider. The authentication provider that will be used to create any new accounts. For more information on providers, see Using Authentication Providers.
    • Add to group. The group into which new users will be added. Groups will most likely differ based on the provider you select. For more information on groups, see Managing Groups.
    • Use Email address as username. When selected, the new user will not have the option of providing a user name. Instead, the user's email address, as specified by the new user, will be used as the user name.
    • Allow duplicate email addresses. When selected, the system will allow access based on an email address that already exists in the LincDoc database. When this check box is cleared (unchecked), all new email address must be unique and no address can be reused.

      Important: This setting is for advanced use cases, and it should only be used in certain scenarios. It can also not be used in conjunction with the Use Email address as username setting (described above). Contact LincDoc Technical Support for additional assistance.

    • restrict to domain. When selected, email addresses must match the specified domain.
    • Existing user message. Specify a message that will appear if an existing user chooses to access LincDoc with their existing account, instead of creating a new account. A link is provided on the registration page, allowing an existing user to enter a username and password.
    • New user message. Specify a message that will appear after a new user enters the necessary credentials and creates an account.
    • Registration page text. Specify text that will appear on the page that is displayed immediately after the registration URL is clicked by the prospective new user.
  5. When you have fully defined the registration path information, click save and close the User registration dialog box.

Deleting an Existing Path

If a path has already been defined but is no longer needed, you can click the Delete button (highlighted below) to remove it.

Viewing a Path's Link 

You can view the link associated with a defined path by clicking the Link button (highlighted below).

The link appears in its own dialog box, allowing you to either click it directly or copy it.

This link can be copied and emailed to the prospective new user.

Using a Registration Path on the Login Screen

You can use the Help link URL text box, available from an authentication provider's dialog box, to specify a user registration path (URL), which can be easily accessed from the LincDoc login page.

This approach makes the self registration process less dependent on locating the correct email path (URL), since once it is defined via the authentication provider, it is always available during the login process and does not have to be redefined or redistributed for each user.

Important: For security purposed, if you use this method, be sure to confine the link to a specific email domain.

  1. Copy the appropriate user registration link.
    1. Access the link's path as described in Viewing a Path's Link above.
    2. Highlight the link in the Path dialog box.
    3. Press CTRL-C on your keyboard to copy the link to your system clipboard.
  2. Access either the login providers or client login providers option from the system button.
  3. Click the arrow button that corresponds to the provider whose help information you want to define.
  4. In the Help link label text box, add text similar to the following:
    Click here to self register
  5. In the Help link URL text box, paste the previously copied user registration path.
  6. Complete the remaining provider information as described in one of the provider topics (as listed in step 2 above).

23.7. Configuring Login Providers (All Client IDs)

You can access login providers for all client IDs using the login providers option available from the system button.

Important: Only users defined as superusers have access to this option. You can view authentication providers configured for your current client ID using the client login providers option, also available from the system button.

 

These login providers allow you to create different ways to set up users and groups. For more information, see Using Authentication Providers.

23.8. Configuring Client Login Providers

You can view all login providers (also known as authentication providers) defined in your current client ID using the client login providers option, available from the system button.

 

These login providers allow you to create different ways to set up users and groups.

Note: This option only displays login providers for your current client ID. If you have superuser access, you can view all login providers currently defined in your LincDoc installation, regardless of the client ID, using the login providers option.

For more information, see Using Authentication Providers.

24. LincDoc Mobile

24.1. About LincDoc Mobile

LincDoc Mobile allows you to emulate your existing version (On-Premise, Cloud, or Freeform) on an Apple iPad, allowing for easy portability and in-the-field information collection.

24.2. About Mobile Terminology

The terminology listed below is used throughout this chapter of the help, and it needs to be understood before effectively using the mobile topics.

Note: Some of these terms are mobile-specific, but some also apply to the standard LincDoc application.

  • form. A logical collection of fields, field labels, calculations, field types, etc. that, once defined, can be used to easily create numerous documents. Also known as a form definition. In LincDoc, forms also include inclusion logic, repository information, actions, and events.
  • form definition. See form above. 
  • document. The output of a form, based on the form definition. A single form can produce any number of documents. Documents can be edited, if necessary, prior to being signed. Once signed, the editing will be limited, based on the restrictions defined within the form.
  • completed document. A document that has been populated in its entirety, as specified by the form's creator. It is important to note that a document does not have to have all of its fields filled in to be considered complete. These types of documents can be edited.
  • incomplete document.  A document that has been partially populated, as specified by the form's creator. Additional information is needed before the document is considered complete. Typically, all required fields have not been populated.
  • signed document. A completed document that has had at least one signature applied to it, if a signature is required. With these types of documents, editing may be limited, based on the restrictions defined within the form.
  • downloaded document.  A document that has been retrieved from a LincDoc server for use in LincDoc Mobile (on an iPad). These types of documents can be edited and then "pushed" back to the LincDoc server, as long as changes have not already been made by another user.
  • standard application. Refers to the non-mobile version of LincDoc, which is accessed via a web browser on a desktop or laptop computer.
  • synchronization. The act of moving ("pushing") completed documents from LincDoc Mobile (an iPad) back to the LincDoc server. After a successful synchronization, the completed documents no longer exist on the iPad.
  • sync. Short for synchronization.
  • optimistic locking. A check that is performed, during synchronization, to make sure that the server version and the mobile version of a document match. This process prevents multiple users from editing and updating the same document and overriding each other's changes.
    Example: Two users (Tom and Mary) are making local changes to the same downloaded document. If Tom synchronizes his document first, Mary's changes will be rejected by the LincDoc server when she attempts to synchronize her document. She will have to download the document again (getting Tom's synchronized changes), and re-create her changes in the document.

24.3. About Using Forms on Multiple Platforms

If you are going to use a form with both the LincDoc Mobile (on an iPad) and on the standard, web-based application, the following considerations should be made first:

  • Forms created using Microsoft Word have limitations when used in the mobile app. When the source document is a Word file, the iPad user will be unable to view the generated document (created after the form is populated). PDFs do not have this limitation. A message will appear, describing this limitation, when a form based on a Word source file is submitted in the app (via the Finish button).
  • On the Admin dialog box's Actions tab, the following behavior should be noted:
    • Forms filled-in using the mobile app do not perform any of the actions under the Submit button.
    • Forms filled-in using the standard (web) application never trigger the On sync event.
  • Review the DANG functions that can be used with the mobile app (based on the Available with Mobile column in the tables).
  • Temporary variables in Advanced Calculations are not supported in the mobile app.
  • Review the condition operators that can be used with the mobile app (based on the Available with Mobile column in the tables).
  • The following actions are supported with the mobile app:
  • The following field-level events are supported with the mobile app:
    • before applying signature
    • on change
    • on load
  • Rules are supported in the mobile app (so long as any functions that might be used within the rules are subject to the aforementioned restrictions).
  • In the mobile app, codelists and lookups can be made "offline-able" (made available when not connected to a network, such as when a Wi-Fi connection is not present). Under these conditions::
    • For a codelist to be available offline, it must be of type Manual entry or JDBC.
    • For a lookup to be available offline, it must be of type JDBC.
  • In the mobile app you cannot perform generation calculations.
  • Form validation rules are not evaluated on the iPad.
  • Source documents that use landscape orientation automatically switch to portrait orientation after they are signed or synchronized. This is a known issue. In the short term, it is recommended that you use the portrait orientation for your source document.
  • Guests are not allowed to use the mobile app since accessing it requires all users to log in.
  • Calculated section captions do not work in the mobile app - the section name always appears in the caption.
  • Prompt to Select Some is not supported with LincDoc Mobile.
  • Edit Copy is not supported with LincDoc Mobile.
  • Checkbox columns is not supported with LincDoc Mobile.
  • CheckedBoxesLabels is not supported with LincDoc Mobile. This is the function that returns the labels of checked checkbox groups.
  • Using a PDF source document with check box fields that is saved as optimized may cause unexpected behavior in LincDoc Mobile's document viewer. It has been found that checked check box fields display as unchecked. So it is recommended to not save as optimized your PDF source document if your eForm/document package is used on LincDoc Mobile.

24.4. Verifying Form Availability

There are several points to consider when creating an eForm or Document Package that is intended use in LincDoc Mobile. These include:

About Signatures

Mobile signatures are used with iPad documents. For more information, see Using Mobile Signatures.

Allowing Mobile Form Access

You can control whether or not individual forms can be accessed using the LincDoc mobile app. This behavior is controlled using a setting on the standard (web-based) application.

  1. From the standard application, select the appropriate form using the Form Selection drop-down list.
  2. Open the Admin dialog box by clicking the edit option available from the admin button.
  3. On the eForm Document Package tab, verify that the Allow use with LincDoc Mobile? check box is selected.
  4. Click save.
    The form can now be accessed using the mobile app.
  5. Open the mobile app and update your forms list.

24.5. Using the Demo Version

Before you purchase licenses for LincDoc Mobile, you can access a demonstration (demo) version of the app, allowing you to use it and experience the app's many features.

The demo version does not require you to log in. When you open it, you are immediately presented with the initial screen, as shown below.

Proceed to one of the following sections below for more information:

Using the Demonstration Version of the Mobile App

When you first open the mobile app, the "initial screen" appears.

The demo version includes a sample form (Expense Report), which can be accessed by tapping the All Forms option on the left side of the app, if not already selected. The Expense Report form itself is listed on the right side of the app.

For more information on using the other options in the demo version, refer to the remaining topics in this chapter of the online help.

Understanding the Demo Version's Limitations

In most respects, the demo version of the app behaves in the same way as the standard version, but with the following notable exceptions:

  • While in demo mode, you are connected to a default, demonstration LincDoc server, so you will not be able to view any of your forms. Only the sample Expense Report is available until you connect to your LincDoc server with the standard (non-demo) version of the app.
  • Since you are not connected to your LincDoc server, the Server Search feature is empty and cannot be used.
  • You cannot sync (upload) documents to the demonstration LincDoc server.
  • Although all other options are accessible, they are limited in scope due to you only having one form with which to work and being connected to a demonstration LincDoc server. 

Getting More Information About the App (Licensing Details)

The Learn More screen, which allows you to send information to LincWare, is accessed by tapping the Learn More option in the top left portion of the demo version of the app.

The About LincWare screen appears, allowing you to submit additional information concerning how you plan on using LincDoc mobile.

Once you fill in the information and submit it to LincWare, a representative will contact you to provide more information about the LincDoc mobile app (including purchasing information).

Closing the Demo Version and Accessing the Standard Version

Once you are ready to use the standard version of the mobile app (you have received a license for the app), you can log into a licensed LincDoc server to automatically activate the standard version of the app.

This connection effectively ends the demonstation period, and removes the demo Expense Report form. From this point forward, every time you access the mobile app, the standard version of the app will be used and the forms on your LincDoc server will be accessible.

  1. On the left side of the app, tap Options.

    The app's options appear on the right side of the app.
     
  2. On the right side of the app, tap Login.

    The Login screen appears.
     
  3. Tap Log In.
    You are directed to the standard login screen, which allows you to connect to your LincDoc server and access the standard version of the app.
  4. Perform one of the following actions:
    • Log in to your LincDoc server and end the mobile app demo.

      Important: Once you connect to a licensed LincDoc server via the mobile app, the only way to re-access the demo version is to uninstall and reinstall the entire app.

    • Tap Return to Demo to continue using the demo version of the app.

24.6. Accessing the Standard (Non-Demo) App

When you first start the LincDoc mobile app, you will be asked to enter login credentials which are the same as those used when accessing the standard LincDoc application.

  1. Tap the LincDoc Mobile app to start it.
    Once the app starts, the LincDoc Log In screen appears.
  2. Enter the following information:
    • Server. The hostname of the system that is running LincDoc. For example: eforms.mycompany.com (notice there is no https:// prefix for this setting.)
      Note: In the standard app, this information appears in the web browser address text box.
    • Client ID. The appropriate client ID for the server specified.
  3. Tap Next.
    After a successful server and client ID verification, you are asked to provide additional login information.
     
  4. Enter the following information:
    • Provider. Tap the V icon in the right side of this text box, and select the appropriate authentication provider.
    • User ID. Type your user name.
    • Password. Type the password that corresponds to your user name.
  5. Tap Log In.
    A synchronization of all the form definitions is automatically performed with your LincDoc server (if possible), verifying that you will see the most up-to-date forms in your app.
    Tip: To reduce the synchronization time, verify that only the forms needed in the mobile app are enabled for use.
  6. Tap OK.
    The app's initial screen is displayed, giving you access to various features.
  7. Proceed to About the Initial Screen.

24.7. About the Initial Screen

The main app screen (also know as the "initial screen") is the default screen that appears when the app is first accessed, after your login information is provided and verified. This screen also provides access to all features available in the mobile app.

This screen is divided into the following two areas:

  • Left side. Displays the main app features, allowing you to quickly select them, as needed.
  • Right side. Displays forms and documents, including incomplete, complete, and signed documents, or documents downloaded from your LincDoc server. This side also displays the app's options (custom settings). The information displayed on this side is based on the current selection on the left side of the app.

The following information is available, based on the selected (tapped) option:

  • All Forms. Displays all of the forms to which you currently have access. These forms can be used to create new completed or signed documents. The forms themselves are displayed on the right side of the screen. You can then select an individual form to run it.
  • Favorite Forms. Displays the forms in the All Forms list that have been specifically marked as a "favorite". This feature allows you to easily access often-used forms. The forms themselves are displayed on the right side of the screen.
  • All Documents. Displays any incomplete, complete, signed, or downloaded documents, and allows you to access additional options for each individual document. The documents themselves are displayed on the right side of the screen.
  • Outbox. Displays the current number of documents that are waiting to be synced to the server LincDoc server. This list will be similar to the All Documents list, but no incomplete documents are included.
  • Update Forms. Updates the form definitions on your iPad if any changes have been made to the copies currently on the LincDoc server, either by other LincDoc Mobile users or by standard application users.
  • Sync Documents. Sends documents waiting in the Outbox to your LincDoc server.
  • Options. Displays additional settings available with the mobile app.

24.8. Viewing Individual Form Details

When you tap the All Forms option, the forms currently available on your iPad are displayed on the right side of the app.

When you select (tap) an individual form, the form's options and information appear.

 

The following features are displayed on the right side of the app:

  • Run. Allows you to open a new copy of the form and display the form's Data Entry View, which is used to populate the form and create a new document.
  • Saved Templates. Displays any templates based on this form. These versions of the form auto-populate specified form fields, allowing for faster completion in certain situations.
  • Generated Documents. Displays all partially complete (incomplete), completed, signed, and downloaded versions of this form (documents) currently available from the mobile app. These forms can also be accessed using the All Documents option.
    Note: In the example above, Incomplete and Signed sections are not present.
  • Favorite. Allows you to "favorite" the current form, adding it to the Favorite Forms list and making it quick and easy to select in the future.
  • Server Search. Allows you to search your LincDoc server for any existing or submitted (previously synced) documents based on this form, which can then be viewed or downloaded to your mobile device.
    Note: This feature is disabled when using the demo version of the app.

24.9. Running a Form (Data Entry View)

Once you access a form, you can run it (access it in the mobile version of the Data Entry View), which allows you to populate the form's fields and create a new document.

  1. Access the form as described in Viewing Individual Form Details.
  2. Tap Run.

    The form is opened in the mobile version of the Data Entry View.
  3. Fill in the form's fields, as necessary.
  4. If available, you can use fields represented by a paper clip icon to upload files to the form.
  5. (optional) Tap the gear icon to create or update a template.
  6. When the form is complete, tap Finish at the bottom of the form.

    Note: If the document is incomplete (if all required fields have not been populated), a message appears verifying that you want to exit and create a document.

    The newly created document appears, and additional options are displayed at the bottom of the app.

    Note: Forms created using Microsoft Word source documents cannot be displayed at this point in the process. However, the additional options, mentioned above, are still available.

  7. Proceed to Viewing an Individual, Completed Document for more information on these additional options.

24.10. Uploading Files to a Form

If your form contains upload buttons (as shown below), you can add newly taken pictures (taken with your iPad's camera), existing (previously taken) pictures, or imported files to your form.

Once this button is clicked, additional options appear.

Both the icons (in the middle of the app) and the option (on the bottom toolbar) can be tapped to add photos or files.

  • Camera (left icon). Allows you to take a picture with your iPad's camera and immediately add it to your form.
  • Photo Library (middle icon). Allows you to select an existing photo from your iPad photo gallery and add it to your form.
  • Files (right icon). Allows you to select and attach a file that has been previously imported into the LincDoc app.
     

After you select a photo or file, tap Attach to add it to your form.

Tip: If you attached the wrong photo or file, or want to replace the existing selection, simply tap the field again and select a different photo or file. The newly selected item overwrites the previously selected one.

24.11. Using the Favorites Feature

You can specify individual forms as "favorites", which allows you to easily access them, especially if your main list of forms (the All Forms option) is lengthy.

Proceed to one of the following sections below for more information:

Viewing and Selecting Favorited Forms

Forms that have been added to your favorites list can be easily accessed by tapping the Favorite Forms option on the left side of the app. The forms that have been designated as favorites are listed on the right side of the app.

The process for accessing these forms, and the corresponding form options that appear, is identical to the one used when using the All Forms option. The difference is that you have the ability to control the content of the Favorite Forms list, as described below.

Adding a Form to Your Favorites List

You can add a form to your list of favorite forms using the Favorite option.

  1. Access the form you want to add to your favorites list as described in Viewing Individual Form Details.
  2. On the right side of the app, switch the Favorite option to the "enabled" position, as shown below.
  3. Tap the Favorite Forms option on the left side of the app to verify that the form is now listed.

24.12. Using Templates

You can use templates to populate forms more accurately and rapidly while using LincDoc Mobile. Templates allow you to pre-fill specific form fields if you know that the field value will not change.

When filling out a form, you can then choose between a completely blank form or a template version of the form, which contains the pre-filled fields.

Note: Templates exist only in your local app and cannot be shared between iPads or uploaded to the LincDoc server.

Proceed to one of the following sections below for more information:

Creating a Template

You can create a template from a specific form using the gear icon at the bottom of the form itself.

  1. Open the form you want to use to create a template as described in Running a Form (Data Entry View).
  2. Fill in the form's fields, as desired. These specified field values will appear in the template once it is created.
  3. In the bottom right corner of the form, tap the gear icon.

    Additional options appear.

     
    Note: If you have already saved this form as a template, the Update Template option also appears.
  4. Tap the Create a New Template option.
    The Create New Template screen appears.
     
  5. Enter a name for the template, and tap OK.
  6. In the bottom left corner of the form, click Cancel.
    Note: Clicking Cancel allows you to avoid creating a new document. Instead, only the template is created. 
  7. Click Yes to confirm the cancellation.
    The new template is now available as described in Accessing a Template below.

Accessing a Template

Once a template has been created, it can be accessed via the corresponding form's main options screen.

  1. Select the appropriate form as described in Viewing Individual Form Details.
    The form's information is displayed.
     
  2. Tap the template from the Saved Templates list.

    The template's screen is loaded, allowing you to either run, delete, or rename the template.

Executing (Running) a Template

Once created, templates can be used in the same way as standard forms using the template's Run option.

  1. View the template's options as described in Accessing a Template above.
  2. Tap Run.
    The template is opened.
  3. Fill in the form's fields as you would with a standard form.

Updating a Template

You can adjust an existing template, altering the pre-defined fields, using the Update Template option.

  1. Access and run the template as described in Accessing a Template above.
  2. Adjust the template's fields, as desired.
  3. In the bottom right corner of the app, tap the gear icon.

    Additional options appear.
  4. Tap Update Template.
  5. Click OK to confirm the changes to the template.
  6. In the bottom left corner of the app, click Cancel.
    Note: Clicking Cancel allows you to avoid creating a new document. Instead, only the template is updated. 
  7. Click Yes to confirm the cancellation.
    Your template is updated and saved, and no additional document is created. 

Renaming a Template

You can rename a template after it is created and given an initial name. 

  1. View the template's options as described in Accessing a Template above.
  2. Tap the template's name, which appears below the Run and Delete options.

    A cursor appears adjacent to the template's name.
  3. Adjust the template's name, as necessary.
  4. In the upper right corner of the app, click Save.
    You are returned to the template's options screen, and the new template name appears, as shown below.

Deleting a Template

You can remove an existing template from your app.

  1. View the template's options as described in Accessing a Template above.
  2. Tap Delete.
  3. Tap Yes to confirm the action.
    The template is removed from your app. 

24.13. Signing an Individual Form/Document

When you are ready to sign a form, you can either sign it immediately after you fill in the form, or you can access it at a later time and then sign it (as a document).

Proceed to one of the following sections below for more information:

Signing a Form Immediately After Completion

You can sign a form as soon as it is completed, and all of the required fields are filled in.

  1. Perform one of the following actions:
    1. Complete the form as described in Running a Form (Data Entry View).
    2. Access the previously completed form as described in Signing a Document (Previously Completed Form) below.
  2. After you click Finish (newly completed form) or access it (document), the Signature button (pen icon) appears at the bottom of the form's preview screen.
  3. Tap the Signature button.
    The Who is signing? screen appears.

    This screen displays the name of the currently logged in user, and, when applicable, allows you (the current user) to select which signature you want to use (if the form has multiple signature fields).
  4. If you are going to sign a single signature field, or only one field is available, perform the following steps:
    1. If necessary, tap the appropriate signature entry (signature field label).
      The selected entry is highlighted. In the example above, only the single Signature entry is available for signing. 
    2. Tap the Sign option.
      The large signature box appears. 
  5. If you are going to sign all of the signature fields (known as bulk signing), tap the Sign All option.

    Note: The Who is signing? screen example shown above only displays a single signature field. If you are using bulk signing, additional signature fields would be listed.

    The large signature box appears.
  6. In the large signature text box, sign your name with your finger.
  7. Perform one of the following actions:
    • Tap Accept to use the signature as displayed.
    • Tap Clear to remove the added signature and re-create the signature. 
  8. Verify that the signature was been accepted.
    You are returned to the form's preview, and, for PDF-based forms, the signature is displayed. In the following example, all signature fields were signed with the same signature (via the Sign All option).

  9. Complete the process using the options at the bottom of the form's preview screen. 

Signing a Document (Previously Completed Form)

You can sign a document that was completed at an earlier time but was never signed. This sign option is accessed via the document's individual options.

  1. Access document details using one of the following options:
    • Access individual document details, which shows you completed documents that need to be signed.
    • Tap All Documents and locate the completed document you want to sign.
  2. Tap the document you want to sign. The document's options are displayed.
  3. Perform one of the following actions:
    • From the document's option screen, tap the Sign option.

      Important: If you do not see this option, you should verify that your clientID has batch signing enabled (via the batchSign option). For more information, contact your LincDoc administrator.

    • From the document's option screen, tap the View option.
  4. Sign the document as described above.

24.14. Signing Multiple Forms Simultaneously (Batch Signing)

When multiple documents have been completed, you can sign all of them using a single signature. This feature is known as "batch signing".

Proceed to one of the following sections below for more information:

"Batch Signing" Versus "Bulk Signing"

Batch signing, described in this topic, allows you to sign multiple documents using a single signature.

A similar feature, bulk signing, allows you to sign multiple signature fields in a single document using a single signature. For more information on using this feature, as part of the process of signing a single document, see Signing an Individual Form/Document.

Verifying Signer Name Field Conformity

Before you can use the batch signing feature, you need to verify that each form's Signer name field setting uses the same field. You need to verify that this setting is identical for each form that will be included in the batch signing.

This setting is located on the Admin dialog box's Fields/Sections tab.

Important: Completing this task requires access to the standard LincDoc application and the Admin dialog box for all affected forms. If you cannot complete this task, contact your LincDoc administrator for assistance.

For more information on this setting, and other signature field settings, see Configuring Signature Field Settings.

Verifying Batch Signing Availability

Before you can use the batch signing feature, you need to verify that it has been permitted via the standard application.

Important: Completing this task requires access to the standard LincDoc application and the Admin dialog box for all affected forms. If you cannot complete this task, contact your LincDoc administrator for assistance.

  1. From the standard application, select one of the forms that will be used with batch signing.
  2. From the Admin dialog box, click the Fields/Sections tab.
  3. On the left side of the tab, click the appropriate signature field.
  4. On the right side of the tab, click the Batch Signable check box.
     
  5. Save the form.
  6. For each signature field in each form that will use batch signing, repeat this process until all of the desired signature fields and forms are configured for batch signing.

For more information on this setting, and other signature field settings, see Configuring Signature Field Settings.

Signing Multiple Forms

Once you have verified each form's Signer name field setting and configured a form's signature field to allow for batch signing, you can use this feature in LincDoc Mobile.

  1. Tap All Documents to access all of your completed documents that may be signed.
  2. Select the documents you want to sign use one of the following methods:
    • If you want to sign all available documents, as determined automatically by the app, proceed to the next step.
    • If you want to manually select the documents you will sign, use the Select option.
      Tip: Use the Search text box to refine the list of displayed documents.
  3. Locate the Sign option at the bottom of the app. The number displayed next to the option shows you the number of documents that will be signed simultaneously. In the example below, two documents have been selected.
  4. Tap the Sign option.
    The Sign Documents screen appears, allowing you to verify the batch signing, and confirming the number of documents to be signed.


    Important: If the No Signatures error message appears, all the forms' signature fields, used to create the documents, have either not had their Signer name field setting verified or have not had batch signing enabled.
  5. Tap Yes.
    The Signer Selection (Who is signing?) screen appears, and you are prompted to specify who will sign the documents based on the "signer name" field associated with the signatures.
     
  6. Tap the correct signer.
    The Which signature(s)? screen appears.
     
  7. Select the signature field(s) that will use the signature via either of the following methods:
    • Tap individual signature fields. Selected signature fields display a check mark, as shown below.

      Note: You can also tap selected fields to un-select them (remove the check mark). 
    • Tap the Select All option at the bottom of the Which signature(s)? screen. 
  8. Tap Continue.

    The Review and sign screen appears, showing the documents that will be associated with the signature and a signature canvas itself.  
     
  9. Verify that the correct documents are listed.
  10. In the signature canvas, sign the documents using your finger.
     
  11. Click Apply Signature.

    A screen appears informing you that the signature was applied to the documents.
     
  12. Tap OK.
    The signed documents are updated and moved to the Signed Documents list.
     

24.15. Viewing All Documents in Your App

You can view a list of all documents that are incomplete, have been completed but not signed, have been signed, or have been downloaded from your LincDoc server using the All Documents option.

Once you tap this option, the completed documents are displayed on the right side of the app.

Tip: You can search for documents, if your document list is lengthy, using the Search Documents text box at the top of the right side of the app.

You can tap any listed form to access its individual options.

The following options are available from completed, signed, and downloaded documents:

  • View. Allows you to access a preview of your PDF-based documents.
    Note: This feature does not work for Word-based documents and is not available for incomplete documents.
  • Edit. Allows you to access an incomplete or completed document as a form (in Date Entry View) and make changes to the field values.
  • Synchronize. Allows you to upload the selected document to your LincDoc server.
    Note: This feature is not available for incomplete documents.
  • Sign. Allows you to sign a completed document.
    Note: This feature is not available for incomplete documents.
  • Delete. Removes the selected document from your mobile device. It does not delete the corresponding form from the All Forms list. It only deletes the selected document.
The following information is shown for completed and signed documents:
  • Form. The full name of the form used to create the document.
  • Status. The state of the current document. Typically it will be either incomplete, complete, signed, or downloaded.
  • Last Saved date and time. The time/date stamp when the document was last altered and saved.
  • Server Name (downloaded forms only). The name of the server from which the document was downloaded.
  • Download Date (downloaded forms only). The date when the document was downloaded.
  • Sync Status (downloaded forms only). The current status of the sync, including any conflicts with the LincDoc server.
  • Search Indexes. Displays the search indexes defined for the form used to create the document. These indexes are defined using the standard LincDoc application, and they can be used to create custom searches within your app.

24.16. Selecting Multiple Documents

The ability to select multiple documents can be useful, especially in the following situations:

  • Signing multiple documents with a single signature (batch signing)
  • Deleting multiple documents
  • Synchronizing multiple documents with your LincDoc server

Selecting multiple documents is similar to the standard Apple (iOS) control for selected multiple items in other apps.

  1. On the left side of the app, tap All Documents.
  2. (optional) Refine your All Documents list using the Search text box.
  3. In the upper right corner of the app, tap Select.

    Selection circles appear to the left of each document in the All Documents list (as highlighted below).
  4. Tap the appropriate circles to select the desired documents.
    The tapped circles change to check marks, showing you that the document is selected.


    Note: You can tap the All option at the bottom of the app to select all listed documents. 
  5. Perform one of the following actions on the selected documents:

24.17. Viewing an Individual, Completed Document

You can access a preview of your PDF-based documents using the View option. You can also use this option to access a completed document that needs to be signed.

Important: You cannot preview Word-based documents. If you click the View button for a Word document, a message appears, stating that you cannot preview your document on the mobile app.

  1. Access your app's documents using the All Documents option, and tap the document you want to view.
    The document's options appear.
  2. Tap the View option.

    A preview of the document appears.
  3. Perform any of the following actions, as desired:
    • Close the document preview and return to your list of documents.
    • Synchronize the document and close the document preview at the same time using the Sync and Close option. The synced document will no longer appear in your list of documents.
    • If the document is not already signed, you can sign the document using the corresponding button.

      The signature is immediately applied to the preview of the file (if the document is PDF-based).
    • View any files that were attached to the document using the "paperclip" icon.

      When this icon is clicked, a list of upload fields, as defined in the document, appears. You can tap any listed field to view the corresponding, attached file. In the following example, two upload fields are present in the document, with the second field currently selected.
    • Distribute the document via email using the "email" icon.

      Note: The accessibility of this icon is controlled by the Show e-mail option on document viewer offline setting. If this setting is not activated, the icon is grayed out and cannot be tapped.

24.18. Editing an Existing Document

You can access a previously created document and alter its contents using the Edit option.

Important: Signed documents typically cannot be edited and most of the document's fields were probably locked when the signature was applied. This behavior is specified in the corresponding form's definition in the standard LincDoc application.

Finishing Incomplete Documents

You can complete partially filled-in documents using the Edit option.

  1. Access the list of Incomplete Documents using the All Documents option.
  2. Tap a document to access the document's options. Notice that only the Edit and Delete options are available.
  3. Tap Edit.
  4. Edit the form's fields and submit the updated document as described in Running a Form (Data Entry View)

Altering Completed or Downloaded Documents

You can update previously completed, un-signed documents or downloaded forms using the Edit option.

  1. Access the list of Completed Documents or the list of Downloaded Documents using the All Documents option.
  2. Tap a document to access the document's options. 
  3. Tap Edit.
  4. Edit the form's fields and submit the updated document as described in Running a Form (Data Entry View)

24.19. Updating Form Definitions

You can update the form definitions and related information on your iPad, pulling down updates from the LincDoc server, using the Update Forms option.

About Updated Information

The following information is updated when this feature is used:

  • New forms. Any newly created forms are added to app. These forms are added to your All Forms list.
  • Changed forms. If a form has been altered (for example, with new or updated source documents, fields, calculations, actions, etc.) it is updated in the app.
  • Offline codelists and lookups. Offline codelists and lookups allow you to reuse existing data when not connected to a server (when "in the field"). They retrieve all available data from a server at once, which allows them to then use a filter that can be evaluated by an offline device (such as an iPad). Any item that uses a DANG condition may be used offline, as all of the data may be retrieved by using a "always" condition, and offline devices can evaluate the DANG expression.

Retrieving Updates

Using this feature allows you to verify that you have access to the most up-to-date versions of forms and related information that is shared among numerous iPads and the standard LincDoc application.

  1. Verify that only needed forms are set up for use with the mobile app. Doing so with reduce your overall update time.
  2. On the left side of the app, tap Update Forms.

    The Update forms from the server? screen appears.
  3. Tap Yes.
    The forms and related information on your iPad are updated.

24.20. Syncing Documents

Completed documents must be saved back to the LincDoc server at some point, and at that time the locally completed documents are removed from the iPad. This process is known as "synchronization".

About Viewing Documents for Synchronization

You can view the documents that need to be synchronized using either of the following options on the left side of the app:

  • Click Outbox to only view documents that can be synced. This option is used throughout the procedures below.
  • Click All Documents, which provides access to a Synchronize option (at the bottom of the right side of the app). The list itself also contains incomplete documents, which will not be synchronized.

Quickly Synchronizing All Available Documents

If you simply want to synchronize all available documents, without first reviewing the list of documents that will be uploaded to your LincDoc server, use the Sync Documents option.

Note: If you want to review the list of documents that will be synced, before uploading them to your LincDoc server, proceed to the next section below.

  1. On the left side of the app, tap Sync Documents.

    The Synchronize Documents screen appears.
  2. Tap Yes to verify the action.
    All documents that can be synced, as automatically determined by the app, are uploaded to your LincDoc server.
  3. When the synchronization is complete, tap OK.

    Although the synced documents are no longer available from your app, they can be retrieved from the LincDoc server, if needed.

Reviewing and Synchronizing All Available Documents

You can update all completed, signed, and downloaded documents, and send these updated versions from your iPad to the LincDoc server, using the Synchronize All option. When using this option, a list of the documents that will be synced is displayed.

Important: This option automatically synchronizes all available documents in the overall list of documents.

  1. On the left side of the app, examine the Outbox option. Notice that the number of documents the can be synced is listed directly on the option.
  2. Tap the Outbox option.
    The documents that are ready to be synchronized are listed on the right side of the app. 
  3. On the right side of the app, tap Synchronize All at the bottom of the screen.

    The Synchronize Documents screen appears.
  4. Tap Yes.
    The documents are synced, and the progress is shown.
  5. When the synchronization is complete, tap OK.

    You are returned to your list of documents, and the synced documents are no longer listed. However, they can be retrieved from the LincDoc server, if needed.

Synchronizing a Single Document

You can synchronize a single document by accessing the document's options and using the Synchronize option. 

  1. Access a desired completed, signed, or downloaded document via the Outbox option.
    The document's options appear.
     
  2. Tap Synchronize.

    The Sync Document screen appears.
  3. Click Yes to verify the synchronization.
    Your document is updated on your LincDoc server. A message appears when the synchronization is complete.
  4. Tap OK.
    You are returned to your list of documents, and the synced document is no longer listed. However, it can be retrieved from the LincDoc server, if needed.

Synchronizing Selected Documents

You can specify a subset of the documents in your app for synchronization. This feature allows you to synchronize more than one document without having to synchronize all documents.

  1. Access the list of documents via the Outbox option.
  2. Select the documents you want to synchronize.
     
  3. Tap Synchronize at the bottom of the list.

    The Synchronize Documents screen appears.
  4. Click Yes to verify the action.
    The selected documents are updated on your LincDoc server. A message appears when the synchronization is complete.
  5. Tap OK.
    You are returned to your list of documents, and the synced documents are no longer listedHowever, they can be retrieved from the LincDoc server, if needed.

24.21. Searching for Documents on Your LincDoc Server

You can search for previously created documents on your LincDoc server. When found, these documents can be downloaded to your mobile device and manipulated using the LincDoc mobile app.

Important: Search filters are defined on the LincDoc server via the standard application. They can only be accessed and used via the iPad app. They cannot be altered unless you are using the standard application.

Proceed to one of the following sections below for more information:

About the Default Search

Each form automatically includes a default search feature, which allows you to search for documents created by the user currently authentication to the app and during a specified time frame.

You can access this search as described below. In addition, you can add additional searches using the standard application.

Accessing and Using the Search Feature

The search feature is accessed at the form level. Each form can have different searches defined for it.

  1. Access the form that was used to create the document you want to retrieve from your LincDoc server.
  2. Tap the Server Search option.

    The server-created searches appear on the right side of the app.
  3. Tap the desired search.
    The search's available parameters are displayed.
  4. Configure the desired search parameters.
    • Tap the displayed parameters to select the desired options.
    • Remove search parameters using the - button.
    • Add more search parameters to this particular search using the + button.

      Important: You can only add default parameters or those specified for the form (via the Search tab on the Admin dialog box in the standard application).

      Note: Any parameters added using this method are only available while the Search screen is open. Once you exit the search, only the search's parameters, as defined on your LincDoc server, are saved. 

  5. Tap Search in the upper right corner of the app.

    If the search is successful, results are displayed.

    Note: If a document has already been downloaded to your mobile device, the word "Downloaded" appears in place of the document's date/time stamp.

  6. Perform one of the following actions (each of which is described in individual sections below):

Downloading a Single Returned Document

Once located via a search, a document can be downloaded and manipulated with your mobile app.

  1. Locate the desired document using the search feature.
  2. In the list of returned documents, tap the desired document.
    Additional options appear.
  3. Tap the Download option.
    The document is downloaded, and additional options appear.
  4. Perform any of the following actions:

Downloading Multiple Documents

You can select more than one document from your search results and download them simultaneously.

  1. Locate the desired documents using the search feature.
  2. Using the Select option, choose the documents you want to download.
  3. Tap Download at the bottom of the screen.

    The selected documents are downloaded to your mobile device. 

Viewing the Server Version of a Document

You can view a copy of the completed document, as it appears on the server, without downloading it to you iPad using the View Server Copy option.

Important: You cannot view Word-based documents. Only PDF-based documents can use this option.

  1. Locate the desired document using the search feature.
  2. In the list of returned documents, tap the desired document.
  3. Tap the View Server Copy option.

    The PDF version of the document is displayed.
  4. Once you finish reviewing the document, tap Done to close the document and return to the document's search details screen.

24.22. Deleting Forms and Documents

You can remove documents from your iPad app. The deleted documents are still available from your LincDoc server.

Note: You cannot remove form definitions, only documents created from a filled in form (definition).

Proceed to one of the following sections below for more information:

Deleting a Single Document

You can delete a particular incomplete, completed, signed, or downloaded document from your mobile device.

  1. Access the list of documents via the All Documents option.
  2. Locate the documents you want to delete using one of the following methods:
    • Manually from the All Documents list.
    • Via the Search Documents text box at the top of the All Documents list.
  3. Tap the document to select it. Once selected, the document's options are displayed.
  4. On the right side of the app, tap Delete.

    The Delete Document screen appears.
  5. Tap Yes.
    The selected document is deleted from your iPad.

Deleting Selected Forms

You can delete multiple incomplete, completed, signed, or downloaded documents from your mobile device.

  1. Access the list of documents via the All Documents option.
  2. Locate the documents you want to delete using one of the following methods:
    • Manually from the All Documents list.
    • Via the Search Documents text box at the top of the All Documents list.
  3. Use the Select option to choose multiple documents.
  4. Tap Delete at the bottom of the right side of the app. Notice that the option itself displays the number of selected documents.

    The Delete Select Documents screen appears.
  5. Click Yes to verify the action.
    The selected documents are removed from your iPad. 

Deleting All Documents

You can easily delete all of the incomplete, completed, signed, or downloaded documents from your mobile device.

  1. Access the list of documents via the All Documents option.
  2. In the upper right corner of the app, tap the Select option.

    Selection options appear, allowing you to choose multiple documents.
  3. At the bottom of the app, tap the All option.

    All of the listed documents are selected.
  4. Tap Delete at the bottom of the list. Notice that the option itself displays the number of selected files.

    The Delete Select Documents screen appears.
  5. Click Yes to verify the action.
    All of the listed documents are removed from your iPad.

24.23. Preventing Multiple, Simultaneous Document Changes

When synchronizing documents between your iPad and your LincDoc server, a check is performed, to verify that the versions match. This step prevents multiple users from editing and updating the same document and overriding each other's changes.

Note: This verification process is sometimes referred to as optimistic locking.

Proceed to one of the following topics for more information:

About Feature Limitations

This feature guarantees that the version on the LincDoc server is always up-to-date, and that changes uploaded from an iPad cannot overwrite changes made (at the same time) to the same document either from other mobile devices or via the standard (web-based) LincDoc application.

However, this feature does not prevent changes from being made on a server while working with a document on a mobile device. When you download a document to your iPad, you take the risk of changes being made to the same document on the LincDoc server by another user. If this other version of the document is uploaded to the LincDoc server before your personal version, you will not be able to upload your version. In other words, the server version of the document is not locked after you download it, so other users can make changes to and upload the same document, which will render your changes non-syncable.

Important: The main purpose of the optimistic locking feature is to prevent your LincDoc server from containing conflicting data. It is a server-side feature, not a mobile app-side feature.

If a downloaded document has been updated on your LincDoc server, a message will appear adjacent to the document when viewed via the All Documents list, as shown below.

Documents displaying this message can no longer by synced. Instead, you should download the updated version from the LincDoc server, and then make updates using your mobile device. For more information, see Resolving Synchronization Errors below.

About Synchronization Error Messages

The following example shows the error message that will appear if the version of the document on the LincDoc server is newer than the version being synchronized from your iPad.

After you tap OK to close the error message, the form's information is displayed, and a Conflicts with Server message appears in the Sync Status field.

This message also appears if the document appears in a document list.

About Documents Updated on the LincDoc Server

If you access a downloaded document that has been updated on your LincDoc server, different options appear than with a standard document.

The following options allow you to either view the different versions of the document or resolve the synchronization error:

  • View Local Copy. Open a preview of the document as it appears on your mobile device.
    Important: This feature is only available with PDF-based documents.
  • View Server Copy. Open a preview of the document as it appears on your LincDoc server.
    Important: This feature is only available with PDF-based documents.
  • Download From Server. Copy the version of the document on your LincDoc server to your mobile device.
  • Delete Local Copy. Remove your local (out-of-date) document from your mobile device.

For more information on the last two options listed above, proceed to the next section below.

Resolving Synchronization Errors

If a sync error occurs, as described above, you can perform one of the following actions to resolve the issue. Remember, resolving the issue means that your local copy of the document, and all changes that you have made, will be lost and replaced with the updated copy from your LincDoc server.

Proceed to one of the following sections below for more details:

Downloading the Server Version of the Document

You can replace the local version of the document with the version on your LincDoc server. Once replaced, the new version can again be edited, if desired.

  1. Access the document's options as described in About Documents Updated on the LincDoc Server above.
  2. Tap the Download From Server option.
  3. Tap Yes to verify the action.
    The document's options are updated to show the standard set of options, and the Sync Status entry is no longer present (instead of displaying a server conflict or updated message).

    In addition, the server version now appears in your list of documents (All Documents), and the Conflicts with Server message is no longer present.
  4. (optional) Open the document and re-create your changes.
  5. Synchronize the document as soon as it is completed.

Deleting the Local Copy

If desired, you can simply delete the local copy, and then download the document again at a later time.

  1. Access the document's options as described in About Documents Updated on the LincDoc Server above.
  2. Tap the Delete Local Copy option.
  3. Tap Yes to verify the action.
    The local copy is removed from your iPad, and no updated version from your LincDoc server is placed on your iPad. The document is simply no longer present in your All Documents list, as highlighted below.
  4. (optional) Download the document again.
  5. Synchronize the document as soon as it is completed.

24.24. Importing Files to the LincDoc Mobile App

You can import .PDF and Microsoft Word files (both .docx and .doc file types) into the LincDoc Mobile app from other iPad apps (for example: your email app, the Safari web browser, a file sharing app, etc.).

The exact process for importing a file varies based on the app from which the file is coming.

  • Access the app's export option and selecting Open in LincDoc. An example of this option is shown below. Your app's option may vary slightly.
  • Tapping and holding the file name and choosing Open in LincDoc.

Once imported, a message appears in the LincDoc app.

These files can then be used with a form's upload field via the Files options.

Important: Imported files are only available from the app for a specified period of time, after which they are automatically deleted from the app. This time period is set using the Delete imported files server-side option.

24.25. Using the Mobile Options

The Options feature gives you access to user and app information, as well as basic app settings.

Proceed to one of the sections below for more information:

Accessing the Feature and Viewing Basic Information

The basic app information is accessed by tapping Options on the left side of the mobile application.

  1. On the left side of the app, tap Options.

    Basic user and app information is displayed on the right side of the screen.
  2. Review the following information, as desired:
    • User Info. This area displays basic user information.
      • User ID. Your user name, as used to log into the app. 
      • Server. The URL of the LincDoc server to which you are currently connected.
      • Client ID. The client id you specified when logging into the app. 
      • More. Tapping this option displays additional user settings specified on the LincDoc server. For more information, see Viewing Additional User Information below.
    • App info. This area displays basic information about the app itself.
      • Version. The version of the app currently installed on your iPad.
      • Build. The build number on the corresponding LincDoc server.
    • Other Options. This area displays additional app options.

Viewing Additional User Information

You can view complete user information, including offline settings set on the LincDoc server, by tapping the the More option in the User Info area.

 

Additional options appear for you app. You'll need to swipe up to see some of the available options.

Using Additional Options

The following additional options are available, which allow you to control the appearance of your app:

  • Display Background. Allows you to specify whether or not the app's background image is displayed. Background images can be added via the offline settings on the LincDoc server.

24.26. Closing the Mobile App

You can exit the app simply by clicking your iPad's Home button.

Note: An automatic logout will occur after a certain period of time, based on your LincDoc server settings.

However, it is recommended that you log out of the app first.

  1. On the left side of the app, tap Options.
  2. On the right side of the app, tap Logout.

    The initial LincDoc Log In screen appears. The app is now secure.
  3. Close the app using your iPad's Home button.

24.27. Offline Settings (Server-side Mobile App Control)

A number of options are available for controlling the behavior of your mobile devices. These are collectively known as offline settings.

These settings are accessed using the offline settings options available from the system button on the main LincDoc toolbar.

The Offline Settings dialog box allows you to edit the individual settings.

Important: These settings are client ID-specific.

The following settings are available:

  • Enable auto-loginWhen enabled, this feature allows users to bypass the standard user authentication once they initially access the app. The user's credentials are stored and used for subsequent server access.
  • Force user re-authentication. When enabled, you can specify how long, in seconds, a user can use the app before being asked to re-supply their login credentials. 
  • Warn user before inactivity timeout. When enabled, you can specify how long, in seconds, a user will be warned before being automatically logged out of the app when it is no longer in use. This setting allows you to verify that the app is not always left in an open, non-secure state when not in use.
  • Force user re-authentication after app focus lostIf selected, the user is prompted to re-authenticate after leaving the app, but not closing it, and then returning to the app, if the specified number of seconds has elapsed since leaving the app. This switching process is known as "losing focus".
  • Show e-mail option on document viewer. If selected, users will not be able to access the email option when viewing a form in the app.
  • Allow upload of gallery images. For forms with file upload fields, this setting determines whether the iPad app users can select to browse and attach images from the iPad's local image gallery.
  • Delete imported files. When files are imported into the LincDoc app from other iPad apps, you can use this setting to specify how long, in hours, these files are available before they are automatically removed from the LincDoc app.
  • Convert combo lists to radio buttonsIf selected, combo lists will not be automatically converted to individual check boxes on the iPad.
  • Background image. These buttons allow you to customize the image that appears in the background of the app.
    • select. Specify and upload a background image to use with the app.
    • reset. Returns the background image to its original, default setting.
  • Force iPad to update forms from server. Allows you to force any connected iPads to immediately perform a synchronization operation.

25. Frequently Asked Questions (FAQs)

25.1. Administrative FAQs

This topic contains frequently asked questions (FAQs) related to completing administrative tasks in LincDoc.

Note: If you have any suggestions for additional FAQ content, contact LincDoc Technical Support.

The following issues are described below:

How can I get my CSV files to exclude upload fields data?

On the Admin dialog box, on the Advanced Options tab, locate the Document.xml.xslt.csv setting. With this setting, an administrator can manipulate the xslt to change the formatting of fields for a CSV file. The administrator will need to clear (uncheck) the Use Default check box, and copy/paste the code below into the corresponding value text box:

<stylesheet version="1.0"
xmlns="http://www.w3.org/1999/XSL/Transform"
xmlns:java="http://xml.apache.org/xalan/java"
exclude-result-prefixes="java">
  <output method="text" />
  <template match="/">
    <apply-templates select="document" />
  </template>
  <template match="document">
    <value-of select="@doc-id" />
    <text>,</text>
    <value-of select="@doc-pkg-id" />
    <text>,</text>
    <call-template name="convert_datetime">
      <with-param name="text" select="@created" />
    </call-template>
    <text>,</text>
    <value-of select="@created-by" />
    <text>,</text>
    <call-template name="convert_datetime">
      <with-param name="text" select="@modified" />
    </call-template>
    <text>,</text>
    <value-of select="@modified-by" />
    <text>,</text>
    <apply-templates select="data" />
  </template>
  <template match="data">
    <for-each select="field|group/row/field[../@index='0']">
      <if test="position()!=1">
        <text>,</text>
      </if>
      <if test="not(@type='namedbytes')">
        <apply-templates select="." />
      </if>     
    </for-each>
  </template>
  <template match="data/field">
    <call-template name="quote-for-csv">
      <with-param name="content" select="." />
    </call-template>
  </template>
  <template match="data/field[@type='time']">
    <call-template name="convert_time">
      <with-param name="text" select="text()" />
    </call-template>
  </template>
  <template match="data/field[@type='date']">
    <call-template name="convert_date">
      <with-param name="text" select="text()" />
    </call-template>
  </template>
  <template match="data/group/row/field">
    <variable name="fieldname" select="@name" />
    <variable name="mvvalue">
      <for-each select="../../row/field[@name=$fieldname]">
        <if test="position()!=1">
          <text>,</text>
        </if>
        <call-template name="quote-for-csv">
          <with-param name="content" select="." />
        </call-template>
      </for-each>
    </variable>
    <call-template name="quote-for-csv">
      <with-param name="content" select="$mvvalue" />
    </call-template>
  </template>
  <template name="quote-for-csv">
    <param name="content" />
    <text>"</text>
    <call-template name="string-replace-all">
      <with-param name="text" select="$content" />
      <with-param name="replace" select="'&quot;'" />
      <with-param name="by" select="'&quot;&quot;'" />
    </call-template>
    <text>"</text>
  </template>
  <template name="string-replace-all">
    <param name="text" />
    <param name="replace" />
    <param name="by" />
    <choose>
      <when test="contains($text, $replace)">
        <value-of select="substring-before($text,$replace)" />
        <value-of select="$by" />
        <call-template name="string-replace-all">
          <with-param name="text"
          select="substring-after($text,$replace)" />
          <with-param name="replace" select="$replace" />
          <with-param name="by" select="$by" />
        </call-template>
      </when>
      <otherwise>
        <value-of select="$text" />
      </otherwise>
    </choose>
  </template>
  <template match="document" mode="header">
    <text>doc-id</text>
    <text>,</text>
    <text>doc-pkg-id</text>
    <text>,</text>
    <text>created</text>
    <text>,</text>
    <text>created by</text>
    <text>,</text>
    <text>modified</text>
    <text>,</text>
    <text>modified by</text>
    <text>,</text>
    <apply-templates select="data" mode="header" />
    <text>
    </text>
  </template>
  <template match="data" mode="header">
    <for-each select="field|group/row/field[../@index='0']">
      <if test="position()!=1">
        <text>,</text>
      </if>
      <apply-templates select="." mode="header" />
    </for-each>
  </template>
  <template match="data/field" mode="header">
    <value-of select="@name" />
  </template>
  <template match="data/group/row/field" mode="header">
    <value-of select="@name" />
  </template>
  <variable name="df_iso8601_time"
  select="java:java.text.SimpleDateFormat.new('HH:mm:ss')" />
  <variable name="df_time"
  select="java:java.text.SimpleDateFormat.new('h:mm a')" />
  <variable name="df_iso8601_date"
  select="java:java.text.SimpleDateFormat.new('yyyy-MM-dd')" />
  <variable name="df_date"
  select="java:java.text.SimpleDateFormat.new('MM/dd/yyyy')" />
  <variable name="iso8601_datetime">
    <text>yyyy-MM-dd'T'HH:mm:ss.SSS'Z'</text>
  </variable>
  <variable name="df_iso8601_datetime"
  select="java:java.text.SimpleDateFormat.new($iso8601_datetime)" />
  <variable name="df_datetime"
  select="java:java.text.SimpleDateFormat.new('MM/dd/yyyy h:mm a')" />
  <template name="convert_date">
    <param name="text" />
    <if test="$text != ''">
      <variable name="date"
      select="java:parse($df_iso8601_date,$text)" />
      <value-of select="java:format($df_date,$date)" />
    </if>
  </template>
  <template name="convert_time">
    <param name="text" />
    <if test="$text != ''">
      <variable name="time"
      select="java:parse($df_iso8601_time,$text)" />
      <value-of select="java:format($df_time,$time)" />
    </if>
  </template>
  <template name="convert_datetime">
    <param name="text" />
    <if test="$text != ''">
      <variable name="datetime"
      select="java:parse($df_iso8601_datetime,$text)" />
      <value-of select="java:format($df_datetime,$datetime)" />
    </if>
  </template>
</stylesheet>

25.2. Signature FAQs

This topic contains frequently asked questions (FAQs) related to signatures in LincDoc and LincDoc Mobile.

Note: If you have any suggestions for additional FAQ content, contact LincDoc Technical Support.

The following issues are described below:

What does it mean to "flatten" a document?

Flattening a document disables the ability to update the document after it has been generated. Flattening can be implemented via any of the following methods:

  • The flatten generated PDFs? check box is selected on the Admin dialog box's eForm/Document Package tab.
  • A Word document is converted to a PDF file using the Output format drop-down list on the Admin dialog box's eForm/Document Package tab.
  • The flatten signatures action is used.
  • The signature field's Signature mode attribute is set to Image.

In addition, individual fields have an advanced attribute called Exempt from flattening, which can also be used to control flattening on a field-by-field basis. By default, this attribute is set to Never for signature fields, and the field is always flattened.

What does "locking a field" mean?

When using signatures, you can lock a field, which removes the ability to edit a field after a particular signature is applied. A signature field's Fields to lock attribute controls this behavior. When used, this attribute sets the selected fields to a read-only state when the form is viewed following submission.

Note: If a locked field contains a calculation, the calculation needs to have additional rules in place to disable it. Otherwise, the field can still be manipulated by the calculation (since it is only read-only).

How do I ensure that fields are updated when tied to signature events?

At times, a workflow will require a field to be updated when a signature-related event occurs (such as apply before signing, after signing, before declining, and after declining). To ensure that these updates occur as expected, you also need to perform the following steps:

  • Verify that the affected field's Exempt from flattening attribute is set to Never.
  • If you are using a "signature acceptance" event, the signature field that is controlling the related update must enable the field (the field must be selected) in the Fields to update when signing attribute.
  • If you are using a "signature decline" event, the signature field that is controlling the related update must enable the field (the field must be selected) in the Fields to update when declining attribute.

How do save actions work?

A form may be required to save at certain points during the data entry process. At these points, a save action event can occur on a specified field or at the form level (via buttons or events).

Important: You must have a repository configured to save the related data.

By default, a save action occurs when a user submits a form, signs a form, or declines a signature. In addition, it is a common practice to add a save button to the form (via the Actions tab). This button gives your users the option of saving their progress and returning to the form at a later time. Typically, a save button is accompanied by an email action to the current user, providing additional confirmation that the save took place as expected.

What is the purpose of the Signer name field attribute?

Signatures use the Signer name field attribute to determine who should sign the form when more than one signature is required. If the Signer name field attribute is assigned to a field that is blank, the signature will not be available for signing when a document is generated.

Scenario: I created a form with a multi-stage signature workflow where other users fill out the form, submit it, and sign it. But when other users (or administrators) received the document via email (or retrieved the document using a search), why were their updated fields not displayed in the document?

This scenario usually means the form has been flattened, and the newly generated document does not reflect any field changes that occurred after the flattening.

You should examine the following items to resolve this problem:

  • Verify that the flatten generated PDFs? check box is not selected (not checked) on the eForm/Document Package tab.
  • Was one of the source documents a Word document? If so, verify that it can be converted to a PDF source document. Otherwise, it will not work properly, since a Word document converted to a PDF is automatically flattened.
  • Open the form's Admin dialog box, click the Actions tab, and determine if the flattening signatures action has been used.

Scenario: A field in my form is supposed to update to a new value when a signature is applied, but it doesn't look like any change has occurred when I view the document. What happened?

Typically this issue is associated with the usage of the signature events defined on the form's Actions tab, which is not the recommended way to update a signature field.

If you want a specific signature to trigger a specific field action, it needs to be associated with one of the following four actions from the signature field's Actions and Buttons attribute:

  • Before applying signature
  • After signing
  • Before applying decline
  • After declining

Scenario: A form was submitted and signed, but I (an administrator) need to make additional updates to some fields. However, the fields all appear to be read-only and I cannot update them. What happened?

To remedy this situation, the form's administrator must access the eForm or Document Package and make sure that the appropriate Fields to lock attributes are locking the correct LincDoc fields.

Scenario: I filled out a form and submitted it, but the generated form doesn't show any available signature fields (or the field I expected to find is now missing). What went wrong?

Note: This scenario can occur in both the standard LincDoc application and when using LincDoc Mobile.

Signature fields that do not appear can be due to any of the following reasons:

  • A sign-able condition not being met.
  • The Signer name field attribute on the signature having a value of NULL.
  • The field to which the signature is assigned being empty.

Scenario: I'm using an iPad and I've accessed a previously signed form that has multi-stage signatures. I want to edit and sign the form, but I'm getting a warning message stating that no signature fields are present. How do I sign the form?

Usually when this problem occurs, the form is already fully signed, or there are signature fields that have already been flattened.

To prevent this problem from occurring:

  • Verify that the flatten generated PDFs? check box is not selected (not checked) on the eForm/Document Package tab.
  • Verify that a signature field's sign-able conditions are being met.
  • Confirm that there are unsigned signatures (that the form is not completely signed).
  • Confirm that there are signer name fields associated with the signatures, and that the signer name fields themselves are not empty (contain a value of NULL).

25.3. Security FAQs

This topic contains frequently asked questions (FAQs) related to system and document security.

Note: If you have any suggestions for additional FAQ content, contact LincDoc Technical Support.

The following issues are described below:

How do you restrict individual user access to only the documents that user created, while allowing administrators full access to all documents?

The following procedure describes how to configure your LincDoc environment to allow individual users access to the documents they create, but only those documents (not those created by other users). At the same time, an administrator-type user is given access to all documents created by all users. This example uses a SQL repository. The process for other repository types (Laserfiche, DocuWare,  etc.) will differ.

  1. Access the Admin dialog box for the form related to the documents whose view access you want to control.
  2. Verify that you have completed that necessary steps to set up the SQL repository field mappings for your eForm or Document Package.
  3. Specify a token-based system for all generated documents that places them in a specific folder in your repository and provides them with a name based on user-specific information. The specified folder is what will ultimately be used to control the security access, and all documents saved in the folder will inherit the security policy we create (below).
    1. On the Admin dialog box, verify that you are viewing the eForm or Document Package tab (the first tab).
    2. In the Token-based name text box, specify a string that will save all documents to the same folder.
      For example, the string test/<<user:username>>.<<doc-meta:created-date:hhmmss>> will save documents in the folder called test, and will use the current user's username and a timestamp to automatically create the document's file name.
  4. Verify that your repository's security settings will correctly inherit the folder's security policy.
    1. On the Admin dialog box, click the Repositories tab.
    2. Locate the repository in which the documents will be stored.
    3. Click the repository's edit (wrench) button.

      The repository's Configure dialog box appears.
    4. Click the Security tab.
    5. Verify that the Do not set a security policy - inherit policy from the parent setting is selected. (This is the default value when repository is set up.)
    6. If necessary, save your changes to the repository.
    7. Close the Configure dialog box.
  5. On the Admin dialog box, save your changes to the form by clicking the save button on the dialog box's toolbar.
  6. On the LincDoc toolbar, click the browse button.
    The contents of the repository appear (in what is sometimes referred to as the Browse dialog box).
  7. Create the folder that will store all of the form's documents. This folder was specified earlier in the Token-based name text box (in this example: test).
    1. Right-click the top level node in your repository, and select new folder from the menu that appears.

      The New folder name dialog box appears.
    2. Type a name for this folder in the name text box. For example: test.
    3. Click OK.
      The new folder is added to your repository.
  8. Set the security policy for the new folder.
    1. Right-click the new folder, and select security from the menu that appears.
      The Security for dialog box appears.
    2. Notice that the folder currently inherits its security policy (a message explaining this appears directly below the dialog box's toolbar).
    3. On the toolbar, click create policy.
      The "inherit" message disappears, and the lower portion of the dialog box can now be edited.
    4. In the type column, click the everybody entry.
    5. In the Privileges for list, verify that no check boxes are selected.
    6. In the type column, click the owner entry.
      The entry is highlighted, and the privileges for the type are displayed on the right side of the dialog box. This entry represents the creator of the document (the user who created it).
    7. Using the items in the Privileges for list (on the right side of the dialog box), restrict access to the owners (creators) of the documents stored in this folder. For example, you could select (check) the following options (these can vary, based on your needs):
      • add_child (this privilege allows for the possible automatic creation of a document or subfolder based on the form's token name)
      • history_read
      • read
      • read_by_id
      • read_data
      • show_edit_ui
      • write

      Your dialog box should appear similar to the example below. Note that you'll need to scroll up to see the add_child privilege.

    8. In the left column's title bar, click the + button to add an additional type to the list.
    9. Select group from the menu that appears.
      The Select group dialog box appears.
    10. Select the appropriate authentication provider from the Provider drop-down list.
    11. Click the search button to locate all groups defined within this provider.
    12. Click the admin group (usually Administrators if using an internal security provider) from the list that appears.
    13. In the upper left corner of the dialog box, click select.
      The new entry appears in the type list and is automatically selected (highlighted).
    14. Using the items in the Privileges for list, grant full access to the administrator-type users of the documents stored in this folder by selecting (clicking) all of the options.
    15. In the upper left corner of the dialog box, click save to implement the new security policy settings for the folder.
    16. Click OK to verify the action.
    17. Close the Security for dialog box.
  9. Verify that the folder security changes have taken effect.
    1. Right-click the test folder, and select security from the menu that appears.
    2. Click the owner type, and verify that only the previously specified privileges are still selected.
    3. Click the group type, and verify that all of the privileges are still selected.
    4. Close the Security for dialog box.
    5. Close the repository's Browse dialog box.

25.4. LincDoc Mobile FAQs

This topic contains frequently asked questions (FAQs) related to using LincDoc Mobile.

Note: If you have any suggestions for additional FAQ content, contact LincDoc Technical Support.

The following issues are described below:

How do I take screen shots on my iPad?

At times, it may be necessary to take screen shots of LincDoc mobile on your iPad, especially if you encounter issues and need assistance from Technical Support. The following procedure should be used when screen shots are needed.

  1. Locate the two necessary buttons on your iPad.
    • The Power/Sleep button, which appears on the upper side of your iPad when held in portrait mode.
    • The Home button, which appears on the front side of your iPad, near the bottom when held in portrait mode.
  2. Press and hold the Power/Sleep button.
  3. Press the Home button. If your iPad's sound it turned on, you will hear a picture-taking (camera shutter) noise. In addition, your screen will flash, showing you that the screen shot was taken. The screenshot is automatically saved in your iPad photo gallery.

For more details on this procedure, refer to the following website:

http://www.wikihow.com/Take-a-Screenshot-With-an-iPad

How do I resolve "LincDoc Server Retrieval" errors?

You may see one of the following errors with regard to document retrieval/updates from your LincDoc server.

Error 1

Error retrieving doc package #####. Error retrieving source doc /####/####.pdf: A connection failure occurred. Check your network connection and re-sync your forms.

Note: This error typically occurs when a user is trying to retrieve (update) form definitions or documents from the LincDoc server.

Error 2

Error retrieving conditions: A connection failure occurred

Error retrieving source doc /####/####.pdf: The request timed out. Check your network connection and re-sync your forms.

Possible Causes

These errors are typically due to the LincDoc Mobile user having a bad internet/network connection, which interrupts the connection to the LincDoc server.

They could also mean that the user's LincDoc account is no longer valid.

Suggested Resolutions

For a bad internet/network connection, the user needs to find a very stable wireless signal or network connection to attempt server updates/syncing.

You can test an individual iPad's connectivity by attempting the same LincDoc server updates/syncing with a different iPad. If the "test" iPad successfully updates or synchronizes with the LincDoc server, the issue resides with the first iPad's server connection.

Another potential resolution involves having the user log out of the LincDoc server and logging back into the server. If this solves the problem, it was caused by the app caching (saving for reuse) old user connection information. Normally, this issue occurs when an LDAP server has been updated/changed, and the saved (cached) settings no longer match the new server settings, leading to the associated connection timeout.

This conversion is controlled by a setting on the LincDoc server: Convert combo lists to radio buttons.

If you have access to the LincDoc server, this setting can be found by clicking the system button and selecting the Offline settings option.

When this setting is enabled (checked), and the drop-down list contains less than six items, it will appear as a check box group in LincDoc Mobile.

What is the difference between the magnifying glass icon and lightning bolt icon?

The magnifying glass icon represents a lookup with no additional actions.

The lightning bolt icon represents a field-related action, which can include field changes, calculations, or a lookup.

26. Getting Technical Support

26.1. Contacting LincDoc Technical Support

LincWare is dedicated to providing its customers with the most efficient and affordable pathway to benefiting from its products. Each LincDoc solution is designed around ease of use, exceptional cost-to-benefit value and rock-solid architecture.

Backing those product principles is a knowledgeable, 24/7 web-based technical support structure dedicated to solving any issue that arises in as little time as possible. In fact, one call is typically all it takes.

You can contact Technical Support using any of the following methods:

  • Navigate to https://support.lincware.com and fill out the web-based form. This form, when submitted, also opens a support ticket. 
  • Call our main number directly at 585-563-1669, and ask to speak to a support specialist.

If it any time your problem is not solved to your satisfaction, the chain of command is readily available to address it until you are completely satisfied.

26.2. Remote Support/Administration

LincWare has the ability to quickly and easily troubleshoot any issues you may have by communicating with your local LincDoc VM through our LincWare Management Server (LMS). This server allows LincWare technical support personnel to remote in and review trouble logs, assess the state of the VM, and make any appropriate adjustments. This allows LincWare and the LincWare reseller community to be proactive, instead of reactive when any issues arise. To enable communication to the LMS the LincDoc administrator must turn on the LincWare remote administration service on the LincWare System Administration (LWSA) screen. This page can be found at https://<lincdoc-server>>/lwsa/.

  1. Open a browser.
  2. Enter your LincDoc server URL (for example, https://eforms.acme.com/lwsa/).
  3. Click the LincWare remote administration service button.
  4. Verify that the status shows started.

    If the status does not show started, try clicking the button again.

27. Reference Information

27.1. eForm Design Considerations

This topic contains best practices and tips that may be useful when designing your eForm.

Best Practices

  • Use standard naming conventions for fields so you can utilize the global fields library. For example, all date related fields end with the suffix _dt, phone number fields end with _phone, address fields end with _addr, etc. If you plan to integrate your eForms with an external repository, it is recommended to try to keep the names consistent there as well. For example, if saving documents/data to Laserfiche, keep the field names consistent with the Laserfiche template field names.
  • Early on in a new eForm set all the field types first before diving into calculations, lookups, etc. Be sure to press save after setting all the field types.
  • Make small incremental changes to existing, stable eForms. For example, make a small change (like altering a calculation), test that it works as desired, and then save the changes. Then move on to other changes (if necessary). Alternatively, use the export/import feature to work on a copy of the eForm without having to worry about breaking existing functionality.
  • When editing eForms, it is recommended to use Firefox 9+ or Google Chrome 16+, because these browsers have very fast Javascript engines. Editing eForms is a very Javascript-intensive task.

PDF Source File Tips

Take note of the file size of PDF source documents prior to building eForms and then just before placing them into production. It is not unusual for a PDF, over the course of many small edits, to continuously grow in size. The bigger the PDF, the longer it will take to process, and the longer it will take users to download, view, and possibly sign. The size of a PDF can be reduced by printing the document to a new PDF, and then copying the fields from the large document to the small. If the source doc is a scanned PDF, there is an option in Adobe Acrobat to optimize the scanned PDF, which also works well. In one recent example, the former method was used to reduced the size of a PDF from 2.2 MB to 300 KB.

27.2. Manually Specifying a URL

At times, it may be useful or necessary to identify items in your repository using a full URL. Typically, this scenario does not occur, and LincDoc provides simple means for selecting repository files. However, when needed, defining an item using a URL can be used. Since it is a somewhat complicated process, it is highly recommended that you review this entire section before attempting such a task.

Important: If this method of file selection must be used, it will be specified in the online help topic for that particular task, and this topic will be cross-referenced.

Proceed to one of the following sections below for more information:

Determining the Necessary URL Information

In order to use a URL to identify an item in one of your repositories, you need to known the following information:

  • The name of your LincDoc application context (in most cases, this name will be lincdoc). You can find this application context by examining the URL that is displayed when LincDoc is being used. The application context appears at the end of the URL, as highlighted below.
  • Your client ID
  • The name of the repository that is storing the file you want to use (in most cases, the resources repository is used).
  • The path within the repository that must be followed to access the file. This information is only necessary if you have stored the item in a folder or series of nested folders and subfolders. You can view the path by opening the repository, browsing to the file you want to use, and then examining the path near the top of the repository's dialog box.
    In the example below, several images files have been stored in a subfolder called images.
  • The file's name and extension (such as .jpg, .gif, or .png).

Building Your URL

To build your URL, you need to specify the information described in Determining the Necessary URL Information above in the following order:

/<application_context>/resources/<client_id>/<repository_name>/<repository_path_to_file>/<file_name>.<file_extension>

Example: Specifying a Repository File Via a URL

In this example, let's assume that the following information is known:

  • A file has been uploaded to the resources repository called med_symbol_thumb.png.
     
  • The path to the file contains a main folder (images) and one subfolder (thumbnails). The file itself is located in the thumbnails subfolder.
     
  • The name of the application context being used is lincdoc.
  • The client ID is users.

Using this information, the URL that would be used to specify this file would be:

/lincdoc/resources/users/resources/images/thumbnails/med_symbol_thumb.png

27.3. Creating an Email Template

You can create a small text file (containing HTML code) that will be used as a template when creating the body of email messages generated using the email button on the Document Viewer.

Creating the File

The email template file is a simple HTML file that may contain any desired custom text. However, it must contain the token called messageBody, which is used to add the text specified in the Message text box on the Compose New Email dialog box.

An example of HTML code that could be used in this text file is shown below:

<html>
 <body>
  <h2>Property of BeWell Health, Inc.</p>
   <span style="font-family:arial;font-size: 10pt;">
   messageBody
   </span>
 </body>
</html>

Note: If no template file is specified, a default template (provided with your LincDoc installation) is used. This template includes the description setting for the current client.

Activating the Template File

Once you create the email template file, you need to add it to the correct client so that it is used in Document Viewer email messages.

  1. Verify that you have created an email template file, using the guidelines described in the section above.
  2. Add (upload) the template file to your resources repository. For more information, see Adding Local Files to Your Directory Structure.
  3. Access the Configure dialog box as described in Configuring Your Client.
  4. Click the select button adjacent to the email template setting.
  5. From the repository dialog box that appears, click the uploaded template file, and click the select button.
    You are returned to the Configure dialog box, and the selected template file (and its path) appears adjacent to the email template setting.
  6. In the upper left corner of the Configure dialog box, click save.
  7. (optional) Verify that the email template is being used properly.
    1. Open a document in the Document Viewer.
    2. Email the document using your current email address, a simple subject, and some text in the Message text box.

      Note: This text will be added to the email message via the messageBody token, which should have been specified in your template file when it was created.

    3. Once the email arrives, open it.
    4. Verify that the information, as specified in your template file, appears in the body of the email.

The following example shows the template described in the above section as it appears in an actual email.