Intellect Platform - Tables and Templates Basic Document Management System - A101 Interneer, Inc. 4/12/2010 Created by Erika Keresztyen
2 Tables and Templates - A101 - Basic Document Management System
Contents About this Document. 6 Getting Started. 8 Starting the configuration. 10 Adding Items to the Template. 11 More good to know about the input fields, tables etc. 23 Revisions for the document. 26 Summary of DOs and DONTs. 30 3
Detailed Table of Contents About this Document. 6 Requirement to this Training. 6 Additional Documentation........................... 6 Additional Training. 6 Icons Used in This Tutorial........................... 7 Getting Started. 8 Summary. 8 Template, Instance vs. Table. 8 How do I create a table?. 9 Where are the templates located?. 9 Starting the configuration. 10 Create New Category. 10 Create New Template............................ 11 Adding Items to the Template. 11 Text Field. 11 Drop Down Field. 12 Built-in system variables. 14 Date / Time Field.............................. 16 File Field. 17 Number Field. 18 Setting up Conditions. 20 Moving items around............................ 20 Red or blue ~ Template vs. Instance. 21 More good to know about the input fields, tables etc. 23 Fields, tables etc. are unique. 23 Type of field................................ 23 Multiple Entry property. 23 Track revision property. 24 4
Changing the template. 24 User related actions. 25 Visual enhancements - Group Box and the Tabs. 25 Revisions for the document. 26 Scenario 1 - Track Revision.......................... 26 Scenario 2 - Limited number of revisions.................... 26 Scenario 3 - Unlimited number of revisions. 27 Insert new record. 28 Displayed columns. 28 Sort Order. 29 Number of records displayed on the page. 29 Summary of DOs and DONTs. 30 5
About this Document This document describes the creation of a simple Document Management System using the Intellect Platform. The purpose of this beginner training is to help you become familiar with the basic principles of the platform, such as templates and tables, how to create them and where to store. You will also learn about the different input fields and their properties while creating the document record form. This includes how to make a field required to be filled out by the end user, or how to make a field read only, so the user cannot change its value, or how to add values to a drop down box, and much more. Requirement to this Training This beginner training requires that you are familiar with how to navigate around in the Intellect Platform. Additional Documentation The following user guides are also available by Interneer: Intellect Platform - User Interface Intellect Platform - Introduction Intellect Platform Macros Intellect Platform Reports Intellect Platform Access Control Intellect Platform Workflow Additional Training Interneer provides several other beginner trainings as well as intermediate and advanced trainings on how to create workflow, or how to create reports, how to integrate with other systems and so on. For further information please contact Interneer at info@interneer.com or call 1-800-558-6832. 6
Icons Used in This Tutorial Through the tutorial you will see icons in the margins that highlight special types of information. We use these to help you better understand and apply the material. When you see any of the following icons, this is what they mean: If you follow the tutorial on your computer, this icon indicates that there is an action to take, you need to do something on the computer. This icon emphasizes a piece of information, something to definitely keep in mind. This icon is to remind you of important information that has already been covered in the tutorial. We use this icon to give you tips and tricks to help you achieve a successful implementation. 7
Getting Started Summary In this training we are going to create a simple Document Management system, focused on the principles of the Intellect platform. With this system you will be able to store documents with some meta information to access easily, and you will also be able to track the revisions of the documents entered. While creating this document management system we will see examples for the different input fields and their properties. For this Document Management system we will need to design the layout of the document records. A document record will have fields such as the name of the document, a description of it, a field indicating the type of document. You might also want to mark who and when created this document and definitely you want to attach the actual document to this meta data form. After designing the document form, we will need to store the different records somewhere. Finally we will see few ways how you can track the revision of the document record. In the manual, paper world, you would have had a master sheet where you had designed the layout and then every time you wanted to file a new document, you would have just made a copy of the master sheet and filled out with the information. Then you probably would have placed these papers in a filing cabinet to keep things organized. Intellect works in a very similar way. The master sheet is called: Template. Template, Instance vs. Table A template is basically a form a form that contains information, that you need to track, such as a name, a date, an email address, a task, etc. But the form is left blank because you want to be able to use it over and over again. The logical next question then is, If the template is blank, where does the platform store the actual information? Good question. The answer is in tables. Tables contain copies (or instances ) of the templates you made, but with the information filled in. Instance: An Instance is the saved, cloned copy. In Information Technology terms, it s a record. It has all the fields that the template has but the values are specific to that entry. For example the different users are instances of the user template. They all have a user name field (just as defined on the template) but the user name is specific in each case. 8
Table: A table is a container that holds multiple instances of a template. In the case above, we have a Users Table that contains all the user records (copies of the User Template but with the actual specifics about each user). How do I create a table? It s as easy as point and click. Creating a table doesn t mean you now need to go design and configure something the way you designed and configured the template. As soon as you specify which template s instances you want to store in the table, the system knows that you want every single field you created in the template to be available in the table. So creating a table is as simple as clicking the Insert Item button and selecting the type of table you want. Then, to make sure the table is exactly to your specifications, the platform provides a table wizard that asks you four quick questions. Intellect Principle: NO table without template In order to have a table, first you need to create a template. Every field on the template is a column in the table. To have a new column in the table, you need to add a field to the template and the column will automatically appear in the table. Templates are for designing layout and queries; tables are for holding the data. Where are the templates located? The templates are located in a special system folder: Home > Administrative Tools > Templates. There are a few built-in templates that the basic installation comes with; such as user, user groups, contact etc. They are located in the Standard Templates category. A Category is like a folder. It allows you to group templates and other items together. 9
Starting the configuration Navigate to Home > Administrative Tools > Templates and click on Insert Item button. Remember: you need to be in Edit mode to be able to make any configuration changes. Create New Category For better organization, let s insert a new category. Click on Insert Category and name the category Document Templates. 10
Create New Template Click into the new category and click on Insert Template and name it Document. Adding Items to the Template Click into the template and let s start adding fields. To do so, click on Insert Item to open the Toolbox panel. Text Field The Text field is one of the most flexible fields and can be used in a variety of ways beyond just text. The Text field works well for storing numbers as well when the numbers will not be used for any calculation in the future. So let s insert a field for the name of the Document. Simply click on the Text in the Toolbox and the system places a text field onto your template. While the label is highlighted blue, you can just overwrite the label. If you mistype it, or want to make any changes to the label, you will need to edit its properties. Right click on the label of the text field and select Properties from the appearing menu selection. Note: you can access all objects (input fields, tables, categories) properties from the menu list when you right click over their name. Let s insert another text field for the description. By default the system places a single line text field onto the template. Possibly you will need a bigger area for the description, so let s open the properties window and select Multiple Lines under the choices of the Textbox Size. For more information on the input fields and their properties, please refer to Intellect Platform - User Interface document. 11
If you follow this tutorial, this is how your template should look like: Drop Down Field The Drop Down field is used when there is a list of two or more options and the user must select exactly one choice. Let s insert a drop down field to mark the status of the document. By default the system inserts a drop down field that offers Option1 and Option2 as values. Let s change it. Open the properties of the drop down field and in the Data List section there are 3 different ways you can populate the drop down field. 12
1. From Table or Multiple Entry Drop Downs You can populate the drop down from an existing table s records (click on the Browse icon), or if it doesn t exist yet, you can create a table on the fly as well (click on the New icon). The advantage of this choice is that if you add a new record to the table, it automatically appears in the drop down as a selectable value. 2. From Query You may not want to offer every record from a table. For this case select From Query and you can add your filtering rule after you specify which template s instances you want to filter. Note: in both cases above, you can populate the drop down with ONLY one type of values. In other words, you can select ONLY one table (that holds one template s instances) or you can filter ONLY one template s instances. 3. User-Defined You can hard code the values into the drop down. In this case these values are independent from any other records in the system. Suggestion: use the 1st or 2nd choice if you have more than 2-3 values, and you may use the 3rd choice when you have Yes / No type of values. Let s populate the Status field with the following values: Submitted, Approved, Under Revision, Published. Open the property window and select From Table. So far we haven t created any table or template that holds status values in the system, so click on the New icon and the system will create the table on the fly. Note: as we mentioned before, there is no table without template. Therefore the system also creates a template for this table. By default the system creates these on the fly tables in the Home > Administrative Tool > Selection Tables category and stores their corresponding templates in the Home > Administrative Tools > Templates > Simple Table Templates category. 13
After you have added the status values and clicked on OK, this is how the drop down field should look like: Built-in system variables If you want to track, who created the Document record, you can use the [Current User] built-in system variable. The system can detect who is the currently logged in user and mark it on the template. To utilize this system variable, you will need to use a drop down field. So let s insert a new drop down field and call it Created By, and populate its data list from the User table. Open its property window and select From Table option. The User table already exists (part of the installation) so we don t need to recreate it. Click on the Browse icon and a popup window appears. Using the location trail you can navigate to the User Table. It is at Home > Administrative Tools. We are almost done. After you clicked on the OK button, you can select [Current User] as an Option in the Default Value section. 14
When you insert any new field to the template, by default it is editable, so the user will be able to make any changes to its value. In case you don t want that to happen, you will need to change the field s property. So let s go back to the Created By drop down field s properties and click on the Conditions tab. Here you can specify if the field is Editable, Required or Visible always, or under certain condition. Change the Editable to No, because we don t want the user to be able to change who created the document. If you have followed this tutorial, this is how the Document template should look like: 15
Date / Time Field The Date / Time field is used to store dates and times using a calendar view. Let s insert a date field to mark when the document was created. Another system variable is the current date. The current date/time value reflects the data and time of the server where the site is installed. (Note: it might be different from the time where you are at since it is based on the server location) Open the properties of the Created On date field and select current date option. If you also want to mark the current time, you need to check the Time... checkbox and select the current time option. If you don t want the user to make changes to the date or time field value, click on the Conditions tab and make the field not editable. For more information on the input fields and their properties, please refer to Intellect Platform - User Interface document. 16
File Field The File field allows the user to upload and attach any file into the system. So let s use a file field to attach the actual document file. Insert a File field from the Toolbox and call it Attachment. Checkbox Field The checkbox field is used when there are lists of options and you want the user to be able to select multiple choices. Let s insert a checkbox to mark the type of the document. When you open its properties, you might notice that it is very similar to the properties window of the drop down field. Let s click on the New icon in the Data List area, as we don t have any table for the document type yet, and enter the following values: Instruction, Procedure, Process and Form. If you have followed this tutorial, this is how the Document template should look like: 17
Number Field The number field is used for storing numbers that might be needed for calculations in the future. Note: you can also use text field for storing numbers, however, in that case, you CANNOT use those numbers for calculations. Let s say that we want to have an unique ID for every document record and we want the system to automatically-assign it. The Number field has a built-in feature that can assign the next number in the row to our record. Insert a number field and call it Doc ID. Open its properties and select the Auto Generated option. If you wish, you can specify which number should be the first. Let s insert another number field and call it Contract Value. We want this field to have the usual currency format. Open the properties of the number field and select Yes in the Format section. Note: if you want to indicate the unit of the number, use the Label Before or After options as the user won t be able to type anything but numbers and the period into the number field. 18
We added a field to mark the contract value, however we don t have Contract as an option for the type of the document. So let s add that value. Tip: if you don t remember how the Type field s data list is populated, open its properties. Furthermore if you click on the Browse icon, the system tells you where to look for the table. Click on Cancel and close the properties window without making any changes and navigate to Home > Administrative Tools > Selection Tables > Type Table and insert a new value, Contract Tip: to go back quickly to the Document template, you may want to use the Back button after expanding and selecting Document from the list. If you have followed this tutorial, this is how the Document template should look like: 19
Setting up Conditions Not every document will have a Contract value, therefore we want to display this number field if the user checks the Contract option in the Type checkbox. Open the properties of the Contact Value field and click on the Conditions tab. Select When... in the Visible area, click the Edit Condition icon, check the Type field then select the Contract value from the drop down list. Note: This visibility condition will take effect only when you create a Document instance, not on the template. Moving items around Click on the label of the field you want to move and while you are holding the left mouse button move the mouse. You will notice horizontal or vertical I-beams indicating where the field will be positioned if you release the mouse. 20
Creating a table As we mentioned earlier, a table is a container that holds multiple instances of a template. We just created a template for the documents, but you will need to store the different document records somewhere. So let s create a table for these instances. Navigate back to Home and click on Insert Item. In the toolbox, expand the Table grey bar and select Document in the Document Templates folder. As a result, the Table wizard opens. Select the following: Step 1/4 Table Type: Data Entry Table Step 2/4 Table Label: All Documents Step 3/4 Columns: All Step 4/4 Table: Expanded If you want to make any changes later on, you can always open the properties window of the table in the same way as the input fields. Suggestion: when you make a change always test it to make sure it is working. So let s insert some document records into the table. While you are inserting a new document record, don t forget to test if the Contract Value field appears in case you select Contract as a document type. Red or blue ~ Template vs. Instance As you might have noticed, the Current Location bar sometimes is blue, other times it has a red color. This is not by accident; there is a reason for that. The red location bar indicates that you are in a template page. Also the location bar indicates that you are inside of the Templates area. It is important, that you DO NOT enter data into the template, unless you want that information to appear in EVERY instance of the template; for instance a default value for an input field, or onscreen instructions. 21
Let s see an example: the Document template. If the Current Location bar is blue, that indicates you are viewing an instance of the template, not the template itself. Also the location trail indicates where the instance (record) is stored. Let s see an example for an instance of the same, Document template. Remember, that you DO NOT store data in the template. Templates are for designing the layout, adding calculations and setting up connections between fields. The system stores the data in tables. Tables contain copies (or instances ) of the templates you made, but with the information filled in. If you need to make any changes in the layout or structure, you always need to apply them to the template. Every table is created from a template; there is no table without template. You can see which template the table is created from by opening the property page of the table. For more information on the input fields, table and their properties, please refer to Intellect Platform - User Interface document. 22
More good to know about the input fields, tables etc Fields, tables etc. are unique Behind the scene, on the database level every template, input field, table, category has a unique ID. This ID is not available in the front end. The advantage is that you can have 2 or more fields (tables, templates, categories etc) with the same label in the system (even on the same template). You can change the label of the field any time, it is not going to break any references (such as referring to the field by a macro, or query) The disadvantage is that if you delete a field, and insert another one with the same label, same type, the system will recognize it as a new field and all of your references to the old field (macros, queries) will be broken. Also if you had stored any data in that field on the instances, that data will be lost as well. Type of field When you insert a field, think ahead if that type is the correct one, as you DO NOT have the option to change the type of the field later on. The type of the field is indicated on the top left corner in its properties window. Multiple Entry property Most of the input fields have the option to enter and store more than one value. To turn this feature on, go to the Advanced Tab of the field s properties window and select Yes for Multiple Entry. As a result a blue + sign appears next to the field, indicating the multiple entry option. 23
Track revision property Intellect has the capability to store previous values or revisions for any of the fields. This feature is turned off by default. To track the revisions, go to the Advanced Tab of the field s properties window and select Yes to Track Revisions. To access the stored revisions, expand the View menu in the Toolbar and select Revisions. Then a Revision History window opens up displaying the previous values of the tracked fields along with a time stamp marking the user who changed the value. Note: the system starts tracking the revisions the moment it is turned on and onwards. You won t be able to see any changes, that were made before. The downside of this feature is that you cannot export or print this information from the system. If it is important to export the historical data from the system, you need to create a special configuration to store the previous values of a field. Changing the template If you make any changes to the template, it affects EVERY instance of this template, including existing ones. If you insert a new field and/or table to the template, it will be available on every instance. The newly inserted field will be blank on the existing instances, but you can go to the individual records and set the value. If you delete an input field, table etc, it will be removed not only from the template, but also from EVERY existing instance of that template. 24
User related actions If you need a field to mark who did something, or who is the manager of the user, or the contact person of the client etc. and that person is already a user in the system, use the drop down field to mark that information and populate it from the User Table. Do that even though another type of field (such as a text) could work as well. The benefit is that you won t need to type the name of that person every time, rather just select from the drop down, and more importantly later on when you want to specify the owner of a workflow activity, or specify the right level of access control, you will need to use drop downs. And remember, you cannot change the type of the field and you cannot simply replace it either. So think ahead! Visual enhancements - Group Box and the Tabs When you work with a complex system, your templates probably have several input fields. Besides placing relevant fields next to each other, you may want to also indicate that a group of fields belong to each other. Expand the Layout Field grey bar in the Toolbox and you can insert a group box, or a tab into your template. Then just drag and drop the input fields. Note: you cannot move more than one item at a time, unless they are all within a group box. In that case, move the group box and all its content will move with it.. After rearranging the input fields, the document template might look like this: 25
Revisions for the document We created the Document template and now we want to track the revisions of the documents. Depending on your exact need, there are different solutions. Scenario 1 - Track Revision You don t want to track any other information, just who modified the document and when, and what is the new version. In that case turning on the Track Revisions property is enough. When you open the Revision History, you can access the previous versions of the document by clicking on the link. Scenario 2 - Limited number of revisions You want to add additional information, such as notes, to the revision. Also you will never have more than 3 revisions for any documents. In this case you can add a revision section to the template containing input fields. Your template might look like this: 26
Scenario 3 - Unlimited number of revisions You want to allow the user to store an unlimited number of revisions to a document along with additional meta data. In that case you will need a table to store every revision of the document. As you might recall, when you want to create a table, you need to select the type of the table. We also know that there is no table without a template. So in order to track multiple revisions in a table, you need to create a template for the revision first. Navigate to Home > Administrative Tools > Templates and create a template for the revision in the Document Templates category. Your Revision template might look like this: Now that this template is created, it becomes available in the Table area of the Toolbox. So navigate to the Document template and insert a table for the revisions into the Document Template. Your Document template might look like this: 27
Table properties Insert new record By default, when you enter a new item into a table, a blank instance of the template opens. Imagine that you are entering several new items at the same time. Every time a blank pop up window opens, you fill out the form with the information and save it. Then you repeat this process over and over again. This can take some time. Thankfully there is a faster way! Go back to the properties of the Revisions table and on the Advanced tab, select Insert Inline for On Insert. Now when you insert a new item into the table, instead of a new blank pop up form, a new, blank row is added to the table. You can add multiple rows before saving the record. Displayed columns When you create a table, in Step 3/4 of the table wizard, you can set if you want to display all columns, or just some of them. You can modify the columns later as well, in the Display tab of the table properties. Click on the Browse icon in the Columns section and check the columns you want to see. On the right side of the popup window you can also specify the order the columns are displayed in the table using the up and down arrows next to the name of the selected items. 28
Sort Order You can specify which column the instances will be sorted by. Open the properties window of the table. When you click on the Browse icon next to the Sort By checkbox on the Display tab of the table, you can specify the column for the primary sort, then the column for the secondary sort and so on. By default the sort order is ascending, however you can change that by checking Descending underneath the Sort By area.. Note: the sort order for every selected column is the same; either all of them are ascending, or all of them are descending. Number of records displayed on the page By default 50 records are displayed on one page of the table. You can change this number in the Display tab of the table s properties window. If you have more records in the table than this number, the system will automatically display pagination options for the user at the top and bottom of the table. For more information on the input fields, table and their properties, please refer to Intellect Platform - User Interface document. 29
Summary of DOs and DONTs You need to be in Edit mode in order to be able to make any configuration changes. There is no table without a template. If you need a table, create a template first. Make all configuration changes on the template, not on the instance. Any change you make to the template affects EVERY instance of this template. If you need another column in the table, go to the template it is based on and insert a new field. It will automatically become available as a column. Do not enter any data into the template, unless you want it as a default value on every new instance. Test continuously the changes you make. 30