292360

From CTMS

Aptean Logo.png







DHL C-TMS

Segrgate Reason Codes to Contract


FUNCTIONAL SPECIFICATION - 10.7

17/11/11 - 1.0
Reference: 292360 PM-8LZN7Z












































Client Requirement

This should be taken from the Estimate


Solution

OBS will add a Cost Centre (COST_CENTRE) field to the reason codes table (SCH_REASON_CODE) and make it part of the primary key so that records are segregated by the new field.

NB) All existing data within the reason codes table will need the new COST_CENTRE field setting to ‘+’ before the primary key can be changed. This will then be used in future to show that a reason code is applicable to all cost centres.

Modules that need changing in C-TMS to take this database change into account include 10 packages, 2 triggers and 9 forms. As detailed below:

Packages :-

Module Code Segment Notes
DP_CSV3 Write_Failed_Shipment Change to add cost centre from order to link to reason table
Write BGW_Debrief Change to pass cost centre from order to cursor to retrieve correct reason code description
DP_ORS_FUNCS SCH_Ord_Non_Conform Change to pass cost centre from order to cursor to retrieve the correct reason code description
INT_XML Create_PO_File Change to pass cost centre from INT_PO_OUTBOUND_FILE to cursor to retrieve the correct reason code description
INT_XML_MIC Gen_Order_Det_STK Change to pass the cost centre from the order to the cursor to retrieve the correct reason code description
Process_Mic_Trip_XML_In Change to pass the cost centre from the order to the cursor to retrieve the correct reason code description
INT_XML_OUT2 Gen_Order_Det_STK Change to pass the cost centre from the order to the cursor to retrieve the correct reason code description
Process_LOTS_Trip_XML_In Change to pass the cost centre from the order to the cursor to retrieve the correct reason code description
Process_ZET_Trip_XML_In Change to pass the cost centre from the order to the cursor to retrieve the correct reason code description
Module Code Segment Notes
INT_XML_SMA Gen_Order_Det_STK Change to pass the cost centre from the order to the cursor to retrieve the correct reason code description
Process_Sma_Trip_XML_In Change to pass the cost centre from the order to the cursor to retrieve the correct reason code description
INT_XML_TOK Process_POD_XML_In Change to pass the cost centre from the order to the cursor to retrieve the correct reason code description
KPI Write_KPI_OPS_Detail Change to add cost centre from order to link to reason table
Write_KPI_Campus_Detail Change to add cost centre from order to link to reason table
Write_KPI_DNG_Detail Change to add cost centre from order to link to reason table
PROCESS_POD_XML_IN Change to pass the cost centre from the order to the cursor to retrieve the correct reason code description

Triggers :-

Module Notes
T_SCH_ORD_NON_CONFORM_BI Change to pass the cost centre from the order to the cursor to retrieve the correct reason code description
T_SCH_REASON_CODE_BIU Inserting to default cost centre to ‘+’ when NULL.

Forms :-

Module Notes
BDM New and Edit canvases on Reason Codes tab to include Cost Centre (LOV including ‘+’ for all).
INT_ERR Use cost centre from INT_PO_Outbound_File to get correct reason code.
ORD_DEBRIEF Use cost centre from order to get the correct reason codes.
ORDERS Use cost centre from order to get the correct reason codes.
PURCH_ORD Use cost centre from the control block to get the correct reason codes.
TRACKING User’s cost centre to control the correct reason codes.
TRIPDTL Use cost centre from order to get the correct reason codes.

OBS will add a Customer Group (CUST_GROUP) field to the reason codes table (SCH_REASON_CODE) and make it part of the primary key so that records are segregated by the new field.

NB) All existing data within the reason codes table will need the new CUST_GROUP field setting to ‘+’ before the primary key can be changed. This will then be used in future to show that a reason code is applicable to all customer groups.

