Top Banner
MD.070 APPLICATION EXTENSION TECHNICAL DESIGN Silver Spring Networks Shipping and RMA Receipt Customization Author: Sachin Thakre Creation Date: May 24, 2010 Last Updated: May 24, 2010 Document Ref: Version: 1.1 Approvals: Girish Kapshikar USJade Project Manager Ashish Chomal USJade Functional Lead MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 1 of 44
44

MD070 SSN Shipping and RMA Receipt Customization V1 1

Oct 26, 2014

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: MD070 SSN Shipping and RMA Receipt Customization V1 1

MD.070 APPLICATION EXTENSION TECHNICAL DESIGN

Silver Spring Networks

Shipping and RMA Receipt Customization

Author: Sachin Thakre

Creation Date: May 24, 2010

Last Updated: May 24, 2010

Document Ref:

Version: 1.1

Approvals:

Girish Kapshikar USJade Project Manager

Ashish Chomal USJade Functional Lead

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 1 of 40

Page 2: MD070 SSN Shipping and RMA Receipt Customization V1 1

Document Control

Change Record

2

Date Author Version

Change Reference

24-May-10

Sachin Thakre Draft 1.0

No previous version

Reviewers

Name Position

Girish Kapshikar USJade Project ManagerAshish Chomal USJade Functional Lead

Distribution

Copy No.

Name Location

1

234

Note To Holders:

If you receive an electronic copy of this document and print it out, please write your name on the equivalent of the cover page, for document control purposes.

If you receive a hard copy of this document, please write your name on the front cover, for document control purposes.

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 2 of 40

Page 3: MD070 SSN Shipping and RMA Receipt Customization V1 1

Contents

Document Control.....................................................................................2

Contents....................................................................................................3

Overview....................................................................................................5

Approach...................................................................................................6

Definitions.................................................................................................7

Acronyms.............................................................................................7Technical/Functional Assumptions.....................................................7Document References (WIP - To be updated upon completion of all documents)..........................................................................................7

High Level Process Program Flow.............................................................8

Detailed Design:........................................................................................9

Module List...........................................................................................91. Concurrent Program - SSN Logistic Information Upload.........9Calling Argument.................................................................................9Calling Argument...............................................................................10Calling Argument...............................................................................10Calling Argument...............................................................................11Program Flow – will be reviewed and updated.................................11Program Logic (Pseudo Code) – will be reviewed and updated.......15Program Unit......................................................................................23Log Summary....................................................................................23Program Output.................................................................................24Schema Diagram...............................................................................24Validation Logic: will be reviewed and updated...............................26Exception Messages: will be reviewed and updated.......................27Incompatibility...................................................................................27Performance Consideration...............................................................27Other Consideration..........................................................................28Assumption: N/A................................................................................28Table and View Usage.......................................................................28Table Definition and Mapping:..........................................................28Index / Constraint..............................................................................28Sequence...........................................................................................29Grant..................................................................................................29Synonym............................................................................................29Lookup...............................................................................................29Value Set...........................................................................................29SQL Statement...................................................................................29Concurrent Program Definition.........................................................30Installation Requirement...................................................................32

Test Case – will be updated....................................................................34

Implementation Note..............................................................................35

Design Summary...............................................................................35Coding Summary...............................................................................35Testing Summary..............................................................................36

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 3 of 40

Page 4: MD070 SSN Shipping and RMA Receipt Customization V1 1

Open and Closed Issue for this Deliverable...........................................37

Open Issue.........................................................................................37Closed Issue.......................................................................................37

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 4 of 40

Page 5: MD070 SSN Shipping and RMA Receipt Customization V1 1

OverviewCurrently SSN does not track Serial number information in Oracle. As part of RMA Warranty. Project SSN will make Top Level Items serialized at shipment. As the Quantity they ship on an Order line can be large, it will be almost impossible for the users to manually populate Serial Numbers at the time of shipment. For this purpose they need a tool which will automatically populate the Serial Number and also ship the line.

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 5 of 40

Page 6: MD070 SSN Shipping and RMA Receipt Customization V1 1

Approach

Shipping and RMA Receipt Customization Design Approach:

The following describes the standard SSN Oracle Shipping Transactions and Receipt confirmation.

The user will send the shipping or receipt information of forward or reverse logistic in the form of csv file.Then our SSN Logistic Information Upload program will pick this information and load into custom staging tables. If user wants to process the forward logistic transactions for Sales Order they will submit SSN Ship Confirmation (MM lead) and SSN Ship Confirmation(SSN lead) for Purchase Order.If user wants to perform reverse logistic transactions they will submit SSN RMA and Ship Confirmation to do the receipt confirmation or ship confirmation depending on whether receipt date or shipping date is given.

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 6 of 40

Page 7: MD070 SSN Shipping and RMA Receipt Customization V1 1

Definitions

Acronyms

Key Word MeaningSSN Silver Spring Networks

Technical/Functional Assumptions

No: AssumptionPushing

Document References (WIP - To be updated upon completion of all documents)

No: Reference: Description

Pushing 1 MD-050_Shipping_Rec_Cust.docx MD-050 for Shipping and receipt

customization.

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 7 of 40

Page 8: MD070 SSN Shipping and RMA Receipt Customization V1 1

