Custom fields overview [in-depth guide]
Guide contents: Define custom fields | Considerations | Add custom field | Layout | Display types | Display when | Parent field | Reporting | Exceptions | Resources
This is where you can create and maintain custom fields that are used throughout the system based on your requirements.
NOTE: Custom fields that you make here do not automatically show up in reporting, nor are they available in our non-modifiable standard reports.
Define custom fields
To start creating custom fields, go to Menu > Admin/manager > System setup > Custom fields.
Workamajig provides you with the ability to add customized input and reporting fields to key parts of the system. Utilizing this functionality will allow you to more precisely tailor the system to the business needs of your organization and the needs of your client and vendors.
You can create custom fields that will be available in the following areas: employee, company, contact, project, campaign, retainer, conversation, opportunity and deliverable.
Considerations
Plan it out
In some cases, you can re-purpose an existing field that is not being used instead of creating a new custom field. For example, if you want to report on a client's PO number, then we suggest you use the Client project number field that is already available on projects. As you can relabel the fields on invoice layouts and reports and use the field as is.
If you do have many fields you want to add, think of what you want to show and why (as you may not be able to delete the fields later). Then explore the options of how the fields are populated and displayed that best suit your needs.
Character limits
Plan accordingly, as there are limits on the number of characters that can be used in each of the available fields, this includes spaces.
Description = 300
Hint = 300
User text input field = 8000
Naming conventions
In the reports and views that allow custom fields to be included, you will see these custom fields called out with a "CF_" in front of the field name. For example CF_Contact_MyCustomFieldName.
Also, note that you do not want to use any special characters (ie. !@#$%^&*) in the field name or caption, as this can cause issues with reports.
Deleting custom fields
In most cases, you will not be able to delete a custom field once it has been used at least once, where a record populated that field with data.
If you are unable to delete the field, then we suggest you ensure it's removed from the Available fields, and then uncheck Active from the setup of the field.
Add a custom field
Go to Menu > Admin/manager > System setup > Custom fields.
Choose your area of interest.
For example, this is what you might see if you click on Opportunity Fields.
NOTE: If this is the first field being added, the Edit Field screen will appear.
To add additional fields, click on the plus sign next to Available Fields to add a new Custom Field.
With the Edit Field screen open, you will then be prompted to add the field details.
Field Name: Enter a unique identifier for this field. Caption: Enter the field's name as you want your users to see it when filling it out. Display Type: Determines how the field works. Refer to the Display Type section of this guide for more info. Description: For setup use only. Appears when editing a field to retain a description of what the field is used for. Hint: If populated, appears below the fields display type function. Default Value: Will populate the field with a predetermined value that can be changed later. Required: Check this box to make the field a requirement when users save the related record. Active: Check this box to make the field Active/Inactive for use in the layout editor. Display When: See the Display When section later in this guide for more info. Used By: Will list out what sections are using this field. |
Click Save when done.
The new field will appear in the under the Available Fields section.
Then drag and drop into the Current Layout.
Clicking Edit will open the field to modify further.
NOTE: The Field Name becomes locked after the initial save.
Layout
Each section has its own Current Layout. This determines what users will see when accessing these fields in their respective parts of the system.
Example of the Custom Fields Current Layout
Example of what may be visible from the Project
Drag and drop the fields you want to use and place them in the order of your choosing.
Display types
Numeric
A text box containing only numeric values.
Setup
Examples
- Do not enter commas or currency symbols.
- Only numbers, plus/minus sign, and decimal point are allowed.
- The system will display commas in views and reports.
Date
A text box containing a date value.
Setup
Examples
- Clicking on the calendar icon will open a date picker. Or you can enter 3/7 and it will auto fill 3/7/Year.
Text
A single-line text box container that allows all alphanumeric values.
Setup
Examples
- Will not expand into more rows.
- Pressing enter will Save.
Text area
A multiple-line text box that allows all alphanumeric values.
Setup
Examples
- You can paste formatted text into this field.
- You can also make use of hyperlinks (opens into new tab).
- Also allows the user to format the text that is entered. Such as bold, size, and color.
- Will auto expand if more rows are needed.
- Pressing enter will go to the next line.
Single checkbox
Creates a single option to check or not check. Think of it as a YES or NO only option.
Setup
Examples
- When used in custom reports, it will return the value of YES or NO.
- However, its possible for this to show as "null" if it was never checked and/or unchecked.
- You can add a Default Value of YES or NO depending on the needs.
Multiple checkbox
Allows the user to choose any option(s) from a list of checkboxes.
Setup
Examples
- If required, then at least one checkbox must be chosen.
Radio button
Allows the user to choose one option from a list of multiple options.
Setup
Examples
Dropdown
A select box containing a list of pre-determined values.
Setup
Examples
- If required, then an option must be selected to Save.
- The display type of drop-down now has an added conditional formatting that can be used called Parent field. See the Parent field section of this guide for more on this aspect.
- If the Options change after the field has been used. Then those original values are retained.
User Lookup
Allows the user to choose from all active Employees in the system.
Setup
Examples
Contact Lookup
Allows the user to choose from all active Contacts in the system.
Setup
Examples
Separator Text
Allows you to create a visual break in the form and be able to label the line as well.
Setup
Examples
- The line is created as Bold.
- To create a similar non user editable section, but want more formatting choices, try Display Only.
Tab
Tabs allow you to separate your custom fields into categories that the users can then click onto and fill out related fields without seeing all fields.
Setup
Examples
Layout |
Result |
- For tabs to function properly, the first field in your Layout must be a tab field.
- If you have required fields under multiple tabs, keep in mind that the rules of the fields being required still apply before you can Save.
Display Only
Adds a non user editable section of formatted text.
Setup
Examples
- Can be used to add "instructions" of how to use the fields below.
- Similar to Separator Text.
- Must populate the Default Value for it to appear is certain views.
- The Default Value can be formatted with Font Size and Colors.
Select List
This is similar to the Dropdown type, but the user can pick and choose any option(s) from the list.
Setup
Examples
Display When
This option allows you to have one or more fields appear based on the user input data of another field. So get creative with your use of this feature.
Setup
Layout Example
With multiple Display When fields.
- You will see all Display When fields in the Layout.
Examples
Initial Selection Field |
Once populated by the user |
- The order of these fields is very important. You will want to ensure you put the Display When field(s) below the selection field, or else you may get odd-looking results when the fields appear.
Parent field
This allows you to create conditional values that appear within a dropdown selection based on the selection of the parent field. This differs from Display when, as that shows/hides fields from being inputted altogether.
NOTE: This function only works with the dropdown display type.
For example.
Set up the "to be" parent field with the initial set of options. In this case Web, Print, and Misc.
- Then set up the "results" field that will display the available dropdown options based on what is inputted into the parent field.
- Options with no :: in them, will always show in the results field, regardless of the value selected in the parent field. In this example, "Other" is that option.
Here is the above setup example in action.
- If no selection is chosen in the parent field, then only the options with no :: appear.
- If Web is chosen from the parent field, then the options starting with "Web::" appear. Plus, any options with no "::" before them.
- If Print is chosen from the parent field, then the options starting with "Print::" appear. Plus, any options with no "::" before them.
- If Misc is chosen from the parent field, then only the options with no "::" before them appear in the Results field selection.
NOTE: One advantage the Parent Field has over Display When, is that you can maintain a spread sheet of all the options and then paste that into the setup s things change. Any field that was already populated will retained its original values.
Reporting
Custom fields appear as "CF_FieldName" in reports. You can edit the caption of the column so its looks cleaner in the report itself.
Report Layout
Example Report
NOTES:
- Only active custom fields will appear in the list of fields you can add. However, fields added before them being made inactive will still be part of the report.
- If the report is not displaying any information, this usually means improper data was entered in a date or numeric field. To check, simply change the field type to 'text'. Run the report to find the errant data. You can then change the field type back to 'date' or 'numeric'. If you are not using the fields for calculation purposes in Excel, you may want to keep the field as text to prevent this error.
Exceptions
Employee custom fields: Since many use these fields for sensitive staff-based information, these fields are not available to add to views. These fields are only visible within the employee record or via the custom report datasets: Time detail data (with employee custom fields) and employee data.