Model building scope

The DDM data source you use for model building may contain historic data that spans many years and may include products, locations, and other elements that are not required for the current study. The model scoping step in the workflow enables you to limit the time horizon as required. You can also define filters to limit the rows returned for each of the Core Elements, Transaction Tables and Policy Tables.

When you apply filters to the Core Elements, this affects the results populated in all tables that use those elements. For example, a filter applied to Customers limits the records that are populated in a number of tables, such as Customers, Customer Orders, Customer Sourcing Policies, Transportation Policies and Flow Constraints.

When you define the time horizon, this can act as a filter on date-based tables, such as the Transaction Tables.

Set up the recipe scope

  1. If you are on one of the Configuration nodes, click Next until you reach the Scope node, or click the Scope node directly if available. If the Scope node is not enabled, be sure you have provided the required data on the Configuration nodes.

  2. Define the Time Horizon to determine which transactional data is included in the model. Use one of these methods to set the time horizon. In both cases, the dates determined by the method become the Start Date and End Date of the model horizon:

    • Fixed Horizon - Select the Start Date and End Date for the model. The Start Date cannot be greater than the End Date.

    • Rolling Horizon – Enter the Last Number of Days of Transactional Data. This will use the most recent transactional data. For example, if your transactional data includes records from 1/1/2017 through 6/30/2021 and you enter 90 as the number of days, you will get the transactional records from April through June of 2021.

  3. Click Next or select the Core Elements node.

  4. Select the Model Elements to be included in your network structure. At a minimum, you must include Customers, Sites, and Products for the model recipe to be valid. In addition, you can include Modes. To remove elements from the configuration, click the x to the right of the element name. You cannot remove Customers, Sites, or Products.

  5. Use the various scope nodes to select a subset of the core elements, transaction tables and policy tables using filters. By default, all records are included.

  6. For each of the elements you want to filter, you must select the radio button to include a subset of the values. For example, on the Customers node, select Include a subset of Customers. The scope nodes displayed are based on the model elements you selected on the Core Elements node.

    • Customers - Filter for the customers you want to include. For example, select customers from a specific country. Note that filters on LOCATION_TYPE are not currently supported.

    • Modes - Filter for the modes you want to include. For example, select only truck-based modes.

    • Products - Filter for the products you want to include. For example, select products from one or more product categories.

    • Sites - Filter for the sites you want to include. For example, select sites from a specific business unit. Note that filters on LOCATION_TYPE are not currently supported.

  7. If you want to apply filters to one or more transaction tables, click Next or select the Transaction Tables node.

  8. Select Filter using Transaction Table(s), then select one of more of the tables listed in the dropdown. For each table you select, a child node is available where you can define the filters. Keep in mind that filters on Core Elements and the settings for the Time Horizon will act as additional filters for the Transaction Tables.

  9. For each of the tables you want to filter, you must select the radio button to include a subset of the values. For example, on the Orders Full node, select Include a subset of Orders Full. The available transaction table nodes are based on the tables you selected on the Transaction Tables node.

    Transaction tables often have large numbers of records. If your DDM transaction table exceeds the threshold of approximately 7.5 million records, the preview of data in the scope grid is unavailable. You can still apply filters as needed.
  10. If you have filters applied to one or more transaction tables and you select No Transaction source filtering on the Transaction Tables node, you will be prompted whether you want to continue and delete the filters, or cancel and keep the existing filters in place.

  11. If you want to apply filters to one or more policy tables, click Next or select the Policy Tables node.

  12. Select Filter Policy Table(s), then select one of more of the tables listed in the dropdown. For each table you select, a child node is available where you can define the filters. Keep in mind that filters on Core Elements and the settings for the Time Horizon can act as additional filters for the Transaction Tables.

  13. For each of the tables you want to filter, you must select the radio button to include a subset of the values. For example, on the Inventory Policies node, select Include a subset of Inventory Policies. The available policy table nodes are based on the tables you selected on the Policy Tables node.

  14. If you have filters applied to one or more policy tables and you select No Policy source filtering on the Policy Tables node, you will be prompted whether you want to continue and delete the filters, or cancel and keep the existing filters in place.

  15. If you have applied one or more filters, use the Rows: indicator at the bottom of the table to confirm the number of rows currently included.

    Once you have defined the model scope, you can see the results in terms of the core elements, transactions and policies that match your criteria. If changes are required, you can adjust the filters before moving to the next step in the model building workflow.

  16. If you are not aggregating your data or defining policies and constraints and the recipe definition is complete, click Save and Close. You can click Save to save the current definition and continue editing.

Sort the scope data

  1. Click the column header you want to sort by.

  2. For text columns, select A to Z to sort in ascending order or Z to A to sort in descending order.

    For numeric columns, select Ascending to sort in ascending order or Descending to sort in descending order.

    For date columns, select Oldest to Newest to sort in ascending order or Newest to Oldest to sort in descending order.

 