High Level Process Program Flow

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 8 of 40

Page 9: MD070 SSN Shipping and RMA Receipt Customization V1 1

Detailed Design:

The user will send the shipping or receipt information of forward or reverse logistic in the form of csv file.Then our SSN Logistic Information Upload program will pick this information and load into custom staging tables. If user wants to process the forward logistic transactions for Sales Order they will submit SSN Ship Confirmation (MM lead) and SSN Ship Confirmation(SSN lead) for Purchase Order.If user wants to perform reverse logistic transactions they will submit SSN RMA and Ship Confirmation to do the receipt confirmation or ship confirmation depending on whether receipt date or shipping date is given.

Module List

Concurrent Programs

SSN Logistic Information Upload

Flat file and Control File

Forward-Logistic-definition.csv

Reverse-Logistic-definition.csv

XXSSN_Load_Logistic_info.ctl

Database Table

XXSSN.XXSSN_FORWARD_LOGISTIC_INFOXXSSN.XXSSN_REVERSE_LOGISTIC_INFO

1. Concurrent Program - SSN Forward Logistic Information Upload

SSN Forward Logistic Information Upload is the generic concurrent program to upload the logistic information provided in csv file into custom staging table.

Calling Argument

SSN Forward Logistic Information Upload is scheduled hourly to process the records populated in the Logistic Information staging tables. This can be also manually submitted this as a request from ORACLE from the Standard Request Submission form.

ArgumentParameter Prompt Value Set Mandatory Default

P_File_Path File Path 80 character Y Logistic Folder path on application server.

P_File_Name File Name 80 character Y

User can submit the concurrent program with the following parameter:

P_File_Path : Logistic Folder path on application server.

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 9 of 40

Page 10: MD070 SSN Shipping and RMA Receipt Customization V1 1

P_File_Name: File name to be uploaded to staging tables.

2. Concurrent Program - SSN Reverse Logistic Information Upload

SSN Reverse Logistic Information Upload is the generic concurrent program to upload the logistic information provided in csv file into custom staging table.

Calling Argument

SSN Reverse Logistic Information Upload is scheduled hourly to process the records populated in the Logistic Information staging tables. This can be also manually submitted this as a request from ORACLE from the Standard Request Submission form.

ArgumentParameter Prompt Value Set Mandatory Default

P_File_Path File Path 80 character Y Logistic Folder path on application server.

P_File_Name File Name 80 character Y

User can submit the concurrent program with the following parameter:

P_File_Path : Logistic Folder path on application server.

P_File_Name: File name to be uploaded to staging tables.

3. Concurrent Program -SSN Ship Confirmation(MM lead)

SSN Ship Confirmation (MM lead) is the generic concurrent program to validate the Shipping information and doing transaction in oracle for the same.

Calling Argument

SSN Ship Confirmation(MM lead) is submitted on demand to process the oracle shipping transactions for the information provided by the user in csv file for the forward logistic.

Argument Prompt Value Set Mandatory Default

P_File_Path File Path 80 character Y(Hidden) Logistic Folder path on application server.

P_File_Name File Name 80 character Y

P_Type Document Type 30 char Y ( Hidden) ‘SO’

P_Order Number Order Number Number N(Optional)

P_Ship_Method Ship Method 80 character Y (Optional)

P_Tracking_Number

Tracking Number

80 character N(Optional)

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 10 of 40

Page 11: MD070 SSN Shipping and RMA Receipt Customization V1 1

User can submit the concurrent program with the following parameter:

P_File_Path : Logistic Folder path on application server.

P_File_Name: File name to be uploaded to staging tables

P_Type: Document Type whether PO or SO is given in document.

P_Order Number: User will enter the Sales Order number from the file to be processed.

4. Concurrent Program -SSN Ship Confirmation(SSN lead)

SSN Ship Confirmation(SSN lead) is the generic concurrent program to validate the Shipping information and doing transaction in oracle for the same.

Calling Argument

SSN Ship Confirmation(SSN lead) is submitted on demand to process the oracle shipping transactions for the information provided by the user in csv file for the forward logistic.

Argument Prompt Value Set Mandatory Default

P_File_Path File Path 80 char Y(Hidden) Logistic Folder path on application server.

P_File_Name File Name 80 char Y

P_Type Document Type 80 char Y ( Hidden) ‘PO’

P_Order_Number Order Number 80 char N(Optional)

P_Ship_Method Ship Method 80 character Y (Optional)

P_Tracking_Number

Tracking Number

80 character N(Optional)

User can submit the concurrent program with the following parameter:

P_File_Path : Logistic Folder path on application server.

P_File_Name: File name to be uploaded to staging tables

P_Type: Document Type whether PO or SO is given in document.

P_Order Number: User will enter the Purchase Order number from the file to be processed.

5. Concurrent Program -SSN RMA and Ship Confirmation

SSN RMA and Ship Confirmation is the generic concurrent program to validate the Shipping information and doing transaction in oracle for the same.

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 11 of 40

Page 12: MD070 SSN Shipping and RMA Receipt Customization V1 1

Calling Argument

SSN RMA and Ship Confirmation is submitted on demand to process the oracle shipping transactions for the information provided by the user in csv file for the forward logistic.

