11 Size Profiles

This chapter describes the Size Profiles (SP) Cloud Service module.

Overview

Size Profiles (SP) is a module under AIF Profile Sciences and is used to estimate the distribution of demand across different sizes (size profile) for different merchandise and location levels.

Size profile is estimated at different levels of merchandise and location. The lowest level of estimation is style-color (for merchandise) and store (for location). Size profiles may also be estimated at higher levels of aggregation on both the merchandise and location dimensions (for example, at subclass-store or style/color-store cluster), depending on the retailer's requirements. Irrespective of the level of estimation, the final output for size profiles is at the lowest level (style-color/store), and size profiles are shown at the lowest level in the UI.

Data Requirements

Size Profiles relies on the following data elements. These must be provided via text files, which are then loaded.

Hierarchy Data

The three types of hierarchies are Location Hierarchy, Merchandise Hierarchy, and Calendar Hierarchy.

  • Location Hierarchy. An example of location hierarchy is: CHAIN ' COUNTRY ' REGION ' DISTRICT ' STORE.

  • Merchandise Hierarchy. An example of merchandise hierarchy is as follows: CHAIN ' COMPANY/BANNER 'DIVISION ' DEPARTMENT 'CLASS ' SUBCLASS ' STYLE ' COLOR ' SIZE (SKU). The Size Profiles application is used for fashion apparel. Therefore, it is expected that the extended merchandise hierarchy is provided, that is, Style and Color are provided through the relevant interfaces.

    The STYLE, COLOR and SIZE SKUs are expected to be provided in the W_PRODUCT_DS interface, while the levels between CHAIN and Subclass are provided via W_PROD_CAT_DHS interface. In addition, there must be consistency between the levels provided when using an extended hierarchy. W_PRODUCT_ATTR_DS is used to indicate the relationship between Style, Style/Color, and Style/Color/Size for an extended hierarchy.

    Here are the specific fields:

    PRODUCT_ATTR13_NAME = PROD_NUM for the Style (for example, 0000190086820900)

    PRODUCT_ATTR14_NAME = PROD_NUM for the Style/Color (for example, 190086834203)

    PRODUCT_ATTR15_NAME = PROD_NUM for the Style/Color/Size (for example, 1975699).

    The value of PROD_NUMs is the same as the value in the W_PRODUCT_DS.PROD_NUM interface.

    Here is what this looks like:

    Table 11-1 Hierarchy Data

    PROD_NUM PRODUCT_ATTR13_NAME PRODUCT_ATTR14_NAME PRODUCT_ATTR15_NAME

    STYLE_PROD_NUM

    STYLE_PROD_NUM

    STY/COL_PROD_NUM

    STYLE_PROD_NUM

    STY/COL_PROD_NUM

    STY/COL_SIZ_PROD_NUM

    STYLE_PROD_NUM

    STY/COL_PROD_NUM

    STY/COL_SIZ_PROD_NUM

    Note:

    For Size Profiles Cloud Services, the Extended Product Hierarchy must be loaded.

    Note:

    The mapping of columns and the example mentioned above for product hierarchy can be different, depending on the source of the data. For example, if the data is loaded from RMS Cloud, the mapping will be as follows:

    • PRODUCT_ATTRPRODUCT_ATTR14_NAME = sku ID (a.k.a. style/color/size)13_NAME = sku parent ID (a.k.a.style)

    • PRODUCT_ATTR14_NAME = sku ID (a.k.a. style/color/size)

    • PRODUCT_ATTR16_NAME = differentiator ID (for example color, or any differentiator that is used in-between style and sku).

  • Calendar Hierarchy. This is one of the core hierarchies. The retailer can specify the calendar depending on their business requirements (for example, fiscal calendar).

Sales Data

Historical sales data is required at the sku-store-week level. If the sales transaction data is provided, it will be aggregated by the application to the sku-store-level. It is necessary that the sales transaction data be provided at the lowest level of product hierarchy (that is, the level in RSE_HIER_LEVEL that has LEAF_NODE_FLG = 'Y' for HIER_TYPE_ID = 3).

