Expense Types drive requests and claims, prompting for additional information and enforcing required fields. In this way, Expense Types are central to the configuration of Expense User functionality. Expense Types are also core to the Purchase Order (PO) creation process in B1, linking the Expense Requests and Expense Claims to the appropriate GL accounts on the service POs.

There are several general areas of configuration to consider with Expense Types:

  1. Manage expense type categories
  2. Manage expense types
  3. Configure additional fields per expense type
  4. Optionally configure new Expense Type UDFs for use as additional fields

Overview

Expense Types drive requests and claims, prompting for additional information and enforcing required fields. In this way, Expense Types are central to the configuration of the Expense User functionality. Expense Types are also core to the PO creation process in B1, linking the Expense Requests and Expense Claims to the appropriate GL accounts on the service POs.

Expense Types are grouped together using Expense Type Categories. Expense Type Categories allow you group together Expense Types that might be configured with similar GL Segment/Dimension attributes, or a specific GL Account. This allows for separate GL Account allocations to be selected for the same type of expense depending on the category.

For example, a hotel expense submitted by a sales person might be assigned to a different GL Account than a hotel submitted by an Executive employee; to accomplish this, two separate “hotel” expense types can be configured under the categories “Sales” and “Executive”, each configured to use their proper GL Account details.

While Employee Portal comes with some common Expense Types out of the box, typically these will need to be configured to fit your specific business needs. To ensure the appropriate Expense Types and Categories are available, we recommend taking time early in the implementation to determine the necessary Expense Types, Expense Type Categories, additional fields and related GL Accounts that will be required.

Add/remove/edit Expense Type Categories

Expense Type Categories are managed using InterConnect Manager Add-On (see Starting InterConnect Manager Add-On). Under the InterConnect Manager AddOn menu there is a Manage Expense Types Categories menu entry that launches the Expense Types Categories dialogue, shown below.

InterConnect Manager AddOn - Expense Types Categories
InterConnect Manager AddOn - Expense Types Categories

From this screen, you can Add (1), Remove (2), or change how categories are sorted (3, 4).

Add (1), Remove (2), or sort (3, 4) Expense Types Categories.
Add (1), Remove (2), or sort (3, 4) Expense Types Categories.

When adding or editing a category, the Name must be unique, and should be meaningful to an Employee who will select the category.

Expense Type Category Name must be unique.
Expense Type Category Name must be unique.

Once the category is added, it can be edited using the golden arrow, or sorted using the arrow on the right-hand side. When categories are assigned to Expense Types, the Expense Types are grouped together and can be filtered by selecting the desired category.

Add/remove/edit Expense Types

Expense Types are managed using InterConnect Manager Add-On (see Starting InterConnect Manager Add-On). Under InterConnect Manager Add-On menu there is a Manage Expense Types menu entry that launches the Expense Types dialogue, shown below.

InterConnect Manager AddOn - Expense Types
InterConnect Manager AddOn - Expense Types
Manage Expense Types dialogue.
Manage Expense Types dialogue.

From here, Expense Types can be added or removed. You can also drill down to edit an existing Expense Type using the golden arrow.

Edit Expense Type
Edit Expense Type

The Edit dialogue (see above screenshot) can be configured as described below:

Edit Expense Types - Fields
Field Definition
Name (1)

This is the name of the Expense Type, which is displayed to users. The name field needs to be unique and should be intuitive for the end-user to understand the nature of the Expense Type.

Category (2)

This determines which category the Expense Type is assigned to. When the user selects a category, only Expense Types that are assigned to the selected category will be displayed.

Active (3)

When checked, this Expense Type will display for users. This flag allows you to remove an Expense Type from the list of choices available on the web without having to delete the Expense Type entirely, which would impact older requests and claims that reference it.

Help Text (4)

This is the help text or hint that is provided to the Employee Portal user on the Add/Edit Line for Expense Requests and Expense Claims. Use this field to provide direction to the user on when to use this particular type, and any guidance on policies concerning it. For example, the Per Diem Expense Type should have help text that describes the amounts that can be claimed under different circumstances: “$XX per full day of travel (XX breakfast, XX lunch, XX dinner)”.

Help Text, as viewed by an Employee Portal user.
Help Text, as viewed by an Employee Portal user.
Expense Type Fields (5)