Argument Prompt Value Set Mandatory Default

P_File_Path File Path 80 character Y(Hidden) Logistic Folder path on application server.

P_File_Name File Name 80 character Y

P_Order Number Order Number 30 char N(Optional)

P_Ship_Method Ship Method 80 character Y (Optional)

P_Tracking_Number

Tracking Number

80 character N(Optional)

User can submit the concurrent program with the following parameter:

P_File_Path : Logistic Folder path on application server.

P_File_Name: File name to be uploaded to staging tables

P_Order Number: User will enter the Sales Order number from the file to be processed.

The concurrent program will do the following process to automate the shipping

process:

Program Flow – will be reviewed and updated

Program 1 : SSN Logistic Information Upload

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 12 of 40

Page 13: MD070 SSN Shipping and RMA Receipt Customization V1 1

Program 2 : SSN Ship Confirmation(MM lead) AND Program 3 : SSN Ship Confirmation(SSN lead)

See below :

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 13 of 40

Page 14: MD070 SSN Shipping and RMA Receipt Customization V1 1

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 14 of 40

Page 15: MD070 SSN Shipping and RMA Receipt Customization V1 1

Program 4 : SSN RMA and Ship Confirmation

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 15 of 40

Page 16: MD070 SSN Shipping and RMA Receipt Customization V1 1

Program Logic (Pseudo Code) – will be reviewed and updatedPROCEDURE MAINBEGIN

CALL SSN Logistic Information Upload ( P_File_Path, P_File_Name )IF Success THEN

IF P_file_name=FL_format.csv THENCALL P_forward_logistic ( p_header_seq_id );

ELSIF P_file_name=RV_format.csv THENCALL P_reverse_logistic ( p_header_seq_id );

ELSEMessage = ‘Wrong file name’

END IF;ELSE

Message = ‘Could not upload the logistic information’END IF;

END MAIN;

----- Below For Forward Logistic validations and Transactions --------------PROCEDURE P_forward_logistic ( p_header_seq_id ) IS

Cursor C_forward_logistic ( p_header_seq_id ) isSelect * from XXSSN_FORWARD_LOGISTIC_INFORMATION;

BEGINFOR i IN C_ forward _logistic LOOP IF P_document_type=’SO’ THEN

IF Check_SO_line_qty =No THENL_Line_validate_status=’E’;Send error message;

ELSIF Check_SO_Line_Qty_With_PO =No THENL_Line_validate_status=’E’;

Send error message;ELSIF Check_SO_Line_Qty_With_Staging=No THEN

L_Line_validate_status=’E’;Send error message;

ELSIF Check_PO_Receipt_already_done =Yes THENL_Line_validate_status=’E’;Send error message;

ELSIF Check_Existing_Error_Record =Yes THEN --- all four concatenated fields are repeated mismatchesL_Line_validate_status=’E’;Send error message;

END IF; ELSIF P_document_type=’PO’ THEN GET_SO_NUMBER(i.po_number); IF Validate_SO =No THEN

L_header_validate_status=’E’;Send error message;

ELSE FOR j in ( Order Lines For which BOM is defined)

---- Business validationsIF Check_BOM_Component =No THEN

L_Line_validate_status=’E’;

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 16 of 40

Page 17: MD070 SSN Shipping and RMA Receipt Customization V1 1

Send error message;

ELSIF Check_SO_line_qty =No THENL_Line_validate_status=’E’;Send error message;

ELSIF Check_SO_Line_Qty_With_PO =No THENL_Line_validate_status=’E’;

Send error message;ELSIF Check_SO_Line_Qty_With_Staging=No THEN

L_Line_validate_status=’E’;Send error message;

ELSIF Check_PO_Receipt_already_done =Yes THENL_Line_validate_status=’E’;Send error message;

ELSIF Check_Existing_Error_Record =Yes THEN --- all four concatenated fields are repeated mismatchesL_Line_validate_status=’E’;Send error message;

END IF; END LOOP; END IF; END IF; ----- end for P_Document_type IF L_header_validate_status=E OR L_line_validate_status=E THEN

update staging custom table as 'E' send error message

END IF;--- Actual TransactionsIF L_header_validate_status!=E OR L_line_validate_status!=E THEN FOR j in ( Order Lines For which BOM is defined)

IF Rreservation_Done = 'Yes' THENeligible_for_Pick_release='Y';

ELSEDo_reservation for the custom staging table qty for an item;IF SUCCESS THEN

eligible_for_Pick_release='Y';ELSE

eligible_for_Pick_release='N';update staging as error

END IF;END IF;

END LOOP;END IF;IF (L_header_validate_status!=’E’; OR

L_line_validate_status!=’E’) AND eligible_for_Pick_release='Y' THENIF Pick_Release_Done = 'Yes' THEN

IF Delivery_assigned='Yes' THENeligible_for_Ship_confirm='Y';

ELSEDo Autocreate delivery IF Success THEN

eligible_for_Ship_confirm='Y'; ELSE

eligible_for_Ship_confirm='N';update staging as error

END IF;END IF;

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 17 of 40

Page 18: MD070 SSN Shipping and RMA Receipt Customization V1 1

ELSE

Do_Pick_Release for the Sales Order with Autocreate delivery set as YIF SUCCESS THEN