Alternatively, data can be provided directly at this level using the RSE_SLS_PR_LC_WK_STG interface. When the system is in production, the latest incremental sales data is obtained as part of the batch process.

Inventory Data

Two methods are available for generating size profiles. For the Optimization method, historical inventory must be provided at the sku-store-week level. To generate profiles using the Normalize method, inventory data is not required.

Product Images Data

Product images that are available on a customer-hosted web server can be viewed in the Size Profiles UI. The W_RTL_PRODUCT_IMAGE_DS.dat interface contains a column called PRODUCT_IMAGE_ADDR, which can contain the full URL to an image of the product. This URL must be in the following format:

http[s]://servername[:port]/location/filename.extension

For example:

PRODUCT_IMAGE_NAME = imagename.png

PRODUCT_IMAGE_ADDR = http://hostname/url/imagename.png

PRODUCT_IMAGE_DESC= Short description of the image

The Size Profiles application running in the cloud does not directly access these images, so there is no need to expose these images outside of the customer's firewall. As long as the user of the SP application has access to the URL while running the SP application, then the user's web browser will be able to resolve the URL and retrieve the images for display when the user chooses this option. The images must be in a file format that the web browser can display. Since the images shown in the UI are small, these images do not need to be high quality images. The size of the image files will affect the time it takes to render them.

Season

The selected season for the run is used in two ways:The historical data period is set based on the start/end date of the selected season, one year ago. In addition, size profiles are generated for products that are selected for the run and are mapped to the selected season.

The season definition can be loaded through the following interfaces: W_RTL_SEASON_D and W_RTL_PHASE_D. In addition, the W_DOMAIN_MEMBER_LKP_TL should have data for DOMAIN_CODE of SEASON and PHASE. The mapping between items and season is also required and can be loaded through W_RTL_SEASON_PHASE_IT_D.

Size and Size Range Data

The mapping between SKUs and sizes, as well as the mapping between sizes and size ranges, are both required. This data can be provided through W_RTL_ITEM_GRP1_D, W_RTL_DIFF_GRP_D and W_RTL_DIFF_GRP_D_TL. It is also necessary to set the value of SPO_DIFF_TYPE in RSE_CONFIG to be the same as the diff_type that is in W_RTL_DIFF_GRP_D for size attribute.

In addition to these two interfaces, it is expected that the column prod_attr_grp_id will be populated in W_RTL_ITEM_GRP1_D for the PROD_GRP_ TYPE that is associated with Size.

For the jobs that must be run to load data to above tables, see "Batch and Ad-Hoc Jobs".

Note:

It is necessary that all attributes, including the Size attribute, are provided at the lowest level of product hierarchy (that is, the level in RSE_ HIER_LEVEL that has LEAF_NODE_FLG = Y).

Configurations

The configurations that are used by the Size Profiles science algorithm are set when creating a run In the UI. In addition, a few global configurations can be viewed and overriden using Strategy & Policy Management under Control & Tactical Center. In this dashboard, you navigate to Manage System Configurations, select ALL for application, RSE_CONFIG for table, and filter the table by APPL_CODE=SPO. For details, see the “Control & Tactical Center” chapter in the Oracle Retail AI Foundation Cloud Services User Guide.

Table 11-2 Configurations