A system parameter will be created to indicate which level the system is segregating reason codes. Users will be able to set the system parameter to COST_CENTRE, CUST_GROUP, BOTH or null.

Where applicable, the customer group will be derived from the customer on the current order. Code will be required to deal with customers which have not been assigned to a customer group.

Modules that need changing in C-TMS to take this database change into account include 10 packages,

2 triggers and 9 forms. As detailed below:


Packages :-

Module Code Segment Notes
DP_CSV3 Write_Failed_Shipment Change to add customer from order to link to reason table
Write BGW_Debrief Change to pass customer from order to cursor to retrieve correct reason code description
DP_ORS_FUNCS SCH_Ord_Non_Conform Change to pass customer from order to cursor to retrieve the correct reason code description
INT_XML Create_PO_File Change to pass customer from INT_PO_OUTBOUND_FILE to cursor to retrieve the correct reason code description
INT_XML_MIC Gen_Order_Det_STK Change to pass the customer from the order to the cursor to retrieve the correct reason code description
Process_Mic_Trip_XML_In Change to pass the customer from the order to the cursor to retrieve the correct reason code description
INT_XML_OUT2 Gen_Order_Det_STK Change to pass the customer from the order to the cursor to retrieve the correct reason code description
Process_LOTS_Trip_XML_In Change to pass the customer from the order to the cursor to retrieve the correct reason code description
Process_ZET_Trip_XML_In Change to pass the customer from the order to the cursor to retrieve the correct reason code description
Module Code Segment Notes
INT_XML_SMA Gen_Order_Det_STK Change to pass the customer from the order to the cursor to retrieve the correct reason code description
Process_Sma_Trip_XML_In Change to pass the customer from the order to the cursor to retrieve the correct reason code description
INT_XML_TOK Process_POD_XML_In Change to pass the customer from the order to the cursor to retrieve the correct reason code description
KPI Write_KPI_OPS_Detail Change to add customer from order to link to reason table
Write_KPI_Campus_Detail Change to add customer from order to link to reason table
Write_KPI_DNG_Detail Change to add customer from order to link to reason table
PROCESS_POD_XML_IN Change to pass the customer from the order to the cursor to retrieve the correct reason code description


Triggers :-

Module Notes
T_SCH_ORD_NON_CONFORM_BI Change to pass the customer from the order to the cursor to retrieve the correct reason code description
T_SCH_REASON_CODE_BIU Inserting default cust group to ‘+’ when NULL.


Forms :-

Module Notes
BDM New and Edit canvases on Reason Codes tab to include Cost Centre (LOV including ‘+’ for all).
INT_ERR Use customer from INT_PO_Outbound_File to get correct reason code.
ORD_DEBRIEF Use customer from order to get the correct reason codes.
ORDERS Use customer from order to get the correct reason codes.
PURCH_ORD Use customer from the control block to get the correct reason codes.
TRACKING Add customer and customer group to the STOP_LIST data block for reference when selecting non-conformance.
TRIPDTL Use cost centre from order to get the correct reason codes.

Scope

This change will be applied to system version 10.7

Set-up

Pre-requisites

Menu Structure

Unchanged

Data

Existing reason codes will be amended setting the new Cost Centre and Cust Group fields to ‘+’

New system parameter to control the level of segregation.

ORD_REASON_CODE_FILTER

Implementation Advice

Functional Description

Two new columns will be added to the reason codes maintenance table (SCH_REASON_CODE).

  • COST_CENTRE
  • CUST_GROUP

These new columns will be incorporated into the primary key of the table so the records can be segregated based on the fields.

To allow the primary key of the table to be changed the existing records on the table will need to be updated. Both of the new columns will be set to ‘+’ for all the existing records in the table. This value can also be used to identify reason codes that are applicable to all cost centres or cust groups.

Any programs that currently utilise the SCH_REASON_CODE table will need to be altered to accommodate the addition of the two columns. When selecting a reason code in the code the cost centre and / or cust group must be taken into account and the reason codes restricted based on this.