See Configure Additional Fields for Expense Type below.

GL Account (6)

The GL Account fields display the account ID and account name of the default GL account associated with the Expense Type. Advanced GL Account Determination rules can be applied to select an alternative GL Account instead of the default. See GL Mapping Config for more details on advanced GL Account Determination.

The assigned GL Account will be assigned to the detail line on an Expense Request or Expense Claim (unless advanced determination rules are applied) when the PO is created. When choosing a default, a separate window providing a list of configured GL Accounts is presented to the administrator. From here, the administrator can select an existing GL Account or even initiate the creation of a new account, which will be linked back to the Expense Type. The choice of GL Account to assign to Expense Types is a decision based on the chosen structure of the company’s Chart of Accounts. This decision should be made by the company’s B1 consultant or an informed administrator within the company.

Choose from List of GL Accounts
Choose from List of GL Accounts

Configure Additional Fields For Expense Type

In addition to a common set of fields that are presented for every expense claim and request line (Expense Type, Vendor, Amount, Comments, etc.) Expense User allows additional fields to be configured per Expense Type. These additional fields are actually implemented as UDFs that have been added to the Lines UDTs of the Expense Request and Expense Claim UDOs (the ZEDS_EXPREQLINES and ZEDS_EXPFORMLINES tables respectively).

The Additional Field functionality uses the same set of reusable UDFs across the various Expense Types. The meta-data managed in the add-on allows those fields to mean different things for different Expense Types. We’ll discuss below how additional UDFs can be added to the available list of reusable fields.

On the web side, the UDFs are rendered based on their data types. Specifically:

  • Memos - Text areas
  • Numbers - Text box that only allows numbers to be entered
  • Dates - Text box with a date picker control
  • Text with valid values - A drop down list with choices based on the UDF valid values
  • Text - Text box
  • Any other type - Text box

The Additional Fields are managed in a table at the right of the Expense type - Edit screen, as shown in the screenshot below.

Additional Fields section of the Edit Expense Type dialogue.
Additional Fields section of the Edit Expense Type dialogue.

From here you can:

  • Add or remove expense types using the + and - buttons.
  • Drill down to edit existing expense types using the golden arrow.
  • Change the order of the fields that will be presented to the web user, using the up and down arrow buttons.

When you add a new Additional Field or drill down into an existing field you are presented with the following dialogue, as described below.

Edit Additional Field
Edit Additional Field
Edit Additional Field - Fields
Field Definition
Field Name (1)

Use this field to select which of the UDFs to use as the additional field. The list of available fields is set on initial installation but can be extended (see Configure New UDFs as Additional Fields below).

Label (2) This is the display text on the Employee Portal. It will be displayed to Employee Portal users when they access add line or edit line screens after selecting this Expense Type. This is what allows the same field to mean different things for different expense types.
Is Required (3)

If checked, the web application requires a value be provided from users who select this Expense Type. The same underlying UDF can be required for one expense type but not for another. As a result, the underlying UDF must be nullable (see Configure New UDFs as Additional Fields below).

Configure New UDFs as Additional Fields

All fields that are listed in the Additional Fields section are configurable. The fields themselves are UDFs on the Expense Request Lines and Expense Claim Lines UDTs respectively. Registering these UDFs is accomplished by adding a record to a UDT that manages the available list of additional fields. Configuring a new field has the following requirements:

  • Create the new UDF: The UDFs are added to the ZEDS_EXPFORMLINES UDT for Claims and the ZEDS_EXPREQLINES UDT for requests.
    • The fields must be added to both tables with exactly the same name and meta-data configuration including type, length, valid values, etc.
      • You cannot add the UDF to just one of the tables; you must add it to both
      • The types supported in this release are Alpha, Alpha with Valid Values, Alpha as Text (treated as a memo field), Numeric, Date/Time (date only), Units and Totals (treated as numbers).
  • Register the new UDF: Once the field has been added to the appropriate tables, it needs to be registered in the ZEDS_AVAILUDFS UDF.
    • Make sure the CODE and NAME fields are unique.
      • Set U_Type to Line. The header option is not supported at this time. Planned future support for configurable UDFs at the header level will use this option.
      • The U_FieldName needs to contain the name of the UDF added to the Lines tables. It should include the U_ portion of the name.