eligible_for_Ship_confirm='Y';ELSE

eligible_for_Ship_confirm='N';update staging as error

END IF;END IF;

END IF;IF (L_header_validate_status!=’E’ OR L_line_validate_status!=’E’)

AND eligible_for_Ship_confirm='Y' THENIF IS_ALREADY_SHIPPED = 'Yes' THEN

Message = 'Order Line is already shipped'ELSE

Do Ship Confirm with the help of an APIIF SUCCESS THEN

Message = ‘The Order Line is shipped successfully'

ELSE update staging as error

Message = 'the Order Line could not shipped successfully'

END IF;END IF;

END IF; END LOOP;

END P_forward_logistic;

------------------------- Below For Reverse Logistic validations and Transactions --------------------------PROCEDURE P_reverse_logistic ( p_header_seq_id ) ISCursor C_reverse_logistic ( p_header_seq_id ) isSelect * from XXSSN_REVERSE_LOGISTIC_INFORMATION;BEGIN

For i IN C_reverse_logistic LOOP------------------------------------ If received Date is given--------------------------------

IF date_received IS NOT NULL THEN FOR j in ( SELECT * from oe_order_lines_all

where header_id = (select header_id from oe_order_headers_all where order_number=i.order_number))

---- Business validationsIF eligible_for_receiving = 'No' THEN

L_Line_validate_status=’E’;Send error message;

ELSIF Check_SO_line_qty < custom table line qty THEN L_Line_validate_status=’E’;Send error message;

ELSIF Validate_SO_Line_attached_Serial# !=staging Serial # THENL_Line_validate_status=’E’;Send error message;

ELSIF Validate_Error_Record_already_Present_In_Staging=No THEN

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 18 of 40

Page 19: MD070 SSN Shipping and RMA Receipt Customization V1 1

IF check SO#||SO Line#||Date Recd||QTY != j.(SO#||SO Line#||Date Recd||QTY) THEN

L_Line_validate_status=’E’;Send error message;

END IF;END IF;

END LOOP;IF L_Header_validate_status=’E’ OR L_Line_validate_status=’E’ THEN

update staging table as error.END IF;IF L_Header_validate_status!=’E’ OR L_Line_validate_status!=’E’ THEN

Do_RMA_ReceiptIF SUCCESS THEN Message = 'RMA Receipt for line done successfully'

update staging table as Success.ELSE Message = 'RMA Receipt for line could not done

successfully' update staging table as Error.END IF;

END IF;------------------------------------ If Date Shipped is given--------------------------------ELSIF date_Shipped IS NOT NULL THEN

FOR j in ( SELECT * from oe_order_lines_all where header_id = (select header_id from oe_order_headers_all where order_number=i.order_number))---- Business validationsIF eligible_for_shipping = 'No' THEN

L_Line_validate_status=’E’;Send error message;

ELSIF Check_SO_line_qty < custom table line qty THEN L_Line_validate_status=’E’;Send error message;

ELSIF Validate_SO_Line_attached_Serial# !=Custom_table_serial_number THENL_Line_validate_status=’E’;Send error message;

ELSIF Validate_Error_Record_already_In_Staging=No THEN

IF check SO#||SO Line#||Date Recd||QTY != j.(SO#||SO Line#||Date Recd||QTY) THENL_Line_validate_status=’E’;Send error message;

END IF;END IF;

END LOOP;IF L_Header_validate_status=’E’ OR L_Line_validate_status=’E’ THEN

update staging table as error.END IF;--- Actual TransactionsIF L_header_validate_status!=’E’ OR L_line_validate_status!=’E’ THEN

FOR j in ( SELECT * from oe_order_lines_all where header_id = (select header_id from oe_order_headers_all where order_number=i.order_number))IF j.Order_type_Line_Type='SSN Replace' THEN

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 19 of 40

Page 20: MD070 SSN Shipping and RMA Receipt Customization V1 1

Populate Installation details With Transaction Subtype as

‘SSN Replace’ with the help of API number of installation detail record=staging record qty Serial # in Non Source should match serial # in staging

IF SUCCESS THENeligible_for_reservation='Y';

ELSEeligible_for_reservation='N';

END IF;END LOOP;

END IF;IF (L_header_validate_status!=’E’ OR L_line_validate_status!=’E’) AND

eligible_for_reservation= 'Y' THENFOR j in ( Order Lines For which BOM is defined)

IF Rreservation_Done = 'Yes' THENeligible_for_Pick_release='Y';

ELSEDo_reservation for the custom staging table qty for an item;IF SUCCESS THEN

eligible_for_Pick_release='Y';ELSE

eligible_for_Pick_release='N';update staging as error

END IF;END IF;

END LOOP;END IF;IF (L_header_validate_status!=’E’; OR L_line_validate_status!=’E’) AND

eligible_for_Pick_release='Y' THENIF Pick_Release_Done = 'Yes' THEN

IF Delivery_assigned='Yes' THENeligible_for_Ship_confirm='Y';

ELSEDo Autocreate delivery IF Success THEN

eligible_for_Ship_confirm='Y';ELSE

eligible_for_Ship_confirm='N';update staging as error

END IF;END IF;