PARAM_NAME PARAM_VALUE DESCR
DEFAULT_APPL_USER SPO_BATCH_USR User identifier to be used for batch activities that require user tracking.
RECENT_RUNS_DAYS_BACK 30 Number of days following creation after which successful runs do not appear in corresponding left-hand-side UI panel.
SPO_DIFF_TYPE S Diff Type value to be used for SIZE diff
SPO_DIFF_TYPE_COLOR C Diff Type value to be used for COLOR diff
SPO_EXPORT_FETCH_SIZE 1000 Fetch Size for exporting records using SPO User Interface Export To Excel.
SPO_EXTRA_PROFS_LOC_MAX_LVL 3 Level Identifier for the highest level of the Location Hierarchy to be used in blow-out of profiles routine. Default to 3 Area Level
SPO_EXTRA_PROFS_LOC_MIN_LVL 3 Level Identifier for the lowest level of the Location Hierarchy to be used in blow-out of profiles routine. Default to 3 Area Level
SPO_EXTRA_PROFS_MAX_LVL 5 Level Identifier for the highest level of the Product Hierarchy to be used in blow-out of profiles routine. Default to 5 Class Level
SPO_EXTRA_PROFS_MIN_LVL 7 Level Identifier for the lowest level of the Product Hierarchy to be used in blow-out of profiles routine. Default to 7 Class Level.
SPO_LOC_HIER_PROCESSING_LVL 6 Level Identifier for the level of the Location Hierarchy at which we process Size Profile. Default 6 is to process at STORE Level.
SPO_LOC_HIER_TYPE 2 Hierarchy Type Identifier for the Location Hierarchy Type.
SPO_PROD_HIER_PARENT_LVL 8 Level Identifier for the level of the Product Hierarchy of the SKU-Parent. Default 8 is the STYLE-COLOR Level.
SPO_PROD_HIER_PROCESSING_LVL 9 Level Identifier for the level of the Product Hierarchy at which we process Size Profile. Default 9 is to process at SKU Level.
SPO_PROD_HIER_TYPE 3 Hierarchy Type Identifier for the Product/Merchandise Hierarchy Type.
SPO_PROF_EXP_LOC_LVL 4 Mark USER_BY_AIP=Y Where active Season Size Profiles created at Store level in Export DB view
SPO_PROF_EXP_MERCH_LVL 6 Mark USER_BY_AIP=Y Where active Season Size Profiles created at Subclass level in Export DB view.
SPO_PURGE_ALL_RUNS N Indicates to clean up all run data.
SPO_PURGE_RETENTION_DAYS 30 Number of days to wait before permanently deleting run data.
SPO_SALES_TYPE RPC Indicates the type of historical sales that goes into all stages of size profile generation. Valid values are RPC(regular+promo+clearance)

Data Output

The following exports are available under ORASE_WEEKLY_EXTRACT.ZIP. The content of the export files will depend on the source of data (whether it’s according to the data format in RMS or not).

Table 11-3 Data Output Exports

Export File Name Value of EXTENDED_HIERARCHY_SRC in RSE_CONFIG View Name Content
spo_size_profile.csv RMS SPO_SZ_PROF_EXPORT_VW Approved profiles at higher level. This can be used by external applications such as Product Lifecycle Management (PLM). The DIFF type and DIFF group data in MFCS is used in this file.
spo_size_profile.csv NON-RMS SPO_SZ_PROF_EXPORT_VW Approved Profiles at lowest level (style-color/location) and higher level(s).
d1itpt.01 RMS SPO_EXPORT_ALLOC_VW Approved Profiles at lowest level (style-color/location). The DIFF type and DIFF group data in MFCS is used in this file. This file is integrated into Oracle Retail Allocation Cloud Service
spo_gid_label RMS SPO_EXPORT_ALLOC_GID_FILE_VW The GID information which is required for integration with Oracle Retail Allocation Cloud Service.
spo_custom_export.csv NON-RMS SPO_EXPORT_DATA_VW Size profiles at product group level as defined in rse_prod_attr_group.

Batch and Ad-Hoc Jobs

The following batch and ad-hoc jobs are responsible for loading the size, size range, and season data into SPO.

Table 11-4 Data-Loading Batch and Ad-Hoc Jobs