A new system parameter ORD_REASON_CODE_FILTER will be added to control the level at which the reason codes should be segregated. The values for the parameter will be :-

  • COST_CENTRE
  • CUST_GROUP
  • BOTH
  • NULL

If ‘BOTH’ is selected for the parameter then both the cost centre and cust group will be used to restrict the reason codes. If NULL is selected then neither will be used when selecting the reason codes.

All changes to forms, packages and triggers will reference the system parameter to determine what restrictions should be used on the reason codes.

The trigger T_SCH_REASON_CODE_BIU will be changed to insert ‘+’ against the cost centre and cust group columns if they have not been populated.

The customer group will be derived from the customer on an order. Customers who do not belong to a customer group will only have access to reason codes that have a ‘+’ for the cust group column, when the system parameter is set to CUST_GROUP or BOTH.

Program Changes - Packages

Module Code Segment Notes
BKG Reverse_TIs No changes
DP_CSV3 Write_Failed_Shipment Change to add cost centre and/or cust group from order to cursor c_non_conform to link to reason table
  Write BGW_Debrief Change to pass cost centre and/or cust group from order to cursor c_get_nonc to retrieve correct reason code description
DP_ORS_FUNCS SCH_Ord_Non_Conform Change to pass cost centre and/or cust_group from order to cursor c_oms_non_conform to retrieve the correct reason code description
INT_XML Create_PO_File Change to pass cost centre and/or cust group from INT_PO_OUTBOUND_FILE to cursor c_non_conform to retrieve the correct reason code description
INT_XML_MIC Gen_Order_Det_STK Change to pass the cost centre and/or cust group from the order to the cursor c_late_reasons to retrieve the correct reason code description
  Process_Mic_Trip_XML_In Change to pass the cost centre and/or cust group from the order to the cursors c_reason and c_reas_code to retrieve the correct reason code description
INT_XML_OUT2 Gen_Order_Det_STK Change to pass the cost centre and/or cust group from the order to the cursor to c_late_reasons retrieve the correct reason code description
  Process_LOTS_Trip_XML_In Change to pass the cost centre and/or cust group from the order to the cursors c_reason and c_reas_code to retrieve the correct reason code description
  Process_ZET_Trip_XML_In Change to pass the cost centre and/or cust group from the order to the cursors c_reason and c_reas_code to retrieve the correct reason code description
INT_XML_SMA Gen_Order_Det_STK Change to pass the cost centre and/or cust group from the order to the cursor c_late_reasons to retrieve the correct reason code description
  Process_Sma_Trip_XML_In Change to pass the cost centre and/or cust group from the order to the cursors c_reason and c_reas_code to retrieve the correct reason code description
INT_XML_TOK Process_POD_XML_In Change to pass the cost centre and/or cust group from the order to the cursor c_non_conform and c_get_detail_created to retrieve the correct reason code description
KPI Write_KPI_OPS_Detail Change to add cost centre and/or cust group from order to cursors c_get_detail_sched, c_get_detail_created and c_get_detail_delivered to link to reason table
  Write_KPI_Campus_Detail Change to add cost centre and/or cust group from order to cursors c_get_detail_sched, c_get_detail_created and c_get_detail_delivered to link to reason table
  Write_KPI_DNG_Detail Change to add the cost centre and/or cust group from order to the cursors c_get_detail_sched, c_get_detail_created and c_get_detail_delivered to link to reason table
PROCESS_POD_XML_IN ??   Change to pass the cost centre and/or cust group from the order to the cursors c_reason and c_reas_code to retrieve the correct reason code description

Program Changes – Triggers

Module Notes
T_SCH_ORD_NON_CONFORM_BI Change to pass the customer and/or cost centre from the order to the cursors c_get_non_con and c_get_action to retrieve the correct reason code description
T_SCH_REASON_CODE_BIU Inserting default cust group to ‘+’ when NULL.