ELSEDo_Pick_Release for the Sales Order with Autocreate delivery set as YIF SUCCESS THEN

eligible_for_Ship_confirm='Y';ELSE

eligible_for_Ship_confirm='N';update staging as error

END IF;END IF;

END IF;IF (L_header_validate_status!=’E’ OR L_line_validate_status!=’E’) AND

eligible_for_Ship_confirm='Y' THENIF IS_ALREADY_SHIPPED = 'Yes' THEN

Message = 'the Order Line is already shipped'

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 20 of 40

Page 21: MD070 SSN Shipping and RMA Receipt Customization V1 1

ELSE

Do Ship Confirm with the help of an APIIF SUCCESS THEN

update staging table as Success.Message = 'the Order Line is shipped

successfully'ELSE

update staging as errorMessage = 'the Order Line could not

shipped successfully'END IF;

END IF;END IF;

END IF; --- End for i.shipped_date/recept_dateEND LOOP; -- main header cursor loop endsEND P_reverse _logistic;

SHIPPING INTERFACE TABLES:

Create Reservation

INV_RESERVATION_PUB.Create_Reservation( P_API_VERSION_NUMBER => , P_INIT_MSG_LST => , P_RSV_REC => , P_SERIAL_NUMBER =>

/* , P_PARTIAL_RESERVATION_FLAG => FND_API.G_TRUE-- l_partial_reservation_flag

, P_FORCE_RESERVATION_FLAG => FND_API.G_TRUE-- , P_PARTIAL_RSV_EXISTS => TRUE--l_partial_reservation_exists */ , P_VALIDATION_FLAG => l_validation_flag , X_SERIAL_NUMBER => x_serial_number , X_RETURN_STATUS => x_return_status , X_MSG_COUNT => x_msg_count , X_MSG_DATA => x_msg_data , X_QUANTITY_RESERVED => x_quantity_reserved , X_RESERVATION_ID => x_reservation_id);

PICK RELEASE PSEUDO CODE

Create Batch

wsh_picking_batches_pub.create_batch(

order_type_id => order_header_id =>

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 21 of 40

Page 22: MD070 SSN Shipping and RMA Receipt Customization V1 1

ship_from_org_id =>auto_Pick_Confirm_Flag => Nexisting_Rsvs_Only_Flag => YAutopack_Flag => NAutopack_Level => 0x_msg_count => x_msg_count

x_return_status => x_return_statusx_msg_data => x_msg_data

)

Release Batch

wsh_picking_batches_pub.release_batch(

Batch ID => Out parameter of Create batchx_msg_count => x_msg_count

x_return_status => x_return_statusx_msg_data => x_msg_data

)

Autocreate delivery Pseudo Code

wsh_delivery_details_pub.autocreate_deliveries

(p_api_version_number => 1.0, p_init_msg_list => l_init_msg_list, p_commit => fnd_api.g_false, x_return_status => l_autocreate_return_status, x_msg_count => x_auto_msg_count, x_msg_data => l_auto_msg_data, p_line_rows => l_line_rows, x_del_rows => l_del_rows )

MOVE ORDER PSEUDO CODE

Perform Move Order transaction is by populating ‘MTL_SERIAL_NUMBERS_TEMP’ table with the serial numbers information and then call the API ‘INV_PICK_WAVE_PICK_CONFIRM_PUB.Pick_Confirm’

MTL_SERIAL_NUMBERS_TEMP

Field Name Description Sample Data

TRANSACTION_TEMP_ID

Foreign key linking to ‘MTL_MATERIAL_ TRANSACTIONS_TEMP’ table

Get this value from ‘MTL_MATERIAL_ TRANSACTIONS_TEMP’ using the move _order_line_id

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 22 of 40

Page 23: MD070 SSN Shipping and RMA Receipt Customization V1 1

FM_SERIAL_NUMBER From serial number ‘SR-NUM-1’

TO_SERIAL_NUMBER To serial number ‘SR-NUM-1’

LAST_UPDATE_DATE Standard who column SYSDATE

LAST_UPDATED_BY Standard who column -1

CREATION_DATE Standard who column SYSDATE

CREATED_BY Standard who column -1

LAST_UPDATE_LOGIN Standard who column -1

INV_PICK_WAVE_PICK_CONFIRM_PUB.pick_confirm (

p_move_order_type => 1 p_transaction_mode => 1

p_trolin_tbl => l_trolin_tblx_msg_count => x_msg_count

x_return_status => x_return_statusx_msg_data => x_msg_data

)

l_trolin_tbl.line_id => move order line id

Any errors in the above API call can be retrieved from ‘x_msg_data’

Shipping Exceptions

l_exception_rec.new_status:= 'CLOSED';

WSH_EXCEPTIONS_PUB.Exception_Action (

p_api_version => 1.0, p_init_msg_list => FND_API.G_FALSE, p_validation_level => FND_API.G_VALID_LEVEL_FULL, p_commit => FND_API.G_FALSE, x_msg_count => o_msg_count, x_msg_data => o_msg_data, x_return_status => o_return_status, p_exception_rec => l_exception_rec, p_action => 'CHANGE_STATUS' );

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 23 of 40

Page 24: MD070 SSN Shipping and RMA Receipt Customization V1 1