JobName Description RmsBatch ParameterValue Modules
SPO_MASTER_ADHOC_JOB Description Run SPO master script spo_master.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_ETL_START_JOB Start job for size related ETLs rse_process_state_update.ksh SPO_SIZE_ETL_PROCESS Start SPO_Batch
SPO_SIZE_ETL_SETUP_JOB Setup job for size ETL spo_size_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_ETL_PROCESS_JOB Process job for size ETL spo_size_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_ETL_END_JOB End job for size related rse_process_state_update.ksh SPO_SIZE_ETL_PROCESS End SPO_Batch
SPO_PROD_LOC_SIZE_ETL_START_JOB Start job for product/location/size ETLs rse_process_state_update.ksh SPO_PROD_LOC_SIZE_ETL_PROCESS Start SPO_Batch
SPO_SIZE_RANGE_ETL_SETUP_JOB Setup job for size range ETL spo_size_range_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_RANGE_ETL_PROCESS_JOB Process job for size range ETL spo_size_range_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_RANGE_ETL_SETUP_JOB sub size range ETL spo_sub_size_range_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_RANGE_ETL_PROCESS_JOB Process job for sub size range ETL spo_sub_size_range_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_MAP_ETL_SETUP_JOB Setup job for size map ETL spo_size_map_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_MAP_ETL_PROCESS_JOB Process job for size map ETL spo_size_map_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_MAP_ETL_SETUP_JOB sub size map ETL spo_sub_size_map_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_MAP_ETL_PROCESS_JOB Process job for sub size map ETL spo_sub_size_map_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_PROD_SIZE_ETL_SETUP_JOB Setup job for product/size ETL spo_prod_size_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_PROD_SIZE_ETL_PROCESS_JOB Process job for product/size ETL spo_prod_size_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_RANGE_PROD_LOC_ETL_SETUP_JOB Setup job for sub size/range/product/location ETL spo_sub_sz_range_pr_lc_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_RANGE_PROD_LOC_ETL_PROCESS_JOB Process job for sub size/range/product/location ETL spo_sub_sz_range_pr_lc_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_PROD_LOC_SIZE_ETL_END_JOB End job for product/location/size ETLs rse_process_state_update.ksh SPO_PROD_LOC_SIZE_ETL_PROCESS End SPO_Batch
SPO_SIZE_ETL_SETUP_ADHOC_JOB Ad hoc setup job for size ETL spo_size_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_ETL_PROCESS_ADHOC_JOB Ad hoc process job for size ETL spo_size_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_RANGE_ETL_SETUP_ADHOC_JOB Ad hoc setup job for size range ETL spo_size_range_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_RANGE_ETL_PROCESS_ADHOC_JOB Ad hoc process job for size range ETL spo_size_range_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_RANGE_ETL_SETUP_ADHOC_JOB Ad hoc setup job for sub size range ETL spo_sub_size_range_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_RANGE_ETL_PROCESS_ADHOC_JOB Ad hoc process job for sub size range ETL spo_sub_size_range_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_MAP_ETL_SETUP_ADHOC_JOB Ad hoc setup job for size map ETL spo_size_map_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SIZE_MAP_ETL_PROCESS_ADHOC_JOB Ad hoc process job for size map ETL spo_size_map_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_MAP_ETL_SETUP_ADHOC_JOB Ad hoc setup job for sub size map ETL spo_sub_size_map_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_MAP_ETL_PROCESS_ADHOC_JOB Ad hoc process job for sub size map ETL spo_sub_size_map_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_PROD_SIZE_ETL_SETUP_ADHOC_JOB Ad hoc setup job for product/size ETL spo_prod_size_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_PROD_SIZE_ETL_PROCESS_ADHOC_JOB Ad hoc process job for product/size ETL spo_prod_size_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_RANGE_PROD_LOC_ETL_SETUP_ADHOC_JOB Ad hoc setup job for sub size/range/product/location ETL spo_sub_sz_range_pr_lc_setup.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_SUB_SIZE_RANGE_PROD_LOC_ETL_PROCESS_ADHOC_JOB Ad hoc process job for sub size/range/product/location ETL spo_sub_sz_range_pr_lc_process.ksh SPO_Interfaces||SPO_Interfaces_CNE
RSE_SEASON_PHASE_ITEM_ETL_START_JOB Start job for season/phase/item ETL rse_process_state_update.ksh RSE_SEASON_PHASE_ITEM_ETL_PROCESS Start SPO_Batch
RSE_SEASON_PHASE_ITEM_ETL_LOAD_JOB Load job for season/phase/item ETL rse_season_phase_item_load.ksh   SPO_Interfaces||SPO_Interfaces_CNE
RSE_SEASON_PHASE_ITEM_ETL_END_JOB End job for season/phase/item ETL rse_process_state_update.ksh RSE_SEASON_PHASE_ITEM_ETL_PROCESS End SPO_Batch
SPO_SEASON_LOAD_START_JOB SPO_SEASON_LOAD_START_JOB rse_process_state_update.ksh SPO_SEASON_LOAD_PROCESS Start SPO_Batch
SPO_SEASON_LOAD_JOB SPO_SEASON_LOAD_JOB spo_season_load.ksh   SPO_Interfaces||SPO_Interfaces_CNE
SPO_SEASON_LOAD_END_JOB SPO_SEASON_LOAD_END_JOB rse_process_state_update.ksh SPO_SEASON_LOAD_PROCESS End SPO_Batch

