The document discusses using shipping public APIs to automate pick, pack, and ship activities. It provides an overview of standard parameters used across APIs, describes a sample workflow involving booking an order, creating a delivery, assigning details, picking, packing, updating details, and shipping. Specific APIs are listed for each step, along with required and optional parameters.
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
Pick pack and ship confirm process in oracle apps
1. Pick Pack and Ship using Shipping Public API
Introduction:
The shippingPublicAPI’s(ApplicationProgramInterface) are pl/sql packageswhichwhencalled
usingwrapperfileswill performthe same actionspossible fromthe ShippingapplicationsUI.
The real time nature of the shippingAPI’sinRelease 11i andR12 has providedoptionsforthe
customerstocustomize theirshippingflowsasperthe businessneeds.
In orderto call these API’swe onlyneedtopassthe requiredparameters.Itismandatorythat
all the requiredparametersneedtobe initializedbeforetheyare passedtothe calledshipping
API.The optional parametersare optional andcanbe passedas additional informationif
needed.
The parameterscan alsobe classifiedasstandardparametersandspecificparameters.
Standardparametersare almostcommonto all the shippingAPI’sandthe SpecificParameters
are specifictoa particularshippingAPIandare discussedseperatelyforeachof the APIcalledin
the flow.These standardandspecificparameterscanbe one of the madatory or option
parameter.
Summary of the FlowSequence:
We have createdthe followingbusinessflow todemonstratethe usage of variousshipping
publicAPI’sduring Pick,Pack and Ship activities.
The diagram alsoshowsthe relevantshippingAPI’susedduringeachof these specificsteps.
2. Standard Parameters:
1. p_api_version_number:Thisisusedto compare the incomingAPIcall'sversion
numberwiththe currentversionnumber(alwayssetto1.0).
2. p_init_msg_list:Thisis usedtoInitialize message listanduse FND_API.G_TRUEto
resetthe list.
3. p_commit: Will committhe changestothe database.The DefaultValue is
FND_API.G_FALSE
4. x_return_status: Requeststhatthe APIreturnthe status of the data afteritcompletes
its function.
Validvaluesinclude:
• Success : FND_API.G_RET_STS_SUCCESS
• Error : FND_API.G_RET_STS_ERROR
• UnexpectedError:FND_API.G_RET_STS_UNEXP_ERROR
5. x_msg_count: Indicatesnumberof errormessagesAPIhasencountered.
6. x_msg_data: Returnserrormessage text.If the x_msg_countisequal to1, thenthis
containsthe actual message.
Settingthe applicationcontext:
Its necessarythatthe applicationcontextneedtobe setbefore makingacall to the shipping
API’sfromsql*plus.
Thisis done bycallingFND_GLOBAL.APPS_INITIALIZE()procedure inthe beginningof the
wrapperfile.
The procedure APPS_INITIALIZE takesthe followingparameters
FND_GLOBAL.APPS_INITIALIZE(user_id IN number,
resp_id IN number,
resp_appl_id IN number,
security_group_idIN number);
3. You can obtainthe validvaluesforeachof these parametersfromthe applicationformssession.
1. Arguments(input)
2. USER_ID - User ID number.
3. RESP_ID - ID numberof the responsibility.
4. RESP_APPL_ID- ID numberof the applicationtowhichthe responsibilitybelongs.
5. SECURITY_GROUP_ID - ID numberof the securitygroup.Thisargumentisautomatically
defaultedbythe API.The callerneednotpassa value forit.
4. DetailedFlowSequence:
Each of the stepscreatedinthe flow are discussedindetail underthe followingheadings.
Book order:
Create an Orderfrom ordermanagementSuperUser,VisionOperations(USA) responsibility
withthe followingdetails
CustomerNumber:1006
Warehouse : M1
ShipMethod : DHL
Line Item : AS54888
OrderedQuantity : 2
5. Create Delivery:
As a nextsteptobooking,a newdeliveryneedstobe created.Inorder to create a new delivery
we needtocall the shippingAPI“WSH_DELIVERIES_PUB.Create_update_delivery”bypassing
the requiredandoptional parametervalues.
Specificparameters:
P_api_version_number=> 1.0
p_action_code => CREATE -- forcreatingnew delivery
p_delivery_info => Attributesof the deliveryentityof type Delivery_Pub_Rec_Type
The sample scriptattachedhere can be usedto create a new delivery.
(Please note it is necessaryto make the changessuggested in these scriptsfor themto work
correctly in your applicationenvironment)
6. Assigndeliverydetail to delivery:
The deliverydetailcanbe assignedtothe newlycreateddeliverybyusingthe publicAPI
“WSH_DELIVERY_DETAILS_PUB. Detail_to_Delivery”.
SpecificParameters:
p_TabOfDelDets => Table of DeliveryDetail id’s
p_action => ASSIGN
p_delivery_id => Deliveryid
delivery_name => Deliveryname to whichthe detail lineswillbe assigned
The sample scriptattachedhere can be usedto assignthe deliverydetail tothe newlycreated
delivery.
DeliveryDetailisassignedtothe Delivery
Pick Release:
The shippingpublicAPI"WSH_DELIVERIES_PUB.Delivery_Action”,enables
pickrelease of the salesorderline. The relevantpickreleaseparametersare retrievedfromthe
ShippingandOrganizationParametersetup.
7. SpecificParameters:
p_action_code = > PICK_RELEASE
p_delivery_id/p_delivery_name=>Id/name of delivery
Refertothe attachedPICK_RELEASE.sql sample scriptwhichwill pickreleaseslinesforagiven
delivery.
Line inStagedStatus
Back order line:
Selectmove_order_line_id,organization_id,delivery_detail_id
From wsh_delivery_details
Where delivery_detail_id=p_delivery_detail_id
API USED : INV_MO_BACKORDER_PVT.BACKORDER
PICKCONFIRMTO CREATE MOVE ORDER HEADER(Transact move order)
API USED : INV_PICK_WAVE_PICK_CONFIRM_PUB.PICK_CONFIRM
Manual Pack:
Before advancingtothisstep,Please refertometalink Note 124593.1(Containerizationin
ShippingExecution) forall the necessaryneededforpacking/containerization
9. 2. PerformManual Pack operationusing the LPN created previously
In orderto pack the deliverydetail line itemusingthe LPN createdpreviously,we canuse
the publicAPI“WSH_CONTAINER_PUB.Container_Actions”.
SpecificParameters:
p_container_name =>Name of the container
p_action_code => Actioncode ‘PACK’
p_detail_tab => Deliverydetail tobe packed.Inputtable of deliverydetail idsof
type WSH_UTIL_CORE.ID_TAB_TYPE, whichisa table of
type Numberindexedby binaryintegers.
Refertothe attachedMANUAL_PACK.sql samplescript,whichwill enable the packingactionon
the createdLPN’s.
Packingcompleted.LPN (CT-13) isdisplayedinthe ParentLPN fieldof the deliverydetail
10. Unpack:
We can unpackthe packeddeliverylinebymakingcall tothe containerpublicAPI
“WSH_CONTAINER_PUB.Container_Actions”
SpecificParameters:
p_container_name=>Name of the container
p_action_code => Actioncode ‘UNPACK’
p_detail_tab => Deliverydetail tobe unpacked.Inputtable of deliverydetailidsof type
WSH_UTIL_CORE.ID_TAB_TYPE whichisa table of type Number
indexedbybinaryintegers.
Unpack Completed.ParentLPN fieldisblank.
Unassignthe unpackedLPN line from delivery:
The deliverydetailforthe LPN line,whichwasunpacked,previouslyneedstobe unassigned
fromthe delivery.
Using“WSH_DELIVERY_DETAILS_PUB.Detail_to_Delivery” shippingAPI,the deliverydetail is
unassignedfromthe delivery.
11. Specificparameters:
p_TabOfDelDets => Table of DeliveryDetail id’s
p_action => ActionUNASSIGN
p_delivery_idordelivery_name =>Deliveryidordeliveryname towhichthe detail lineswill
be assigned
Auto Pack Master:
The Auto-PackMaster behavesverymuchsimilartoAuto-Packexceptthatitgoesone step
furtherand packs the created“detail”containersintoone ormore “parent(master)”
container(s).
The parameter“p_pack_cont_flag”set to‘Y’ or ‘N’ will decidewhethertoautopackthe detail
containersthatare createdintoparentcontainers.
For Autopackmasteroption,setthisparameterto‘Y’
SpecificParameters:
P_entity_tab => Table of idsof eitherlinesorcontainersordeliveriesthatneedto
be autopackedof type WSH_UTIL_CORE.ID_TAB_TYPE
whichisa table of type Numberindexedbybinaryintegers.
P_entity_type => Type of entityidcontainedinthe entity_tabthatneedstobe
autopacked('L' - lines,'C'-containersor'D' - deliveries).
12. P_group_id_tab=> Table of ids(numbersthatdetermine the groupingof linesfor
packingintocontainers) of type
WSH_UTIL_CORE.ID_TAB_TYPE whichis a table of type
Numberindexedbybinaryintegers.
P_pack_cont_flag=>A 'Y' or 'N' value todetermine whethertoautopackthe detail
containersthatare createdintoparent containers.
X_cont_inst_tab=> Table of containerIDscreatedduringthe autopackingprocessof
type
Autopackcompleted.The itembeingshippedispackedinLPN – 251 and the LPN – 251 is further
packedon to Master LPN – 252 (shownunderParentLPN field)
Update DeliveryDetails:
The “WSH_DELIVERY_DETAILS_PUB.Update_Shipping_Attributes”APIenablesyoutomodify
data inwsh_delivery_details.
In thisspecificexample we have usedthisAPItoupdate the shipped_quantityfieldinthe
wsh_delivery_detailstabletoshipall quantities.
SpecificParameters:
p_changed_attributes=>Attributesof ChangedAttributesTabType thatare tobe updated.
p_source_code => Code for source systemwhichupdateswsh_delivery_detailstable(always
setto OE)
13. In orderto specifyinyourlogicaboutbackorderor stagedquantitiesyoucanuse the
followinglogic
-- Shipall quantities
changed_attributes(1).delivery_detail_id:=<<Enter the detail id>>;
changed_attributes(1).shipped_quantity:=<<Enterthe full quantitytobe shipped>>;
-- Back orderall quantities
changed_attributes(2).delivery_detail_id:=<<Enterthe detail id>>;
changed_attributes(2).shipped_quantity:=0;
changed_attributes(2).cycle_count_quantity:=<<Enterthe full quantitytobe shipped>>;
-- Stage all the quantities
changed_attributes(3).delivery_detail_id:=<<Enterthe full quantitytobe shipped>>;
changed_attributes(3).shipped_quantity:=0;
changed_attributes(3).cycle_count_quantity:=0;
ShippedQuantity(2) isupdatedinthe deliverydetail
14. Ship Confirm:
ShipConfirmProcess
================
What happenedduringShipConfirm:
******************************************
The resultsof the pickingprocessare recordedagainsta Delivery.
• ShipConfirmcanonlybe performedonDeliverieswithDeliveryLinesthathave beenPick
Confirmed.
• Shipconfirmingadeliveryrecordsthe resultsof the pickingprocess.These resultscouldbe
shipped,backordered,stagedorcycle countor a combinationof all 4.
• The workflowactivitywill be completedwhenthe quantitypickedisrecordedas“Shipped”.
• If the ordereditemissetup withthe itemattribute “Shippable”checked,ShipConfirmingisa
prerequisite forInvoicing.
ShippedQuantities:
************************
• Once the deliveryisclosedthe OrderLine isupdatedwiththe shippedquantitiesandthe
statusof the line ischangedto“Shipped”.Thisenablesthe orderline toproceedtoitsnext
workflowactivity.
• The ShipConfirmtransactioninitiatesthe InventoryInterface togenerate the “Issue of Stores”
transactionswhichwill decrementinventoryandremove the material reservation.Thenthe OM
interfacesisinitiatedtoupdate the SalesOrderLine withShippedquantities,freightcharges,
etc.
• The Cost of goodssoldaccount numberthatis passedtoinventoryisworkflow generated.In
Inventoryitcreatesa Material Distributionrecordthatisultimatelypassedto the General
Ledger.
• If Shipconfirmispartial the remainingquantitycanbe eitherstagedorbackordered.
BackorderedQuantities:
****************************
• Backorderedquantitiesare leftinthe StagingSubinventory.Theyare notautomatically
returnedtotheirsource location.
• A newpick release will be requiredbefore theycanbe shipconfirmed.
• The backorderedquantityisremovedfromthe deliverybeingShipConfirmed.andthe
reservationisremovedmakingthe quantityavailable toATP.
• The SalesOrderline splitsintoshipmentschedules.One schedule will have the quantitythat
was shippedandastatus of “Shipped”.The otherschedule will have the quantitythatwas
backorderedanda statusof “AwaitingShipment”.
StagedQuantities:
**********************
• Stagedquantitiesare leftinthe Stagingsubinventoryandcanbe ShipConfirmedata later
time.The stagedquantityisremovedfromthe deliverybeingconfirmedandoptionallylinkedto
a newdeliverynumber.
• The SalesOrderline splitsintoshipmentschedules.One schedule will have the quantitythat
was shippedandastatus of “Shipped”.The otherschedule will have the quantitythatremained
Stagedwitha statusof “Picked”.
15. DifferentDeliveryLine Statuses:
*************************************
select* fromwsh_lookups
where lookup_type='PICK_STATUS'
- NotApplicable (CodeX)
The deliverylineisinvoiceable butnon-shippable,forexample,aservice lineora warrantyline.
- NotReadyfor Release (Code N)
The deliverylineisnoteligibleforpickrelease.Occurswhenthe orderline ismanuallyimported
intoOracle ShippingExecutionusingthe ImportDeliveryLine concurrentprocess.Ithasnot
reachedthe AwaitingShippingworkflowactivity.
- ReadyforRelease (Code R)
The deliverylineiseligible forpickrelease.Occurswhenthe orderline hasreachedthe Awaiting
Shippingworkflowactivity(itisbooked,scheduled,andinOracle ShippingExecution).
- SubmittedtoWarehouse (Code S)
Pickrelease hasprocessedthe deliverylineandhas:Createdmove orderheadersandlines.
Foundavailable quantityandcreatedinventoryallocations.Notpickconfirmed.If youare using
auto-pickconfirm,itchangesreleasestatustoStaged.If youare not usingauto-pickconfirmand
wantto progressthe deliverylines,navigate toOracle InventoryMove OrderTransaction
windowandperformmanual pickconfirm.
- Staged(Code Y)
The deliverylineispickconfirmed;inventoryistransferredfromstorage subinventorytostaging
subinventory.Itremainsstageduntil shipconfirm.
- Backordered(Code B)
Anyof the followingcircumstancesoccurs:Pickreleasehasprocessedthe deliveryline and
cannot findthe entire quantity.Thistypicallyoccurswhenthe Oracle Inventoryinventory
balance indicatesthatthere isnotenoughmaterial (eitherbecausethere isnotenoughmaterial
or because the inventorybalance isincorrect).
At shipconfirm,you:EnterShippedQuantitythatislessthanOriginal RequestedQuantity
Backorderthe entire delivery quantityTransferareservationtocycle count.Thistypicallyoccurs
whenthe material thatyouwant to ship:Has become unavailable,forexample,damaged,
betweenpickingandshipping.Isavailableandyoubackordermaterial forspecificbusiness
reasons.Forexample,all availablematerialhasbeenallocatedtoaspecificcustomerwhenyou
findoutadditional supplyforotherorderswillbe delayed.Forinformationonthe backorder
processinginpickrelease andshipconfirm,
- Shipped(Code C)
The deliveryline’sdeliveryisshipconfirmedandpostedasintransit,OMInterface andInventory
Interface have processed,andthe tripisclosed.
- Cancelled(CodeD)
The order line thatthe deliveryline supportsiscancelled.
=================================
:WSH_DELIVERIES_PUB.Delivery_Action:
16. =================================
We can call “WSH_DELIVERIES_PUB.Delivery_Action”APIinordertoshipconfirmthe delivery
Programatically.
As a final step,call “WSH_DELIVERIES_PUB.Delivery_Action”APIinordertoshipconfirmthe
delivery.
SpecificParameters:
p_action_code(Required) =>actionto be performedonDelivery
p_delivery_id (Required) =>deliveryidonwhichthe actionisperformed
p_trip_name => Tripidentifierforassignmentof tripto delivery
p_asg_pickup_loc_code => Stoplocationcode forpickupassignment
p_asg_pickup_dep_date =>Stoplocationdeparture date forpickupassignment
p_asg_dropoff_loc_code=>Stoplocationcode fordropoff assignment
p_asg_dropoff_dep_date=>Stoplocation departure date fordropoff assignment
p_sc_action_flag => ShipConfirmoption - S, B,T, A,C. Usedp_sc_intransit_flag =>
ShipConfirmsetin-transitflag.
p_sc_close_trip_flag => ShipConfirmclose tripflag.
p_sc_create_bol_flag => ShipConfirmcreate Bill of Ladingflag
p_sc_stage_del_flag => ShipConfirmcreate deliveryforstage quantityflag
p_sc_trip_ship_method =>ShipConfirmtripshipmethod.
p_wv_override_flag => Override flagforweightvolume calculations.
x_trip_name => Name of autocreatedtrip.
DeliveryConfirmedandinClosedstatus
17. DebuggingShippingAPI:
In some cases, callsto these API’smaynotbe successful.Insuchcasescallingthe shipping
debuggerpackage(WHS_DEBUG_SV) inthe wrapperfile will resultinthe creationof adetailed
debuglogfile basedonthe variousdebugprofilessetupforshippingmodule .
The stepsgivenbelowwillshowthe stepbystepapproachto generate debuglogfileduringthe
call to ShippingPublicAPI’s.
01. Addthe followinglinesintothe Wrapperfile before makingacall to the shipping
02. Setthe Profiles
OM: DebugLevel - set to 5
INV:DebugLevel - setto 10
WSH: DebugEnabled - setto Yes
WSH: DebugLevel - setto Statement
WSH: DebugLog Directory - setto a validwriteable directorypath
03. Execute the shippingactionviaAPI
04. Navigate tothe respective directoriesspecifiedusingthe profile
“WSH: DebugLog Directory”
05. Obtainthe Debug
18. DebuggingScenario
We are tryingto create a deliveryandhave ensuredthatthe organizationpassedisnotvalid.
The wrapperfile hasbeenembeddedwithlinescallingthe ShippingDebugger.The Debugfile
generatedinthiscase hasthe relevantdebugmessages.
Refertothe sample wrapperfilewithenableddebuggingandthe debuglogfile
generatedasa resultof passinginvalidorganizationid.
MetalinkReferences:
Note 124593.1 ContainerizationinShippingExecution.
Note 290432.1 How toCreate a DebugFile inShippingExecution
Order ManagementTables.
Entered
oe_order_headers_all 1recordcreatedinheadertable
oe_order_lines_all Linesforparticularrecords
oe_price_adjustmentsWhendiscountgetsapplied
oe_order_price_attribsIf linehasprice attributesthenpopulated
oe_order_holds_allIf anyholdappliedfororderlike creditchecketc.
Booked
oe_order_headers_all Booked_flag=YOrderbooked.
wsh_delivery_detailsReleased_statusReadytorelease
Pick Released
wsh_delivery_detailsReleased_status=YReleasedtoWarehouse (Line hasbeenreleasedto
Inventoryforprocessing)
wsh_picking_batchesAfterbatchiscreatedforpickrelease.
mtl_reservationsThisisonlysoftreservations.Nophysical movementof stock
Full Transaction
mtl_material_transactionsNorecordsinmtl_material_transactions
mtl_txn_request_headers
mtl_txn_request_lines
19. wsh_delivery_detailsReleasedtowarehouse.
wsh_new_deliveriesif Auto-Create isYesthendatapopulated.
wsh_delivery_assignmentsdeliveriesgetassigned
Pick Confirmed
wsh_delivery_detailsReleased_status=YHardReservations.Pickedthe stock.Physical
movementof stock
Ship Confirmed
wsh_delivery_detailsReleased_status=CYTo C:Shipped;DeliveryNote getprintedDelivery
assignedtotripstopquantitywill be decreasedfromstaged
mtl_material_transactionsOnthe shipconfirmform, checkShipall box
wsh_new_deliveriesIf DeferInterface ischeckedI.e itsdeferredthenOM& inventorynot
updated.If DeferInterface isnotchecked.:Shipped
oe_order_lines_all Shipped_quantitygetpopulated.
wsh_delivery_legs1legiscalledas1 trip.1Pickup& drop up stopfor eachtrip.
oe_order_headers_all If all the linesgetshippedthenonlyflagN
Autoinvoice
wsh_delivery_detailsReleased_status=INeedtorunworkflow backgroundprocess.
ra_interface_lines_all Datawill be populatedafterwkfw process.
ra_customer_trx_all AfterrunningAutoinvoice MasterProgramfor
ra_customer_trx_lines_all specificbatchtransactiontablesgetpopulated