SHIP CONFIRM PSEUDO CODE

(a) Update Delivery details information

WSH_DELIVERY_DETAILS_PUB.Update_Shipping_Attributes (

p_api_version_number => 1.0p_init_msg_list => l_init_msg_listp_commit => FND_API.G_TRUEp_changed_attributes => l_changed_attributesp_source_code => ‘OE’x_msg_count => x_msg_count

x_return_status => x_return_statusx_msg_data => x_msg_data

)

(b)Update Delivery information

WSH_DELIVERIES_PUB.Create_Update_Delivery (

p_api_version_number => 1.0p_init_msg_list => l_init_msg_listp_action_code => 'UPDATE',

p_delivery_info => l_delivery_info, p_delivery_name => l_delivery_name, x_delivery_id => x_delivery_id,

x_name => x_namex_msg_count => x_msg_count

x_return_status => x_return_statusx_msg_data => x_msg_data

)

(c) Ship confirm a delivery

WSH_DELIVERIES_PUB.Delivery_Action (

p_action_code => 'CONFIRM'p_delivery_id => l_delivery_idp_delivery_name => l_delivery_namep_sc_action_flag => ‘S’p_sc_rule_name => ship_cofirm_rulex_msg_count => x_msg_count

x_return_status => x_return_statusx_msg_data => x_msg_data

)

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 24 of 40

Page 25: MD070 SSN Shipping and RMA Receipt Customization V1 1

Program Unit

Type Name Description Shared ( Y/N)

Package XXSSN_SC_RECPT_CONF_PKG Package for processing shipping and receipt confirmation.

Log Summary+ --------------------------------------------------------------------------+

Date : <SYSDATE> <Program Name>

INPUT PARAMETERS----------------<All Input Parameters>

+ --------------------------------------------------------------------------+Exception Report

MAC ID Order Number Line Number Error Message

+ --------------------------------------------------------------------------+Successfully Processed Report

MAC ID Order Number Line Number

+ --------------------------------------------------------------------------+

Total Orders Processed : Total Orders Processed successfully : Total Orders Failed :

+ --------------------------------------------------------------------------+

Program Output+ --------------------------------------------------------------------------+

Date : <SYSDATE> <Program Name>

INPUT PARAMETERS----------------<All Input Parameters>

+ --------------------------------------------------------------------------+Exception Report

MAC ID Order Number Line Number Error Message

+ --------------------------------------------------------------------------+

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 25 of 40

Page 26: MD070 SSN Shipping and RMA Receipt Customization V1 1

Successfully Processed Report

MAC ID Order Number Line Number

+ --------------------------------------------------------------------------+

Total Orders Processed : Total Orders Processed successfully : Total Orders Failed : + --------------------------------------------------------------------------+

Schema Diagram

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 26 of 40

Page 27: MD070 SSN Shipping and RMA Receipt Customization V1 1

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 27 of 40

Page 28: MD070 SSN Shipping and RMA Receipt Customization V1 1

Validation Logic: will be reviewed and updated

Validation Validation Message

Forward Logistic

No SO for given PO There is no sales order is populated in PO Header DFF.

No BOM is defined for any SO Line

There are no BOM is defined for any SO Line.

No Component of BOM in PO Line There are no Component of BOM in PO Line

SO Line Qty > = PO Line Qty SO Line Qty should be greater or equal to PO Line Qty

SO Line Qty > = staging Qty SO Line Qty should be greater or equal to staging Qty

PO Line Qty > = staging Qty PO Line Qty should be greater or equal to staging Qty

Already receipt is done PO Receipt of custom line table is already done.

Already Shipped. The order Line is already shipped.

No Onhand available Insufficient Onhand quantities for the order to be

Inventory Period is close Inventory period is not open for the shipped date.

Reverse Logistic

Receipt is already done Receipt is already done

Serial Number is not valid Serial Number given is staging table is not valid.

Validations: -

Exception Messages: will be reviewed and updated

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 28 of 40

Page 29: MD070 SSN Shipping and RMA Receipt Customization V1 1

Incompatibility

The concurrent program ‘SSN Shipping and RMA Receipt confirmation’ will be incompatible to itself.

Performance Consideration

Indexes on the staging tables will be created on need basis by the development team and the document will be updated back with the information during UAT.

Other Consideration

Assumption: N/A

Table and View Usage

Table Name Select Insert Update Delete

XXSSN_FORWARD_LOGISTIC_INFO X X

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 29 of 40

Page 30: MD070 SSN Shipping and RMA Receipt Customization V1 1

Table Name Select Insert Update Delete

XXSSN_REVERSE_LOGISTIC_INFO X X

WSH_PICKING_BATCHES X X X

WSH_DELIVERY_DETAILS X X X

WSH_DELIVERY_ASSIGNMENTS X X X

WSH_CARRIERS X

WSH_CARRIER_SERVICES X

MTL_SYSTEM_ITEMS_B X

MTL_MATERIAL_TRANSACTIONS X X X

MTL_SERIAL_NUMBERS X

MTL_UNIT_TRANSACTIONS X X X

MTL_TRANSACTIONS_INTERFACE X X

MTL_SERIAL_NUMBERS_INTERFACE X X

MTL_TRANSACTION_ACCOUNTS X X

