High- Level Specification
| Implementing System | Kinaxis Maestro |
|---|---|
| Invoked by/Invokes | ERP-1624 - Getting issue details... STATUS |
| Business Process Reference | 04.04.06.01. Data provisioning ERP to Maestro |
Functional Overview
The PartCustomer table identifies each unique part and customer combination used for forecasting. It supports applications such as Sales and Operation Planning, Demand Planning, Statistical Forecasting and Demand Sensing.
A PartCustomer is a consumer of an independent demand item and may be a consumer, a distributor, service center, or a plant identifier for inter-plant orders.
Scope and Objectives
The scope of this interface is between Global Integration Suite and Maestro. This document includes details of the PartCustomer.tab object.
The objective is to populate the PartCustomer and it's referenced tables based on the file provided by Global Integration Suite.
Process Flow Diagram
Step | Description |
|---|---|
1 | Global Integration Suite transfers transformed Composites / Rest of World data from S/4, and performs some formatting, and sends the data to Maestro. |
3 | Transferred files will be sent to Maestro’s Client SFTP server. This sits outside of the Maestro firewall and is accessible by client using a user id/ password. Files are transferred from this component to the Planning Server SFTP by a Kinaxis automatic process once the trigger file has been placed (see below) |
4 | Files are moved to this SFTP server automatically, where they await loading into Maestro. |
5 | Maestro uses the configured DSM (Data Sources and Mapping) setup to load the data into the PartCustomer table, with the load initiated either manually or through a scheduled system task. |
6 | The Data Tables which store information in Maestro |
Assumptions
- Data will only come from Global Integration Suite into the Global Data Source, set up in Maestro.
Dependencies
See OnHand.tab System Interface document for dependencies.
Security, Integrity and Controls
See Application Architecture Kinaxis Maestro for security requirements for SFTP/REST based authentication and security.
Configuration Requirements
The Data Sources and Mapping for this interface should be configured once, according to the structure in the Data Structure section below.
The Data Model needs to be configured with the Syway-specific fields shown in the Data Model Custom Fields section below.
Special Requirements
None
Design Rationale
The base of this design has been taken from the existing Maestro implementation, as designed during the Advanced Planning System (APS) Project.
A fit-gap analysis was undertaken within Syway, and changes were identified which have been incorporated into the Syway spec as shown.
API Use
The data object provided by either Integration Suite will be consumed by Maestro.
For more information see the Data Integration Document.
Data Structure
The following Maestro fields will be populated by the file provided by Integration Suite:
| Column Number | Field Name | Technical Field Name | Data Type | Key | Field Type | Autocreate | Description |
|---|---|---|---|---|---|---|---|
0 | ControlSet | DemandType.ControlSet.Value | String | N | Fixed | No | The control set associated with this demand type record |
0 | DemandType | DemandType.Value | String | N | Fixed | No | The demand type values from source system |
0 | Active | Active | Boolean | N | Fixed | No | Flag for Partcustomer based on hitory and forecast criteria. Default value Y will be shown in DP workbooks |
1 | Customer | Customer.Id | String | Y | Extract | No | The customer associated with the historical demand series and/or forecast. |
2 | PartSite | Part.Site.Value | String | Y | Extract | No | The site associated with this part. |
3 | Part | Part.Name | String | Y | Extract | No | The part associated with the historical demand series and/or forecast. |
4 | EndUse | EndUse.Id | String | N | Extract | No | EndUse |
5 | ProcessingRule | ProcessingRule.Id | String | N | Extract | Yes | Processing rule associated with the part-customer |
6 | GBUSegment | GBUSegment.Id | String | N | Extract | Yes | GBUSegment |
7 | OriginalShipToKA | OriginalShipToKA.Id | String | N | Extract | No | Original Ship To KA from interface |
7 | ShipToKA | ShipToKA.Id | String | N | Extract | No | ShipToKA |
8 | IncoTerm | IncoTerm.Id | String | N | Extract | Yes | Incoterm of the part-customer |
9 | IncoTermDelivery | IncoTermDelivery.Id | String | N | Extract | No | Information for demand planners in determining the supply offset ETA-ETD, or for finance teams in calculating the revenue recognition date. |
10 | IsConsignment | IsConsignment.Id | Boolean | N | Extract | No | Flag to identify Consignment Part-Customers |
11 | FinalConsignee Id | FinalConsignee.FinalConsigneeid | String | N | Extract | Yes | FinalConsigneeId |
12 | FinalConsignee Name | FinalConsignee.FinalConsigneeName | String | N | Extract | No | FinalConsigneeName |
File Formats
See File Formats - SFTP section in the Data Integration Document.
Data Model PartCustomer table settings:
| Allow Data update to: | Currency | |||
|---|---|---|---|---|
| Insert, Modify and Delete records | Insert and Modify records only | Allow automatic record creation | Determined by Maestro | Expression |
| - | Y | N | Y | - |
Data Model PartCustomer custom fields:
Field name | Description | Data type | Key |
Account18DID | Attribute used for hierarchies | String | N |
Active | Flag for Partcustomer based on hitory and forecast criteria. Y will be shown in DP workbooks and N will not be shown in DP workbook | Boolean | N |
BlockOffset | Used in the ETA ETD translation | Quantity | N |
CreationDate | Internally used to record the date the record is created in Maestro | Date | N |
DeleteNotes | Internally used as a flag for the user to mark to delete the notes | Boolean | N |
IncoTermDelivery | Information for demand planners in determining the supply offset ETA-ETD, or for finance teams in calculating the revenue recognition date. | String | N |
IsCondignment | Flag set to Y for Consignment Part-Customers | Boolean | N |
MarketGrowthProgram | Attribute used for hierarchies | String | N |
Notes | User notes in Maestro | Note | N |
OverrideFinancialOffset | Populated by users in Maestro to override the financial offset | Quantity | N |
OverridenDate | Stores the latest date where sales forecast and demand planner forecast category has been overriden in the previous demand planning cycle. | Date | N |
OverrideTransitTime | Populated by users in Maestro to override the transit time | Quantity | N |
PredecessorSelection | Used internally to create predecessor relationship- NPI / EoL | Boolean | N |
SavedActive | Internal use to identify transitional active flags and to identify where the user has changed the flag to run an automation. Where you activate a PartCustomer to be used for Forecasting (Demand Plan). Field used to compare previous and current active flags. | Boolean | N |
SavedDisaggregationEndDate | Internal use to identify when a user changes the date and an automation will runRelating to activating the PartCustomer. DisaggregationEndDate = End of life. This field is the old date to compare, to detect when changes have been made. | Date | N |
SuccessorSelection | Used internally to create successor relationship | Boolean | N |
UserId | internally used to record the user that created that record | String | N |
WetRation | Ratio to convert the units to wet ratio. Convert forecast from dry/wet ratio for MTP | Quantity | N |
BusinessLine | Attribute used for hierarchies. Used for composites, set by user, maintained in Maestro | Reference | N |
EndUse | EndUse | Reference | N |
FinalConsignee | FinalConsignee | Reference | N |
FinalCustomerParent | Attribute used for hierarchies | Reference | N |
GBUSegment | GBUSegment | Reference | N |
IncoTerm | Incoterm of the part-customer | Reference | N |
MainShipToCountry | Attribute used for hierarchies | Reference | N |
MfgPlant | Attribute used for hierarchies | Reference | N |
OriginalShipToKA | Original Ship To KA from interface | Reference | N |
OverrideAccountManager | Internal use to override the account manager Changes made in Maestro for “now”, then later synced | Reference | N |
OverrideForecastCustomer | Internal use to override the forecast customer. From ERP it comes into customerShipTo - this is an override. | Reference | N |
ProcessingRule | Processing rule associated with the part-customer | Reference | N |
Segmentation | Attribute used for hierarchies. Planners assign PartCustomers to segment | Reference | N |
Processing Logic
See Processing Logic - SFTP section in the Data Integration Document.
Delta or Full Load Requirements
The preference is to do a partial load.
For more information on the difference between Full and Delta loads, see the Full Loads and Delta Loads - SFTP section in the Data Integration Document.
Interface Alert & Monitoring
See the Interface Alert & Monitoring - SFTP section in the Data Integration Document,
Language Requirements
None
User Interface Requirements
Not required.
Sequencing
Reference tables to support PartCustomer table data have to be either loaded manually before loading the PartCustomer table or at the same time as the PartCustomer table is loaded or set to be created automatically in data model or in DSM.
Below tables need to be taken into account before PartCustomer table data load:
Table | SyWay configuration |
| Customer | Auto create not allowed |
| Part | Auto create not allowed |
| DemandType | Control table; Auto create not allowed |
| Site | Auto create not allowed |
| ProcessingRule | Set to allow automatic record creation |
| EndUse | Auto create not allowed |
| GBUSegment | Set to allow automatic record creation |
| OriginalShipToKA | Auto create not allowed |
| ShipToKA | Auto create not allowed |
| IncoTerm | Set to allow automatic record creation |
| FinalConsignee | Set to allow automatic record creation |
Volumetrics
Current APS Volume of PartCustomer records is 45,079. Because APS makes up approximately 60% of Syway projected records, an expected estimate for Syway is therefore 72,126.
This value is expected to grow by 1-2% per year.
Performance Consideration
N/A
Testing
How to Test
See OnHand.tab System Interface document for information on how to test.
There are no PartCustomer-specific testing requirements.
Test Conditions and Expected Results
| 1 | Data Load Successful | The Data in the data file matches the data in the Maestro table, and there are no errors. | ||||||||
| 2 | Data File contains 0 records | The Data Update should fail with a status of Pending. | ||||||||
| 3 | Data File contains invalid references (or other error) | The Data Update should Fail, the invalid references should be visible in the error log and the records with the error are not loaded into Maestro, and an alert is sent to the Admin team <Or whatever action is needed> Fields for OnHand.tab which should be checked for invalid references are shown in the Data Structure table above as "Ref String" and are:
| ||||||||
| 4 | Data file contains duplicates | The PartCustomer.tab file must be checked further for data uniqueness with respect to the key fields, in case data is available in file but not in Maestro |
Test Considerations/Dependencies
Dependent files should already be loaded into Maestro for these tests to complete. See Sequencing section above.
Other Information
Development Details
Package
| Package Name | Parent Package |
|---|---|
Other Development Objects
| Object Type | Object Name | Purpose/High Level Logic | Design Rationale Reference |
|---|---|---|---|