There are times when user fields need to be more personalized to target specific business needs. Comidor allows you to create User Fields that can be used in multiple Comidor objects globally; those custom User Fields can be added in User Forms in Workflow designs for Workflow automation, too.
User Forms and User Fields are also part of custom applications. So, designers can include their own User Forms and Fields in App Designer.
- For workflow process-enabled apps, designers can create forms to be visible in the main process (primary form, or not), one quick add form(to trigger the app from the Quick add menu), and forms to be shown within workflow tasks.
- For simple non-process-enabled apps, designers must create one main & primary form(choose the option to replace the existing form), so that the end-users can have a main form for adding and viewing a record. Additional main forms can be added, too.
Global User Fields and Forms
To create and manage global User Fields and User Forms, you should be a System Administrator. Go to App Factory icon > Application Builder > User Fields or User Forms.
App User Fields and Forms
To create and manage app User Fields and User Forms, you should have access to the App Factory package. Go to App Factory icon > Application Builder > App Designer.
Workflow/Process Template User Fields and Forms
To manage User Fields and User Forms for Workflows, go to App Factory icon > Process Automation > Process Designs. Access the Workflow you are working on and select the tab User Forms or User fields.
The same can be performed inside the Process Templates using (Business Apps icon > Process Orchestration > Process Templates), having also here the ability to create a Quick form for Quick adds.
Creating a new User Field
Then, By clicking on the “+” button the User Field creation form opens.
- Select the Entity (e.g. Accounts, Contacts, Processes, Tasks, Personnel, etc.) where you need to add the User Field. For example, if you choose Accounts, this new field can be only visible and used in custom user forms that will be displayed in the Accounts table.
- When creating user fields in an app from App Designer, the entity field will be preselected(the current app) and view-only.
- In the Workflow field choose “Any” if you want to create a Global field. In case a connection to a Workflow is needed, choose the Workflow name from the list that will appear here. If you choose a workflow, this field will be available only in the chosen workflow’s form for display.
- Add the Label, which is the field name as viewed by the end users.
- Check the Auto-generate name if you want to automatically create a Column name for your field. If you leave it unchecked, you will have to give a Column name in the database; should be one word with capitals and without any special characters (e.g. USR_REFERRAL).
- Select the Type of the field in the Database from a variety of types through a drop-down list. (see types below)
- Define a default value in a field, so that when a new record is created this field will be pre-populated. This is useful in a numeric field, or in a list.
- Store type: Choose the option table, if you want the field you are creating to be stored in the table. Leave empty for a virtual field.
- The fields with store type table can be used in columns of a table and in select query scripts.
- Add a Tooltip to your field; An info icon will appear next to your field, and when the user hovers over the info icon this message will appear.
- Security Level: Depending on the security level of each user, and the security level of each field, the field values are visible to the responsible users.
Here are some examples of Types:
- Text Field
- Email, which is a text field whose format should be: email@example.com. Designers can incorporate email fields so end-users can view the email address and copy it into their clipboard by clicking on the respective button, saving their valuable time. Also, an email icon will be displayed next to the field in the form so that end-users can send emails by clicking on the mail button and using their computer’s default application.
- Paragraph (Memo), for the longer text of multiple characters. In the form designer, you can apply properties to have plain or rich text, add placeholder, tooltips and more.
- Checkbox Field
- Date Field
- Time Field
- Timestamp, a Field with Date and Time
- File (Binary), for uploading all types of files
- List (Key | Value) is a drop-down List. Define Value List: Key “1,2,3” and Value “Text1,Text2,Text3” for a drop-down list with 3 options.
- List (DB) will display a database list. Choose from existing Lists, or create a new one.
- List (Free) will display a list of records depending on a select query.
- eg. 1: SELECT FIRST_NAME FROM JP_CONTACTS
- eg. 2 SELECT JP_USERS.CODE, JP_USERS.USERNAME FROM JP_USERS JOIN JP_USERGROUPS ON JP_USERGROUPS.USER_CODE=JP_USERS.CODE WHERE JP_USERGROUPS.GROUP_CODE=50, if you want to fetch a list with only users that belong to a certain group from the organizational chart. Combine this field with the dynamic assignment options in a workflow task.
- or just the name of the entity, and it will show the respective primary field.
- Record will display a list of record entries in Comidor tables. Choose the record list of the Unit you need. List: eg. JP_TASKS, JP_USERS, JP_CONTACTS, etc. if you want to fetch a list of the tasks, users, contacts, etc.
- Customizable Grid (JSON) refers to a JSON table. Grid Columns Title, Type, etc. should be added. As you can see in the picture below, you build a table in the way you want. Simply choose the columns you want to have and set a Title and Type. Based on the field type you choose, complete the Column size accordingly; you may have to fill in another field, e.g. in the type Pre-populated list you have to fill in the Options [Prepopulated List] with the options you wish your list to have. You can also fill in the Tooltip field with information that will help the user during the submission.
- Choose Phone type for entering phone numbers as input. A phone icon will be displayed next to the field in the form so that end-users can make calls by clicking on the phone number button and using their computer’s default application.
- Choose Excel type for creating an excel spreadsheet that can be later filled in by users inside the main form during process execution.
- edit the field, and click Populate cells to the Default value
- Below it will populate all the cell properties that we have included in our default value.
- You can edit the existing ones, add more cells/properties, define the properties you want (type, formula, required, etc), remove a row, add cells to merge
- Do not forget to click on the generate JSON button, so it updates the default value with the new properties.
- To create a Query field, select Type Query. Then Query Properties Key and Value should be added.
- For example, add the key “select_query” and value “SELECT FIRST_NAME FROM JP_CONTACTS”.
- add key “where_clause” and value “FIRST_NAME LIKE ‘%MARIA'”.
- Select Number and define the size and decimal places
- For currencies choose the type Currency.
- Finally, for hyperlinks choose URL type. A URL field will be clickable when added to a form and after adding value.
Contact firstname.lastname@example.org to get extra advice on custom user field creation.
After saving the User Field you created, you will be requested to Reload the Database so that the fields to be loaded into the system.
Creating a new User Form
All User Fields should be a part of a User Form.
- Click on the + icon to create a new user form, or
- Select a form from the list and click ok to view and edit it.
- Firstly, you need to select a Record type, so as the form to be available in this entity.
- For app User forms in app designer, this field is prepopulated and view-only.
- Type the Title of the form. Click Save to proceed.
A new form is created! On the left side of your screen, you can see the Design of the form and on the right side the Basic and Advanced form settings.
- View and edit the title of the form
- Access on this form; here you may select specific users/groups to have access to this data. By default “Everyone” is chosen.
- If you need this form to be Main this means that it will be visible in the main (process) view; this is suggested to be unchecked only in some Workflow Task cases. So, you have to decide if you want this form to be visible only inside the task or in the main process, too.
- In the field Primary choose Is not primary Form (default), Replace existing form (primary will be deleted) or Retain existing form (primary will be followed by the user form you are creating).
- The Quick field, by default, is NO.
- you may select In the process templates list, so as to be available in the process template list in the quick add process. This is useful for Process Templates
- Alternatively, choose in the Quick add menu in order to use it directly at the Quick Add button. This is useful for Apps you design from App Designer and you want to be triggered from the Quick add menu.
- If you have more than one main forms, you may specify its Position among the other forms that exist in this Record.
- Access can be driven also based on the Business setup. Choose the Division to be able to view the current form.
- Add scripts that will run before you open, edit, or save the form.
- Upload a Template file that can be used in extracting documents during the runtime of the workflow.
- Define if this form will be used in the mobile app.
- Define if this form will be used in a task email; check the option Approve/ Reject form and the following field will appear:
- A field that stores Approve/ Reject; choose a key-value list
- Field Information on Approve/ Reject;
- Example 1 with approve/reject buttons: approve=1,reject=2,approveFields=’JP_PROCESSES.USR_TEXT’,
- Example 2 with a fully editable form without buttons: approve=1,reject=2,approveFields=”,rejectFields=”
- Example 1 with approve/reject buttons: approve=1,reject=2,approveFields=’JP_PROCESSES.USR_TEXT’,
- Action Button; give a label to the action button
- Field Information on Action Button; eg assign a value to a field CONFIRM_FIELD=1
- Determine a Validity period of a form (from-to)
- Click on Save after determining all the above or any changes.
- After saving the form, you are able to design and organize your form your way.
- Design your Form by inserting Panels, Sections, Paragraphs, or Code elements. Simply drag-n-drop the elements you wish on the page.
- In Panels, you can include 1 or multiple sections.
- Select the no of columns (from 1-8) of your preference for each panel.
- In Sections, you can add as many fields as you wish with drag-n-drop functionality.
- In Paragraph, you can type your text, either in simple text or with an enriched HTML editor. Keep in mind, that you can add a value of a custom or database field that is being used in the process/app, as a variable in your paragraph.
- In Code, advanced users can add a Procedure.
- In Style, you can customize the font colours, font size of headers, labels, etc. Drag and drop the “Style” tile and define:
- the background-colour
- the header background colour, font, size, border, alignment, etc.
- the label background colour, font, size, etc.
- the input background colour, font, size, etc.
- In Group, you can create a group of fields. Simply drag and drop the User fields from the list of available fields and arrange their position.
- In Panels, you can include 1 or multiple sections.
- After publishing the form, the grouped fields will be displayed in one row.
- Click on one of the elements and edit, rename, or delete the element in the window that appears.
- Re-arrange the components in the way you wish, if you have created more than one.
- Search database fields and/or custom fields from the Available fields List and then drag-n-drop them inside the Section you want.
- Edit User Field details, by clicking on a field and then you may:
- Choose mode Editable or View-only if you wish this field to be disabled in this form
- Change the Label name of the field
- Set a Tooltip or a Placeholder for the field
- The value on the “Pattern” field should be a “Regular Expression” in order to validate the input data on the field. The “Pattern Error Message” field is the custom error message that should be displayed if the validation fails. For example, for a text field with only alphabetical characters use ^[a-zA-Z ]*$. See more on Business Rules.
- Set the field as mandatory by checking the Required box
- Define the alignment of the field
- Change the Label position and size of the field
- Set an Element CSS or an Element CCS Class for improving field design
- Hide or unhide the field based on different properties; in particular, choose:
- true: if you want this field to be always hidden
- false: if you want this field not to be hidden
- hide only if the value is not set: if you want to show in a form only fields with values
- hide only if the value is set.
- Choose Trigger event scripts on user entry (postvalue): true, to send the value of this field to the server, before saving the form. This property is useful for an “event script”. For example, when you give a specific value to this field, populate an error message, or give value to another field, before saving your form.
- Choose Disable changes by scripts on this field(doNo): false when you want the value of a field to be affected by event scripts (this is only for Apps – App builder).
- Change the editing interface of paragraph(memo) fields, from the property isArea (Plain Editor, Rich Editor). If you choose Rich editor your memo field will be shown as HTML Editor, where you can define fonts, styles, hyperlinks, etc.
- For memo fields only, you can also define the Area Size, by choosing 5-50 rows. The area of the paragraph field will be adjusted. You can see the preview in your form.
- For list fields only, define how drop-down lists are visible inside the forms between the Select, switch, and radio options. See below how the same field would look in the form with the 3 different options:
- Delete the field you have added in this section
- Drag-n-drop to re-arrange user fields within the user form
- Add more than 1 tab to group your form in the way you wish. Click on the gear icon to manage and add multiple tabs. Select the number of tabs you want. Give the names of the tabs and click on the respective tab to add the fields you want.
- After publishing the form, the tabs will be displayed as shown below.
- Switch to mobile view, by clicking on the mobile icon. Then choose from the list of devices and you will get a preview of this form in the selected device.
- Click on Fullscreen to view the form in full screen
- Press the Publish button, when form editing is completed
Unpublished changes? A warning message reminds users to publish their form after finishing their design.
- Copy a form by clicking on the copy icon. In the pop-up that appears, define the name of the new form and click save. Then, choose from the list of forms the new form and change its design. Do not forget to publish the new form!
- Delete a form by clicking on the bin icon. A confirmation pop-up appears.
Applying a Workflow User Form in a Workflow Task
The form should be matched with a specific Workflow activity to be functional.
Get advice on how to apply a form in a Workflow activity from Workflow page.
User Fields in User Forms of a workflow can be used in the conditional flow of a workflow, too.
Public forms are embedded forms similar to the quick add forms in Comidor, including all user fields and business rules. Public forms allow non-Comidor users to trigger internal processes. This feature is available to all quick add forms of user applications.
Simply go to the application you want:
- Go to App Factory icon > Application Builder > App Designer
- Select the user application you wish to add the public form
- Go to step 2 – User forms and open the quick add form
- Click on the button “Copy Public URL to clipboard”
- Paste the URL to a browser
You can also add Comidor public forms to your website and allow non-Comidor users to trigger your application.
By completing the public form and clicking on “Save”, a new process starts in Comidor in the application summary table you have selected.
The field rules functionality enables you to hide or show fields inside forms when certain conditions are met.
- Create custom condition scenarios for fields and select in which scenario the fields are going to be shown or hidden.
- Select more than one scenario – field condition for a specific field. This enables you to cover multiple scenarios.
- Eliminate the number of forms that need to be created and make your adjustments to one simple form.
- Hide sensitive information which should be displayed only for certain users, roles, or groups in a workflow.
To access Field Rules go to the App Factory icon > Process Automation > Workflows. Access the Workflow you are working on and select the tab Field Rules.
Create Field Rules
To create a new Field Rule press on the “+” button, and a creation form opens.
- Give a Rule title
- Select the Action to be performed: you can either Hide or Show a field
- Choose the name of the User Field that you wish to perform the above action to
- Set in which Form you wish this rule to be applied (from the user forms that the selected field is displayed)
- Select the desired Save option (refer to Quick Reference Guide)
Custom Condition Builder
After saving the Field Rule, and while being at the view form, you can add conditions.
- Click on the ‘+’ icon to insert a new row
- Select the unit that the field comes from (Process, Application name, etc.)
- Choose the Name of the Field and its value
- Use AND, OR, and parenthesis to form your conditions
- After adding all the rows of conditions you need, click on the Publish condition button.
Manage Field Rules
- If you want to make any changes to a Field Rule, simply select the respective Field Rule and click on the pencil icon.
- After making any changes click on Save.
- In order to change the conditions, simply make the changes you wish in the view form of the Field Rule, and then, press the Publish condition.
- You can Delete one or more Field Rules, by multi-checking them in the Field Rules table and then click on Delete.