Planning analytics - IBM/intelligence-suite-supply-chain-solutions GitHub Wiki

As a supply chain manager, I need an operational environment to view and understand my demand forecasts, detect projected stockouts, and act on short and long term mismatches between demand and supply to avoid revenue loss and drive continuous improvement supply chain route planning.

This tutorial will show you how to develop dashboards for viewing inventories with custom attributes. We will display information on inventory supply and demand filtered with Planner code, Category, Location ID, Location name, and display them by different charts and tables.

Here are some sample screenshots of the expected output. See more in the Planning analytics gallery

image

image

Prerequisites

This sample solution assumes you are familiar with implementing solutions in SCIS. You can find relevant tutorials for all of the instructions here in the intelligence suite wiki.

Note - these tutorials are provided as-is for educational purposes only. We do our best to make them fully useable, however there will be gaps as published. If you have suggestions for improvements please submit an issue.

Solution

Data model

In this sample solution we are going to use the Inventory business object to capture inventory supply and demand records. We registered different custom attributes for all SCIS inventory business objects. See below for details and definitions

Calculations

While we could directly query and compare the measurements to the limits for the dashboard and query, a better practice will be to register derived data fields to pre-compute days to stock out, overage and underage, consumption, etc. For that purpose we would register derived fields such as Inventory.daysToStockoutFloat.

NOTE that for this static demonstration these rules were NOT created. The days-until values were manually calculated to a fixed value. For an instance of this dashboard to be implemented with live data these rules would need to be developed

Steps

NOTE: In the following examples, you need to make suitable replacements for the following: <INSERT_YOUR_ORG_ID_HERE>, <INSERT_YOUR_TENANT_ID_HERE>,

  1. Register custom attributes
  2. Load sample data
  3. Create widgets
  4. Create pages
  5. Create dashboards
  6. Create work queues
  7. Test on https://www.supply-chain.ibm.com/

Step 1. Register custom attributes

Values and limits

  • expectedLeadTimeFloat - lead time for the product
  • planningPeriodFloat - longer time period than lead time, 21 days in this example
  • consumptionLowerLimitFloat - lower quantity to determing under-consumption
  • consumptionUpperLimitFloat - lower quantity to determing over-consumption
  • mapeControlLimitFloat = upper limit for mean average percentage error of the plan

Metrics

  • daysToStockoutFloat - number of calendar days until the next stock out
  • daysToStockOverageFloat - number of calendar days until the next stock overage (excess)
  • nextStockOverageQuantityFloat quantity of the next stock overage (excess)
  • daysToStockUnderageFloat - number of calendar days until the next stock underage (approaching out)
  • nextStockUnderageQuantityFloat - quantity of the next stock underage (approaching out)
  • quantityReceivedWithinPeriodFloat - quantity of inventory which was received in last planning period (days)
  • consumptionFloat - average consumption of the product over a time period
  • mapeCurrentValueFloat - decimal mean average percentage error of the plan
  • biasCurrentValueFloat - decimal bias measurement for the plan

Step 2. Load sample data

This POC builds on our standard "Lighttree" sample data whch can be found here:

The custom or extension attribues were mocked up and calculated using this workbook:

The excel sheet was transformed into JSON using these tips and tricks:

Step 3. Create widgets

POST https://api.ibm.com/supplychainui/run/na/api/v1/wms/widget_definitions
POST https://api.ibm.com/supplychainui/run/na/api/v1/wms/subscriptions/subscribe

Daily Supply

  1. KPI widgets

  2. Bar chart widgets

  3. Table widgets

Weekly Supply

  1. KPI widgets

  2. Bar chart widgets

  3. Table widgets

Weekly Demand

  1. KPI widgets

  2. Donut chart widgets

  3. Table widgets

Monthly Demand

  1. KPI widgets

  2. Donut chart widgets

  3. Table widgets

Step 4. Create view_all pages

POST https://api.ibm.com/supplychainui/run/na/api/v1/wms/layout_templates

Daily Supply

Weekly Supply

Weekly Demand

Monthly Demand

Step 5. Create dashboards

POST https://api.ibm.com/supplychainui/run/na/api/v1/wms/layout_templates

then POST https://api.ibm.com/supplychainui/run/na/api/v1/wms/subscriptions/subscribe

Subscription body should be of the form:


{
  "id": "<TEMPLATE_ID>_subscription",
  "offeringId": "SCO",
  "state": "ACTIVE",
  "subscriptionConfig": [],
  "tenantId": "<tenant_id>",
  "templateId": "<TEMPLATE_ID>"
}

Step 6. Create work queues

POST https://api.ibm.com/infohub/run/metadata/api/v1/na/workqueues

image

image

image

image

⚠️ **GitHub.com Fallback** ⚠️