MTL_PARAMETERS X

MTL_TRX_SOURCE_TYPES X

MTL_TRANSACTION_TYPES X

OE_ORDER_HEADERS_ALL X

OE_ORDER_LINES_ALL X X

OE_TRANSACTION_TYPES_TL X

OE_ORDER_HOLDS_ALL X

Table Definition and Mapping:

Staging table Definition

Index / Constraint

Owner Table Column Index Constraint File Name

XXSSN XXSSN_FORWARD_LOGISTIC_INFO HEADER_SEQ_ID PRIMARY KEY

XXSSN XXSSN_REVERSE_LOGISTIC_INFO LINE_SEQ_IDHEADER_SEQ_ID

PRIMARY KEYFOREIGN KEY

Sequence

Owner Name Start with

Increment By File Name

XXSSN XXSSN_FORWARD_LOGISTIC_INFO_SEQ 1 1 XXSSN_FORWARD_LOGISTIC_INFO_SEQ.seq

XXSSN XXSSN_REVERSE_LOGISTIC_INFO_S 1 1 XXSSN_REVERSE_LOGISTIC_INFO_SEQ.seq

Grant

GRANT ALL on XXSSN.XXSSN_FORWARD_LOGISTIC_INFO to APPS

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 30 of 40

Page 31: MD070 SSN Shipping and RMA Receipt Customization V1 1

GRANT ALL on XXSSN.XXSSN_REVERSE_LOGISTIC_INFO to APPS

GRANT ALL on XXSSN.XXSSN_FORWARD_LOGISTIC_INFO_SEQ to APPS

GRANT ALL on XXSSN.XXSSN_REVERSE_LOGISTIC_INFO_SEQ to APPS

Synonym

CREATE SYNONYM XXSSN_FORWARD_LOGISTIC_INFO FOR XSSN.XXSSN_FORWARD_LOGISTIC_INFO;

CREATE SYNONYM XXSSN_REVERSE_LOGISTIC_INFO FOR XXSSN.XXSSN_REVERSE_LOGISTIC_INFO;

CREATE SYNONYM XXSSN_FORWARD_LOGISTIC_INFO_SEQ FOR XXSSN.XXSSN_FORWARD_LOGISTIC_INFO_SEQ;

CREATE SYNONYM XXSSN_REVERSE_LOGISTIC_INFO_SEQ FOR XXSSN.XXSSN_REVERSE_LOGISTIC_INFO_SEQ;

Lookup

None.

Value Set

Value Set Size Type Req Validation/Values

SQL Statement

Concurrent Program Definition

1. System Administrator Concurrent Program Executable

Field Value

Executable SSN_FRWD_LOGISTIC_INFO_UPLOAD

Short Name SSN_FRWD_LOGISTIC_INFO_UPLOAD

Application Silver Springs Application (Custom)

Description SSN_FRWD_LOGISTIC_INFO_UPLOAD EXECUTABLE

Execution Method SQL Loader

Execution File Name XXSSN_SHIP_AUTO_FWD_PROG

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 31 of 40

Page 32: MD070 SSN Shipping and RMA Receipt Customization V1 1

System Administrator Concurrent Program Define

System Administrator Concurrent Program Define Parameters

Parameter Prompt Value Set Required Displayed Display Size

P_File_Path File Path 80 Char Y Y 50

P_File_Name File Name 80 Char Y Y 50

2. System Administrator Concurrent Program Executable

Field Value

Executable SSN_REVERSE_LOGISTIC_INFO_UPLOAD

Short Name SSN_ REVERSE_LOGISTIC_INFO_UPLOAD

Application Silver Springs Application (Custom)

Description SSN REVERSE_LOGISTIC_INFO_UPLOAD EXECUTABLE

Execution Method SQL Loader

Execution File Name XXSSN_SHIP_AUTO_REV_PROG

System Administrator Concurrent Program Define

System Administrator Concurrent Program Define Parameters

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 32 of 40

Field Value

Program SSN Forward Logistic Information Upload

Short Name SSN_FRWD_LOGISTIC_INFO_UPLOAD

Application Silver Springs Application (Custom)

Description SSN Forward Logistic Information Upload Program.

Executable Name SSN_FRWD_LOGISTIC_INFO_UPLOAD

Use in SRS Yes

Output FormatStyle

Field Value

Program SSN Reverse Logistic Information Upload

Short Name SSN_REVERSE_LOGISTIC_INFO_UPLOAD

Application Silver Springs Application (Custom)

Description SSN Logistic Information Upload Program.Executable Name SSN_ REVERSE_LOGISTIC_INFO_UPLOAD

Use in SRS Yes

Output FormatStyle

Page 33: MD070 SSN Shipping and RMA Receipt Customization V1 1

Parameter Prompt Value Set Required Displayed Display Size

P_File_Path File Path 80 Char Y Y 50

P_File_Name File Name 80 Char Y Y 50

3. System Administrator Concurrent Program Executable

Field Value

Executable SSN_SHIP_CONF_MM_LEAD

Short Name SSN_SHIP_CONF_MM_LEAD

Application Silver Springs Application (Custom)

Description SSN Shipping Confirmation MM Lead Executable.

Execution Method PL-SQL Stored Procedure

