B Appendix: Personality Maintenance and Config Paths
This appendix explains how the store personalities set up in Oracle Retail Xstore Office Cloud Service are used to create the config path properties. See Profile Management for more information about setting up store personalities.
Config Path Retrieval Process
An empty configPath.properties
file is part of the POS overlay and can be found in xstore/configPath.properties
after the installation. When Xenvironment is started for the first time after Xstore Point of Service is installed, the configPath.properties
file is copied to environment/res/data/configPath.properties
.
When Xenvironment is used to start Xstore POS or Xstore Mobile (including during Xenvironment startup), Xenvironment will contact Xcenter to check for any updates to the config path settings. If any changes are found, the file in environment/res/data
will be updated. Xenvironment will update copies of the file in xstore/configPath.properties
and xstore-mobile/configPath.properties
. Before retrieving updates, Xenvironment will read the values of xstore.location.mobile.workstationId.range.start
and xstore.location.mobile.workstationId.range.end
from xstore-mobile/system_mobile.properties
. This range will be forwarded to Xcenter to retrieve settings for mobile registers in addition to the current register.
Retrieving updates to configPath.properties
from Xcenter is enabled by default. To disable the feature, the following setting can be added to the Xenvironment overlay in version1/actions.properties
:
chain.RETRIEVE_CONFIG_PATH.disabled=true
If set to true, Oracle Retail Xstore Point of Service will use its current values, for more information, see the If Not Using Xcenter to Get the Config Path section.
Retrieving config path properties from Xcenter will overwrite any of the same-named properties that already were present in the configPath.properties
file.
-
For the desktop application, the global config path properties and the workstation overrides property for the specific workstation the system represents are retrieved from Xcenter and written to the
configPath.properties
file. -
For the Xstore Mobile server, the global config path properties and the workstation overrides properties for the entire range of mobile device workstations is retrieved from Xcenter and written to the
configPath.properties
file. The range of mobile device workstation IDs is defined in thesystem.propertie
s file using theproperties xstore.location.mobile.workstationId.range.start
andxstore.location.mobile.workstationId.range.end
.
At Oracle Retail Xstore Point-of-Service Startup
When Oracle Retail Xstore Point of Service starts, it sends a request to the URL that contains parameters indicating the organization ID, store number, and workstation ID of the machine that is sending the request. (See Config Path Retrieval Process.)
In Xcenter, the config path lookup end-point looks up the store personality based on those parameters and assembles the config path properties from the assigned personality and landscape. The response from Xcenter contains a serialized Java Properties object that contains the appropriate values.
Note:
If no personality and landscape are assigned to the store, then the specific properties will not be present. Note that in this case, blank values will be used for the xstore.config.path.base.features
and xstore.config.path.overrides.workstation.#
properties.
Once the property values from Xcenter are obtained, they are compared to the existing values from the configPath.properties
files. If either of the property values from Xcenter are different than the property values from the file, the values from Xcenter will be written to the configPath.properties
file, the last.updated.date
property will be set to the current date and time, and Oracle Retail Xstore Point of Service will shut itself down and be restarted by the wrapper.
Till/Register Data
Also during the startup process, till/register data from Xcenter is synchronized with Oracle Retail Xstore Point-of-Service's lead register. Any till/register data that was updated on the store primary is also updated on other workstation databases when the nightly backup and restore process occurs (in an off-line scenario). With this process, it is no longer necessary to manually run till/register setup scripts before starting up the lead register.
Processing Overview
-
Oracle Retail Xstore Point of Service starts up on the lead register or store primary.
-
During the startup process Oracle Retail Xstore Point of Service compares the till/ register data from Xcenter and synchronizes the data on the store primary.
The following data objects are synchronized:
-
Store record
-
Tax location mapping record
-
Corresponding org hierarchy records
-
Workstation records
-
Tender repository records (till and register records)
-
Inventory buckets
-
Inventory location buckets
-
Xcenter Config Path Properties Assembly
This section describes the assembly of the config path properties.
Global Configuration Path Properties
Global config path elements are configurations that are loaded once for the entire application and do not differ from workstation to workstation. They define the standard features and functionality for instances of the application.
The global config path is made up by the elements of the GlobalConfigPathElement
enumeration. This enumeration contains both, the individual global config element definitions as well as the ability to build the currently applicable global config path.
The enum instances BASE_FEATURES
and GLOBAL_CONFIG_PATH_EXTENSIONS
point to properties in the configPath.properties
file. The instances substitute their values with the properties xstore.config.path.base.features
and xstore.config.path.global.extensions
when building the global config path.
For more information about the properties xstore.config.path.base.features
and xstore.config.path.global.extensions
, see the xstore.config.path.global.extensions section and the xstore.config.path.base.features section below.
For more information about all available base global config path elements, see the Oracle Retail Xstore Point of Service Technical Guide.
xstore.config.path.global.extensions
Config path global extensions indicate non-standard config directories that are applied globally and are included in the config path between static retailer global overrides (version1) and Xstore Office-controlled global overrides (MASTER/DEFAULT). The config path global extensions are controlled by the xstore.config.path.global.extensions
property in the configPath.properties
file. Since the global extensions property is more of a hidden feature, the property is not maintainable through Xstore Office and must be set manually on any workstation that uses it.
xstore.config.path.base.features
Base features represent config path elements that are used to enable a certain functionality or feature within the application such as loyalty, a payment processor or integration with external applications such as Customer Engagement, Order Broker, and others.
The base features can be enabled and disabled through the Personality Maintenance feature in Xstore Office. For more information on Personality Maintenance, see the Personality Maintenance section.
The table below lists all Xstore Point of Service base features
that can be enabled and disabled as well as their corresponding config
path entries. The enabled base features are represented in the xstore.config.path.base.features
property in the configPath.properties
file.
Table B-1 Base Features and Config Path Entries
Feature | Sub-Feature | Config Path Entries |
---|---|---|
Loyalty |
NA |
:cust/loyalty |
Loyalty Awards |
:cust/loyalty/award |
|
Customer Engagement |
NA |
:relate |
Gift Registry |
:cust/registry |
|
Use IDCS (Identity Cloud Service) for Authorization |
:idcs/relate |
|
Order Broker (Cloud) |
NA |
:order:locate |
Use IDCS (Identity Cloud Service) for Authorization |
:idcs/locate |
|
Order Management System |
NA |
:crosschannelreturn:serenade |
Use IDCS (Identity Cloud Service) for Authorization |
:idcs/serenade |
|
: |
||
Enterprise Inventory Cloud Service(EICS) |
:sim:sim/$FORM_FACTOR$ |
|
Use IDCS (Identity Cloud Service) for Authorization |
:idcs/sim |
|
Retail Extension Module (RXM) |
NA |
:rxm:rxm/$FORM_FACTOR$ |
Experian Address Verification |
NA |
:avs:qas |
Xcommerce |
NA |
:xcommerce |
Opera Guest Services |
NA |
:opera |
Microsoft SQL Server Support |
NA |
:dtv/sql/mssql |
EFTLink Authorizations |
NA |
:authprocessor/eftlink |
EFT Link Gift Cards |
:authprocessor/eftlink/giftcard |
|
24 x 7 (No Store Closing) Functionality |
NA |
:24x7 |
Item Selection Grid (cannot be used with Self Checkout) |
NA |
:buttonmatrix |
Financial Daily Report |
NA |
:dailyreport |
Invoice |
NA |
:invoice |
Global Blue Tax Free (cannot be combined with Planet Tax Free) |
:invoice/globalblue |
|
Panet Tax Free (cannot be combined with Global Blue Tax Free) |
:invoice/fintrax |
|
Luxury receipts |
NA |
:luxuryreceipt |
Taxed vouchers |
NA |
:vouchers |
Workstation Overrides Config Path Properties
The elements for workstation-level configuration overrides are controlled by another property, or a set of properties for mobile servers in the configPath.properties file. Since one of these properties indicates all of the override elements for a particular workstation, each override path property name contains the workstation ID to which it applies. The primary purpose of workstation overrides is to support profile group/element pairs that are defined in Xstore Office as part of the profile maintenance. Profile groups and elements are defined and associated with personalities, landscapes, and store personalities in Xstore Office and then each register (or mobile server) in a store downloads its own workstation override config path properties from Xcenter just prior to startup.
xstore.config.path.workstation.overrides.X
The properties containing the workstation overrides config path are xstore.config.path.workstation.overrides.X
where X is the workstation ID to which the property applies. The workstation overrides property only contains the profile group and element pairs that make up the landscape for a particular workstation.
The following configuration files support workstation-level overrides. All other configurations will load files only from global config path elements.
-
SysConfig.xml
-
ActionConfig.xml
-
OpChainConfig.xml
-
MenuConfig.xml
-
PromptConfig.xml
-
DataFieldConfig.xml
-
forms" directory-based configurations
-
FieldLayoutConfig.xml
-
FieldDefinitionConfig.xml
-
FontConfig.xml
-
ListViewConfig.xml
-
ContextConfig.xml
-
"componentPropertySet" directory-based configurations
-
translations.properties
xstore.config.path.overrides.store.Y
The config path property, xstore.config.path.overrides.store.Y, where Y is the store number, is created. This property contains the profile group and element pairs that make up the personality for a particular store. The files that are located in any of the config path entries defined in this property will be loaded at the global (application) level.
Oracle Retail Xstore Point-of-Service Config Path Assembly
The default file Xstore Point of Service uses for its config path properties is called configPath.properties
. The file is located in the root directory on an installed register. As mentioned in the section above, the following three properties form the config path for a given register:
-
xstore.config.path.base.feature
-
xstore.config.path.global.extensions
-
xstore.config.path.overrides.workstation.[workstation ID]
If Not Using Xcenter to Get the Config Path
If retrieval of the config path from Xcenter is not being used the config path is still assembled in the same manner outlined above. The difference is that the properties xstore.config.path.base.features
and xstore.config.path.overrides.workstation.#
(where # is a workstation ID) are not retrieved from Xcenter.
Note:
If Oracle Retail Xstore Point of Service ever used Xcenter to obtain the config path, and the configPath.properties
file contains properties those properties will continue to be used even if updating from Xcenter is turned off. They will no longer be updated from Xcenter.
Oracle Retail Xstore Office Cloud Service Security Settings
Table B-2 Oracle Retail Xstore Office Cloud Service Security Settings
Privilege | Description |
---|---|
CFG_PERSONALITY_MAINTENANCE |
Personality maintenance privilege. |
CFG_PROFILE_MANAGEMENT |
Top Level profile management menu privilege. |
CFG_LANDSCAPE_MAINTENANCE |
Landscape maintenance privilege. |
CFG_PROFILE_GROUPS |
This privilege was renamed from ADMIN_PROFILE_GROUPS in previous versions. |
CFG_STORE_PERSONALITIES |
Controls access to the store personality maintenance page. |
Resource Bundle Path Consolidation
Resource bundles are loaded based on the config path instead of separate bundle-specific paths. When upgrading to a new Oracle Retail Xstore Point-of-Service version, move any resource bundle files to a config path location or adjust the config path accordingly.
-
Translations (was dtv.pos.i18n.translation)
-
Phone numbers (was dtv.pos.i18n.phone)
-
Hardware (was dtv.pos.i18n.hardware)
-
Help (was dtv.pos.i18n.help)
-
Email (was dtv.pos.i18n.email)
-
Format display (was dtv.i18n.formatDisplay)
Database Tables
Refer to the Oracle Retail Xstore Office Cloud Service Database Dictionary Guide for a complete list of the Oracle Retail Xstore Office Cloud Service database tables.
Table B-3 cfg_landscape
Column | Valid Values | Description |
---|---|---|
|
|
Store's organization identifier. |
|
|
A unique identifier for a landscape. |
|
|
A description of the store landscape that is assigned by the user. |
|
|
A comment field for more details. |
Table B-4 cfg_landscape_group
Column | Valid Values | Description |
---|---|---|
|
|
Store's organization identifier |
|
|
The unique ID of the landscape that this register range belongs to. |
|
|
The profile group ID that this range is assigned to. |
|
|
Designates the sort order of the groups ( |
Table B-5 cfg_landscape_range
Column | Valid Values | Description |
---|---|---|
|
|
Store's organization identifier. |
|
|
The unique ID of the landscape that this register range belongs to. |
|
|
The profile group ID that this range is assigned to. |
|
|
The sequence number of the range for the landscape. |
|
|
The profile element ID that this range is assigned to. |
|
|
The start of the register range. |
|
|
The end of the register range (if only one register is in the range, then this will be the same as range_start). |
Table B-6 cfg_personality
Column | Valid Values | Description |
---|---|---|
|
|
Store's organization identifier. |
|
|
A unique identifier for a store's personality. |
|
|
A description of the personality that is assigned by the user. |
|
|
A comment field for more details. |
Table B-7 cfg_personality_element
Column | Valid Values | Description |
---|---|---|
|
|
Store's organization identifier. |
|
|
The unique ID of the personality that this personality profile belongs to. |
|
|
The profile element ID with which this personality is associated. |
|
|
The profile group ID with which this personality is associated. |
|
|
The order of elements in the list that will be followed when generating the new configuration path for the store that is assigned to this personality. |
Table B-8 cfg_store_personality
Column | Valid Values | Description |
---|---|---|
|
|
Store's organization identifier. |
|
|
The unique ID of the personality that this personality profile belongs to. |
|
|
The unique ID of the landscape that this register range belongs to. |
Table B-9 cfg_personality_base_feature
Column | Valid Values | Description |
---|---|---|
|
|
Store's organization identifier. |
|
|
A unique identifier for a store's personality. An alphanumeric field used to enter the short name of the personality. |
|
|
A unique identifier for a feature. |
|
|
Sort order when displaying code values. |