Define filters

For each of the scope sections, you can define filter criteria to limit the rows included in the model building process. Define filter criteria for one or more columns as described in this section. Keep in mind that when you define criteria for more than one column, the criteria are evaluated using the AND logical operator between the columns. For example, if you filter for location_type = "Regional DC" and primary_country = "United Kingdom", records returned include only Regional DCs in the United Kingdom.

Define a filter

  1. Select the Scope node you want to filter. For example, select Scope > Sites.

  2. Select the radio button to include a subset of the values. For example, on the Sites node, select Include a subset of Sites.

  3. Click the column header for the column you want to filter, then click Filter. You see the Filter By box for the column.

  4. Enter the filter criteria using filter operators and logical operators as needed. If the criteria is not defined correctly, an error message is displayed. See filter criteria guidelines for more information.

  5. Click Apply to apply the filter to the column. A filter icon is displayed next to the column header. The filtered column name is displayed in the title bar at the top of the grid.

Edit a filter

  1. Do one of the following:

    • Click the column header for the filtered column, then click Filter, or

    • Click the filtered column name in the title bar at the top of the grid.

  2. Edit the filter criteria as needed.

  3. Click Apply.
    If the filtered column is being used in an advanced aggregation, the Aggregate By settings will be discarded if you change the filter definition. You are prompted to confirm the action.

  4. Click Continue to discard the Aggregate By data in the Advanced Aggregation.

Clear filters

When you define filters, the column header displays a filter icon. In addition, the names of filtered columns are displayed in the title bar above the data gird.

There are 3 ways you can clear filters, as described below.

Clear filter criteria in the Filter By box

  1. Click the column header for the filtered column, then click Filter. You see the Filter By box for the column.

  2. Click Clear or click the x at the right of the criteria. The current criteria is cleared.

  3. Click Apply. The column is no longer filtered.

Clear a filter in the grid title bar

  • Click the x to the right of the column name in the grid title bar. The filter for the selected column is removed.

Clear all filters in the grid title bar

  • Click the x at the far right of the grid title bar. All filters are removed.

Filter criteria guidelines

As you define the filter criteria for a column, if there are errors in the format of the criteria, an error message is displayed. The following table provides general format rules and the error message displayed when the rule is violated:

Format rule Valid example Invalid example Error message for invalid format
A filter operator and its associated value should not be separated by a space.

>12

> 12 Expression starts with a standalone operator
A value cannot have more than one filter operator. >Bremen >Bremen* Different operators ">" and "*" in value ">Bremen*"
Text values with embedded spaces should be enclosed in quotes. If not enclosed in quotes, the text blocks in the value are treated as separate values. ="Lima DC" =Lima DC Logical operator is missing between values.
Separate values must have a logical operator between them. Lima OR Bremen Lima Bremen Logical operator is missing between values
Logical operators require a space before and after them. "Lima DC" OR Bremen* "Lima DC"OR Bremen* Text blocks are not separated with spaces
When using a logical operator, there must be a value on both sides of the operator. 15.5 OR 24 15.5 OR Expression is missing the final value
Only one logical operator can be used between two values. Lima* OR Bremen* Lima* AND OR Bremen* Operators "AND" and "OR" are adjacent

Filter operators

The following filter operators are supported:

Operator Defines Example
no operator Equal to

Customer

15.755

8/1/21

=

Equal to

="Lima DC"
=15.755

=8/1/21

<> Not equal to <>"Lima DC"
<> 15.755
<>8/1/21
> Greater than >"Lima DC"
>15.755
>8/1/21
>= Greater than or equal to >="Lima DC"
>=15.755
>8/1/21
< Less than <"Lima DC"
<15.755
<8/1/21
<= Less than or equal to <="Lima DC"
<=15.755
<=8/1/21

Wildcards

You can use the * character to represent one or more characters within a text value:

  • Primary* - returns anything that starts with Primary, such as Primary DC, PrimaryResource.

  • *MFG - returns anything that ends with MFG, such as Lima MFG, Candidate_2020_MFG.

  • *City* - returns anything with City somewhere in the value, such as City Center, Panama City DC, Salt Lake City.

Logical operators

Logical operators enable you to group multiple criteria within a column filter.

Logical operator Example Evaluates as
OR Lima* OR Bremen*

Select values that start with either Lima or Bremen, such as:

  • Lima DC

  • Bremen MFG

AND 750* AND *1

Select values that start with 750 and end with 1, such as:

  • 75001

  • 750021

AND OR in combination 750* AND *1 OR 890*

Select values that start with 750 and end with 1 or values that start with 890, such as:

  • 75001

  • 750021

  • 89045

  • 897774

>-5 AND <20 OR 36.5 Select values greater than -5 and less than 20. Also select 36.5.