Execution File Name XXSSN_SC_RECPT_CONF_PKG. MM_LEAD

System Administrator Concurrent Program Define

System Administrator Concurrent Program Define Parameters

Parameter Prompt Value Set Required

Displayed Display Size

P_File_Path File Path 80 character Y Y 50

P_File_Name File Name 80 character Y Y 50

P_Order_Type Order Type 30 char Y N 50

P_Order_Number

Order Number Number N Y 50

P_Ship_Method Ship Method 80 character N Y 50

P_Tracking_Num

Tracking Number

80 character N Y 50

4. System Administrator Concurrent Program Executable

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 33 of 40

Field Value

Program SSN Shipping Confirmation – MM LeadShort Name SSN_SHIP_CONF_MM_LEAD

Application Silver Springs Application (Custom)

Description SSN Shipping Confirmation MM Lead Program.

Executable Name SSN_SHIP_CONF_MM_LEAD

Use in SRS Yes

Output FormatStyle

Page 34: MD070 SSN Shipping and RMA Receipt Customization V1 1

Field Value

Executable SSN_SHIP_CONF_SSN_LEAD

Short Name SSN_SHIP_CONF_SSN_LEAD

Application Silver Springs Application (Custom)

Description SSN Shipping Confirmation SSN Lead Executable.

Execution Method PL-SQL Stored Procedure

Execution File Name XXSSN_SC_RECPT_CONF_PKG.SSN_LEAD

System Administrator Concurrent Program Define

System Administrator Concurrent Program Define Parameters

Parameter Prompt Value Set Required

Displayed Display Size

P_File_Path File Path 80 character Y Y 50

P_File_Name File Name 80 character Y Y 50

P_Order_Type Order Type 30 char Y N 50

P_Order_Number

Order Number Number N Y 50

P_Ship_Method Ship Method 80 character N Y 50

P_Tracking_Num

Tracking Number

80 character N Y 50

5. System Administrator Concurrent Program Executable

Field Value

Executable SSN_RMA_SHIP_CONF

Short Name SSN_RMA_SHIP_CONF

Application Silver Springs Application (Custom)

Description SSN RMA and Ship Confirmation Executable.

Execution Method PL-SQL Stored Procedure

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 34 of 40

Field Value

Program SSN Shipping Confirmation – SSN LeadShort Name SSN_SHIP_CONF_SSN_LEAD

Application Silver Springs Application (Custom)

Description SSN Shipping Confirmation SSN Lead Program.

Executable Name SSN_SHIP_CONF_SSN_LEAD

Use in SRS Yes

Output FormatStyle

Page 35: MD070 SSN Shipping and RMA Receipt Customization V1 1

Field Value

Execution File Name XXSSN_SC_RECPT_CONF_PKG. MAIN

System Administrator Concurrent Program Define

System Administrator Concurrent Program Define Parameters

Parameter Prompt Value Set Required

Displayed Display Size

P_File_Path File Path 80 character Y Y 50

P_File_Name File Name 80 character Y Y 50

P_Order_Type Order Type 30 char Y N 50

P_Order_Number

Order Number Number N Y 50

P_Ship_Method Ship Method 80 character N Y 50

P_Tracking_Num

Tracking Number

80 character N Y 50

Installation Requirement

Installation scripts must be prepared to perform the following actions in an automated way:

1. Create new Table.

2. Run Index, Sequence, Grant, Synonym script.

3. Define Lookup, Value Set.

4. Compile the custom package.

5. Register Concurrent Program.

6. Assign the concurrent program to appropriate responsibility.

7. Schedule Concurrent Program.

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 35 of 40

Field Value

Program SSN RMA and Ship Confirmation

Short Name SSN_RMA_SHIP_CONF

Application Silver Springs Application (Custom)

Description SSN RMA and Ship Confirmation Program.Executable Name SSN_RMA_SHIP_CONF

Use in SRS Yes

Output FormatStyle

Page 36: MD070 SSN Shipping and RMA Receipt Customization V1 1

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 36 of 40

Page 37: MD070 SSN Shipping and RMA Receipt Customization V1 1

Test Case – will be updated

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 37 of 40

Page 38: MD070 SSN Shipping and RMA Receipt Customization V1 1

Implementation Note

This document describes exactly how Shipping and RMA Receipt Customization

was developed and implemented at SSN.

Design Summary

Functional Design

Functional Design Approval

Technical Design

Design Review

Final Acceptance

Coding Summary

Development was done to work with Release 12.0 of Oracle Applications. All coding follows the standards defined in the Build Standards document for SSN Coding Standards.

Program Files

The files required for this customization are as follows:

File Description Coded By

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 38 of 40

Page 39: MD070 SSN Shipping and RMA Receipt Customization V1 1

Testing Summary

The customizations were tested in SSN's test environment before being moved to production. See the Link Test scripts for more information.

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 39 of 40

Page 40: MD070 SSN Shipping and RMA Receipt Customization V1 1

Open and Closed Issue for this Deliverable

Open Issue

ID Issue Resolution Responsibility Target Date Impact Date

Closed Issue

ID Issue Resolution Responsibility Target Date Impact Date

MD070_SSN_Shipping and RMA Receipt Customization_V1_1.doc Page 40 of 40