The following list provides information about the advanced properties defined in the config.json file. The config.json file contains advanced runtime parameters that an administrator may choose to configure or modify the user interface.
The default location for the configuration file is [drive:]\Program Files\Apache Software Foundation\[Tomcat Installation]\webapps\apapproval\packages\les-rdk-ap-invoiceapproval\src\config.
Refer to the property descriptions listed below in conjunction with the config.json file.
Several properties have similar elements and configuration objects. Elements described once are not stated again to avoid repetition. Only settings that require additional instructions are included in this section.
The following properties must have “mode” specific configuration mapping. For example, in your configuration file, under "dataProvider" if the value of "mode" is "pcr," the following properties must have one configuration for the "pcr" element.
dataProvider
This property affects how data provider unit is represented in all views. Valid entries include the following sub-elements.
- demoMode.
- fpaServiceDomeMode.
- mode.
- glAutoSaveIntervalInSeconds.
- pcr
currencyConfig
This property affects how a currency unit is represented in all views. Valid entries include the following sub-elements.
- specifier. Defines the source of currency information. It may represent a literal value or a value that is extracted from an invoice header. A blank value disables currency handling.
- evaluationRequired. Marks whether to interpret a specifier as a literal or an outsourced value. A true value means the specifier needs to be extracted from the invoice header where a false value represents that the specifier is literal.
- isPrepended. Represents whether the currency specifier should be prepended or appended to amount.
lazyBehavior
This property affects how invoices are loaded from the server before they are rendered in all views.
Valid entries include the following subelements.
- isActive. You can set this value to true or false to enable or disable lazy loading functionality. If disabled, all invoice items from the server are loaded at a time.
- phoneView. Controls how invoice items are loaded in phone view, with the configuration object, "incrementalFetchLimit." Initially, based on screen size, a responsive mechanism dynamically loads the invoice items into the view as soon as the application opens. The "incrementalFetchLimit" object defines how many additional invoice items are loaded simultaneously as the user scrolls down to the end of the list.
- gridView. Controls how invoice items are loaded in grid view, with the configuration object, "incrementalFetchLimit."
- listView. Controls how invoice items are loaded in list view, with the configuration object, "incrementalFetchLimit."
- cardView. Controls how invoice items are loaded in card view, with the configuration object, "incrementalFetchLimit."
phoneView
This property affects the list view appearance on mobile devices.
Valid entries include the following subelements.
- emphaticFields. Controls the two main fields that are emphasized in the UI. It has two configuration objects, "primary" and "secondary." The primary configuration object controls the UI text that is emphasized in bold, whereas, the secondary configuration object controls the regular emphasized UI text.
- supportingFields. Determines what invoice related metadata should appear in the UI for an invoice in the Pending state. Two valid configuration objects include "expediteFlag" that denotes whether an invoice needs immediate action, and "dueDate" that denotes due date for processing an invoice.
- summary. Determines the total number of invoice fields to show in the UI. It can contain as many configuration objects as you need.
- actionMarker. Determines the invoice related metadata that appear in the UI for an end user after the invoice is approved or rejected.
- actionButtons. Controls how the Approve and Reject buttons appear in the UI for the invoices in the Pending state. Contains two configuration objects, "hasIcon" and "hasText."
gridView
This property affects the grid view appearance on desktop devices.
Valid entries include the following sub-elements.
- columns
- actionButtons
listView
This property affects the list view appearance.
Valid entries include the following subelements.
- emphaticFields
- supportingFields
- summary
- actionMarker
- actionButtons
cardView
This property affects the card view appearance on desktop devices.
Valid entries include the following subelements.
- emphaticFields
- supportingFields
- summary
- actionMarker
- actionButtons
invoiceDetailsView
This property affects the invoice details view appearance. It has elements that include "header," "glLineFields," and "glLineSummaryFieldsForMobile." Invoice details data is rendered in the UI in two different layouts, namely tabular and bilateral column responsive style, based on available space and the type of device used.
Valid entries include the following elements.
- header
- emphaticFields
- supportingFields
- summary
- actionMarker
- allHeaderFields. Defines a mapping of header fields and associated locale keys. The lablel corresponding to the locale key is displayed in the UI.
- glLineFields. Controls what invoice details data should be shown in the UI and what portion should be editable.
- glLineSummaryFieldsForMobile. Controls what invoice details data should be shown initially on the mobile devices.
- allowSaveIfValidationErrorExists. Controls whether the modified data is allowed to be saved based on the permissible validation status.
- allowSaveIfValidationWarningExists. Controls whether the modified data is allowed to be saved based on the permissible validation status.
documentView
This property affects the document details view appearance. It controls what document details data is shown in the UI. It can have multiple "propertyGroups" definitions where each "propertyGroups" is a set of several document properties with a header. Each "propertyGroups" can have three subelements that include "isActive" that controls whether to show this property group, "header" that controls the header text for the particular property group, and "properties" that controls how many document properties are shown under the particular property group.
actionView
This property affects the action dialog view appearance. Valid entries include the following elements.
- commentCharacterLimit. Determines the maximum number of characters, including white spaces, allowed inside the comment field. Negative value implies unlimited characters.
- commentRegexCompatible. Determines the regular expression used to validate free text comments while approving or rejecting an invoice.
- preventApproval. Controls whether the invoice is allowed to be approved based on the permissible validation status.
- preventRejection. Controls whether the invoice is allowed to be rejected based on the permissible validation status.