Program Changes – Forms

BDM

The BDM form will be changed to include the CUST_GROUP and COST_CENTRE fields for the reason codes data.

The Insert reason code canvas will be expanded to allow space for the two new fields.

292360 1.png

The edit canvas will also be changed to include the fields.

292360 2.png

An LOV will be added for COST_CENTRE and CUST_GROUP. Each LOV will included a ‘+’ value. If no value is entered in the COST_CENTRE or CUST_GROUP field the value should default to ‘+’.

Interface Errors

The Interface Errors screen references SCH_REASON_CODE when displaying the PO Outbound information. The post query trigger on block INT_PO_OUTBOUND_NON_CONFORM will be changed to reference the customer (cust group) and cost centre of the purchase order when looking for the reason code.

292360 3.png

Order Debrief

The Order Debrief form will be changed to use the cost centre (not displayed) and the customer (to derive the cust group) from the order to restrict the reason codes available in the two drop down lists.

Collection

292360 4.png

Delivery

292360 5.png

Orders

The Orders form will be changed to include the cost centre and customer (cust group) for the orders to segregate the reason codes available. The reason codes can be selected in a list for the order non conformance. The population of this list will be moved to the processing behind the non conformance button so the current orders details can be used to segregate the reason codes.

292360 6.png

The order items reason codes are validated against an LOV. This LOV will be dynamically set to restrict the reason codes based on the cost centre and customer (cust group) of the order.

292360 7.png

The post query trigger on the item non conformance block will also be change to retrieve the correct description based on the order.

Purchase Order

The Purchase order screen will be changed to use the cost center and customer (cust group) from the PO to segregate the reason codes and retrieve the correct description when populating the reason code field.

The LOV’s for the 3 reason code fields will be set dynamically when a PO is edited to populate the lists based on the PO’s cost centre and customer.

292360 8.png

Tracking

The Tracking screen will be changed to use the cost centre and customer (cust group) from the order selected to segregate the reason codes.

The List for the reason codes is currently populated when the form is first opened. This will be changed to populate when the Non Conformance button is pressed for a particular order allowing the orders details to be used to segregate the list of reason codes.

292360 9.png

Trip Debrief

The Trip Debrief screen will be changed to use the cost centre and customer (cust group) from the selected order to segregate the reason codes available in the Reason Code list and LOV.

The list item against order non conformance is currently populated when the form is first opened. This will be changed to populate the list when an order has been selected and the Non Conformance button is pressed.

292360 10.png

The LOV against the order items reason code will be populated dynamically based on the cost centre and cust group of the order selected.

292360 11.png


Table Updates Required

Alter table SCH_REASON_CODE ADD COST_CENTRE varchar2(12),

Alter table SCH_REASON_CODE ADD CUST_GROUP varchar2(12).


Modules to be changed

Module Name Module Type Notes
DP_CSV3 Package
DP_ORS_FUNCS Package
INT_XML Package
INT_XML_MIC Package
INT_XML_OUT2 Package
INT_XML_SMA Package
INT_XML_TOK Package
KPI Package
PROCESS_POD_XML_IN Procedure
T_SCH_ORD_NON_CONFORM_BI Trigger
T_SCH_REASON_CODE_BIU Trigger
BDM Form
INT_ERR Form
ORD_DEBRIEF Form
ORDERS Form
PURCH_ORD Form
TRACKING Form
TRIP_DTL Form


References

Ref No
Document Title & ID
Version
Date
1
{Detail attachments to RIO here}
*.*
**/**/**


Glossary

Term or Acronym
Meaning
C-TMS Calidus TMS


Document History

Version
Date
Status
Reason
Initials
0.1
16/11/11
Draft
Initial version
DNG
0.2
17/11/11
Issue
Reviewed & Issued
MJC

AUTHORISED BY

Matt Crisford Development Manager
Peter Greer TMSCC MTS Product Manager