Extra Fields
To allow the capture of customised information, MYOB EXO Business supports Extra Fields. These are flexible points of data entry that can be defined at implementation time. They are used to collect information at time of data entry, to appear on forms or to be analysed and reported.
Note: Video-based Help is available for this topic on the EXO Business Education Centre.
Examples of use of Extra Fields are many and varied, but could include:
-
Capturing demographic information at the point of sale.
-
Custom personal information about customers, such as birth dates or anniversaries.
-
Recording specific information on stock items, such as warranty terms or links to images.
Extra fields can be created in various areas of MYOB EXO Business, including:
-
Sales Orders
-
Purchase Orders
-
Debtor, Creditor and GL accounts
-
Contacts
-
Stock items
-
Activities
-
Invoices
Extra fields can be displayed on the Details 1 tab or Extra Fields tab of an account window. On transaction windows, they appear on the header or line periscope windows.
Extra Fields can also be created on custom tables, then accessed via the EXO API.
Creating Extra Fields
EXO Business Config > System > Extra Fields
MYOB EXO Business allows users to create Extra Fields on various tables to hold vital information needed on the system.
-
Open EXO Business Config and go to the System > Extra Fields section.
-
All currently defined Extra Fields are listed on the right panel. Double-click on a record to drill down and check details.
-
Click New to create a new Extra Field.
-
For the Table name field, specify the table in the EXO Business database that you want to add a field to or display a field from.
-
For the Field name field, select the field from the database table you selected above that you want to display as an Extra Field. If the field you want to display does not already exist, click the Add Field toolbar button to add a field to the selected table. The system will automatically add a prefix of X_ if not entered by the user. Enter the correct data type and default value if necessary. No spaces are permitted in this name; use an underscore to insert spaces (_), e.g. International_Number.
-
Enter a Display name - this is the label that will be displayed next to the Extra Field when it appears on screens.
-
Enter the Position and Size of the Extra Field. The position must be unique across Extra Fields on this table - used and unused positions are displayed on the right side panel of the window.
-
The Grid Column option applies to Extra Fields on Sales Orders, Jobs and Opportunities. If it is enabled, the Extra Field will be available as a column on the main grid of the relevant window. (Once set up, you must enable the column using the Select visible columns right-click menu option on the grid.)
Note: For header tables, the Grid Column option is always unticked and for line tables it is always ticked. The only exception is the SALESORD_LINES table, where the option can be changed—if it is ticked, Extra Fields will appear in the grid; if it is not, they will appear in the line periscope.
-
Select the correct Dialog Type based on the chosen field, e.g. choose "Date Picker" for dates, "Standard Edit" for varchars, "Check Box" for char(1), etc.
-
If the OPPORTUNITY or OPPORTUNITY_QUOTE table was specified for the Table name field, a Copy field option becomes available. This field determines what will happen to the Extra Field when an Opportunity is copied. Choose from:
-
Always - the Extra Field will not appear on the Copy Opportunity window; it will always be copied when an Opportunity is copied.
-
Never - the Extra Field will not appear on the Copy Opportunity window; it will never be copied when an Opportunity is copied.
-
Prompt for value (OPPORTUNITY table only) - the Extra Field will appear in the Extra Fields section of the Copy Opportunity window, where the user can choose to keep the original value or enter a new one.
-
Dialog Types
Selection Controls
If you set the Dialog Type to "Drop-Down Edit", "Drop-Down Selection" or "Drop-Down SQL Selection", the combo boxes for Lookup SQL, Key field and Display field are activated.
The Lookup SQL can contain:
- A table name, in which case the Key field and Display field combo boxes contain all fields for the specified table.
- A SQL select statement that specifies which fields the Extra Field will use, in which case the Key field and Display field combo boxes contain only the fields specified by the SQL statement.
If you are using a Drop-Down Edit or Drop-Down Selection control, the Key field and Display field are concatenated together into a single string, e.g. "1. ACCOUNTNAME". This means that the Data type for the Extra Field must be CHARACTER, so that it can record the concatenated string.
If you are using a Drop-Down SQL Selection control, only the Key field is recorded, which means that the Data type should match the data type of the selected key field.
URL Controls
There are two available dialog types for displaying URLs: "URL or Shortcut" and "URL Lablel".
The URL or Shortcut type displays a raw URL as clickable text, e.g. http://myob.com.
The URL Label type can display a user-friendly HTML label that links to a URL, e.g. a field that was populated with:
<a href="http://myob.com">MYOB website</a>
would appear as MYOB website, and link to http://myob.com when clicked on.
Extra Field Events
Some Extra Fields can be configured to update their values whenever the relevant field on the record type is changed, e.g. Extra Fields on a Sales Order can update when the Debtor account is changed.
When one of the following are selected for the Table name field, an Events tab becomes available:
- JOB_TRANSACTIONS
- JOBCOST_HDR
- JOBCOST_LINES
- OPPORTUNITY
- OPPORTUNITY_QUOTE
- SALESORD_HDR
- SALESORD_LINES
The Event Field Name field displays the field that will trigger the Extra Field update. For Extra Fields on header records, this is ACCNO; for Extra Fields on lines, it is STOCKCODE.
The Event SQL field contains the SQL statement that will be used to update the Extra Field when the relevant Sales Order field is changed. Parameters can be used to pass in information:
Record Type |
Supported Parameters |
Job header |
:Accno :Current_User |
Job quote line |
:Stockcode :Current_User |
Job transaction line |
:Stockcode :Jobno :MasterJobno :Accno :Current_User |
Opportunity header
|
:Accno :Company_Type_Int :Company _Type_Char :Company _Id |
Opportunity quote line |
:Stockcode :Opportunity_Seqno |
Sales Order header |
:Accno |
Sales Order line |
:Stockcode |
In the example above, an Extra Field on SALESORD_LINES has been set up to display the WEIGHT value for the selected Stock item. This value will be updated whenever the STOCKCODE on a Sales Order line is changed.
Note: Extra Field events override default values - if a default value is specified for an Extra Field that is populated by events, it will be ignored.
Extra Fields on Custom Tables
It is possible to add Extra Fields to custom tables you have added to the EXO Business database; these can then be accessed via the EXO API. Custom tables are accessed using the customtable endpoint, which was introduced in version 1.3 of the EXO API - see the EXO API documentation on the EXO Business Education Centre for more information.
Note: Custom tables can be created in the EXO Configurator (see below), or manually in SQL Server. If you are creating a custom table manually, it must include a primary key field; this field must be an integer, and should be named SEQNO.
When the EXO API is installed, the Extra Fields section contains two additional subsections:
- Manage Custom Tables – this section allows you to set up the list of custom tables that Extra Fields can be added to.
- Custom Tables (API) – this section allows you to add Extra Fields to the custom tables. It is the same as the Extra Fields screen for core EXO Business tables, but the Table name dropdown contains only tables that have been added in the Manage Custom Tables section.
To add Extra Fields to a custom table:
- Open EXO Business Config and go to the System > Extra Fields > Manage Custom Tables section.
- Add the custom table:
- If you have already created the custom table in SQL Server, click Add Existing Table and enter the table name to create a new entry in this section.
- If the table does not already exist, click Create Table and enter a name for the custom table. The table is created in the EXO Business database and a new entry for it appears this section.
- Go to the Extra Fields > Custom Tables (API) section and click New. The Table name dropdown contains all tables that you have added on the Manage Custom Tables section.
- Add and configure Extra Fields on the custom table in the same way as you would on EXO Business core tables.