The following jobs are for exporting the outputs.

Table 11-5 Output Exporting Batch and Ad-Hoc Jobs

JobName Description RmsBatch ParameterValue Modules

SPO_EXPORT_START_JOB

SPO_EXPORT_START_JOB

rse_process_state_update.ksh

SPO_PROD_SIZE_LOAD_PROCESS Start

SPO_Batch

SPO_EXPORT_PREP_JOB

SPO_EXPORT_PREP_JOB

spo_export_prep.ksh

SPO_Export

SPO_SZ_PROF_EXPORT_JOB

SPO_SZ_PROF_EXPORT_JOB

spo_sz_prof_export.ksh

#Sys-Opt.SPO_HOME/data/outfile/spo_sz_prof_export.csv

SPO_Export

SPO_SZ_PROF_EXPORT_ADHOC_JOB

SPO_SZ_PROF_EXPORT_ADHOC_JOB

spo_sz_prof_export.ksh

#Sys-Opt.SPO_HOME/data/outfile/spo_sz_prof_export.csv

SPO_Export

SPO_EXPORT_END_JOB

SPO_EXPORT_END_JOB

rse_process_state_update.ksh

SPO_PROD_SIZE_LOAD_PROCESS End

SPO_Batch

SPO_EXPORT_PREP_ADHOC_JOB

SPO_EXPORT_PREP_ADHOC_JOB

spo_export_prep.ksh

SPO_Export

SPO_ALLOC_EXPORT_JOB

Export data for allocation

spo_alloc_export.ksh

SPO_ALLOC_EXPORT_ADHOC_JOB

Ad hoc job to export data for allocation

spo_alloc_export.ksh

SPO_Export

SPO_ALLOC_GID_FILE_EXPORT_JOB

Generate a GID file

spo_alloc_gid_file_export.ksh

SPO_ALLOC_GID_FILE_EXPORT_ADHOC_JOB

Ad hoc job to generate a GID file

spo_alloc_gid_file_export.ksh

SPO_Export

SPO_CUSTOM_EXPORT_JOB Extract customized export data spo_custom_export.ksh   SPO_Export
SPO_CUSTOM_EXPORT_ADHOC_JOB Ad hoc job to extract customized export data spo_custom_export.ksh   SPO_Export
The following jobs can be used to purge runs.

Table 11-6 Purge Run Jobs

JobName Description RMSBatch ParameterValue Modules
SPO_PURGE_RUN_START_JOB Start job for purging SPO run data rse_process_state_update.ksh SPO_PURGE_RUN_PROCESS Start SPO_Batch
SPO_PURGE_RUN_JOB Purge job for SPO run data spo_purge_run_data.ksh SPO_Interfaces||SPO_Interfaces_CNE
SPO_PURGE_RUN_END_JOB SPO run data rse_process_state_update.ksh SPO_PURGE_RUN_PROCESS End SPO_Batch
SPO_PURGE_RUN_ADHOC_JOB Ad hoc purge job for SPO run data spo_purge_run_data.ksh SPO_Interfaces||SPO_Interfaces_CNE