October 5, 2016

Below Script will help you to get the Inventory Org to Business Group details with Legal Entity, Operating Unit, Ledger, Period details, Inventory Validation org and Purchase Validation org for the Operating unit

This script is in the context of Oracle R12

-------------------
select mp.organization_code org_code,
       org.organization_id org_id,
       org.name org_name,
       hl.location_id,
       hl.location_code,
       hl.address_line_1,
       hl.address_line_2,
       hl.address_line_3,
       hl.town_or_city,
       hl.country,
       hl.postal_code,
       ou.organization_id ou_id,
       ou.name OU,
       le.legal_entity_id le_id,
       le.name LE,
       gl.ledger_id,
       gl.name primary_ledger,
       gl.currency_code,
       bg.name bg,
       (select organization_code
          from apps.mtl_parameters
         where organization_id =
               (select parameter_value
                  from apps.OE_SYS_PARAMETERS_ALL
                 where parameter_code = 'MASTER_ORGANIZATION_ID'
                   and org_id = ou.organization_id)) IVO,
       (select organization_code
          from apps.mtl_parameters
         where organization_id =
               (select inventory_organization_id
                  from AP.FINANCIALS_SYSTEM_PARAMS_ALL#
                 where org_id = ou.organization_id)) PVO,
       (select period_name || ' : ' || open_flag
          from apps.ORG_ACCT_PERIODS
         where period_start_date <= trunc(sysdate)
           and schedule_close_date >= trunc(sysdate)
           and organization_id = mp.organization_id) inv_period,
       (select period_name || ' : ' || show_status
          from apps.GL_PERIOD_STATUSES_V
         where start_date <= trunc(sysdate)
           and end_date >= trunc(sysdate)
           and ledger_id = gl.ledger_id
           and application_id = 101) gl_ledger_period,
       (select period_name || ' : ' || show_status
          from apps.GL_PERIOD_STATUSES_V
         where start_date <= trunc(sysdate)
           and end_date >= trunc(sysdate)
           and ledger_id = gl.ledger_id
           and application_id = 200) AP_period,
       (select period_name || ' : ' || show_status
          from apps.GL_PERIOD_STATUSES_V
         where start_date <= trunc(sysdate)
           and end_date >= trunc(sysdate)
           and ledger_id = gl.ledger_id
           and application_id = 222) AR_period,
       (select period_name || ' : ' || show_status
          from apps.GL_PERIOD_STATUSES_V
         where start_date <= trunc(sysdate)
           and end_date >= trunc(sysdate)
           and ledger_id = gl.ledger_id
           and application_id = 201) PO_period

  from apps.XLE_ENTITY_PROFILES         le,
       apps.HR_ALL_ORGANIZATION_UNITS   ou,
       apps.HR_ALL_ORGANIZATION_UNITS   org,
       apps.HR_ALL_ORGANIZATION_UNITS   bg,
       apps.mtl_parameters              mp,
       apps.GL_LEDGERS                  gl,
       apps.HR_ORGANIZATION_INFORMATION ouinfo,
       apps.HR_ORGANIZATION_INFORMATION orginfo,
       apps.hr_locations                hl
 where mp.organization_id = org.organization_id
   and org.organization_id = orginfo.organization_id
   and org.location_id = hl.location_id
   and orginfo.org_information_context = 'Accounting Information'
   and orginfo.org_information3 = ou.organization_id
   and orginfo.org_information1 = gl.ledger_id
   and orginfo.org_information2 = le.legal_entity_id
   and ou.organization_id = ouinfo.organization_id
   and ouinfo.org_information_context = 'Operating Unit Information'
   and ouinfo.org_information2 = le.legal_entity_id
   and ouinfo.org_information3 = gl.ledger_id
   and bg.organization_id = ou.business_group_id
   and mp.organization_code in ('V1');
-------------------------
Read More

August 19, 2016

Pick Release is the process of Picking the order for ship confirming.
This process includes 3 parts, Move Order creation and Move order Allocation and Move order transaction.

When you do a pick release, it will create a move order, as per the details you have provided in the picking process, it will allocate the move order from the satisfied subinventory, locator, lot, serial, LPN.
And as per the criteria (whether auto pick confirm is Yes or No), it will transact the move order as well.

So in Shipping transaction form, the flow will happen like this

1. Ready to Release: The order is booked and ready and you can run the pick release on this
2. Released to Warehouse: Once you did pick release and if the pick release successful, it will be changed to Released to warehouse. Also if no order satisfies the criteria what you have given, then the status will remain as it is. If Auto Pick confirm is set as Yes, this satus will never come and it will move to next status Satged/Pick released.
3. Backordered: If there is no satisfied source find during the process of pick release, delivery details will be back ordered.
4. Staged/Pick Confirmed: Once pick release process including pick confirm completes (depends on the Auto pick confirm flag), status will be changed to this.

Auto Pick Confirm flag under shipping tab

Mostly this flag was kept as No for Warehouse enabled Organizations, so that the physical pick and drop process can be done from the physical location through Paper based picking or task directed picking. When this flag is No, after pick release, the status in shipping transaction form will be released to warehouse and as per setup pick slip will be printed. Warehouse operator will do the Pick and Drop transaction using the data from the pick slip in MSCA.
Also even if it in not WMS enabled organization, still if you need to manually do the Move order transactions and if your business has some checks, then also you can keep the flag as No.

If the flag is set to Yes, during pick release, system will do the move order transaction as well and status in shipping transaction form will be staged/pick confirmed. Which means pick release is complete and order/delivery is ready for shipping.

Pick release can be done in different ways
Navigation:
Order Management --> Shipping --> Release Sales Order

Using Release Sales Orders form

Here you can enter all required parameter and release the orders either in concurrent or in online method.
In this method, you can pick release individual orders and restrict them with different parameters in the order tab.


In the Shipping tab, you can select how you want to handle the picking batch, whether you want to auto create delivery, whether you want to auto pick confirm, if you want to auto ship confirm the order from this form, also you can do so, if you select Auto pick confirm as Yes and using a ship confirm rule.
You can even restrict or specify certain other parameters like ship method and which sequence rule you want to use.


In the Inventory tab, you can specify from which warehouse, subinventory, locator you want to pick from and which subinventory and locator you want to stage in.
Also you can choose allocation method here whether inventory or cross-docking.
Here you can use business required predefined pick slip grouping rule as well to group the pick slips.


Using Release Sales Orders SRS

Pre-req for this process is to have your Pick release rule defined before hand (explained below).


Benefit of this method is, you can release multiple orders in one request just using a required release Rule name which satisfies your current business need which you have already defined in system.

Note: If you have many Release Rules defined for your business and you want them to be scheduled and executed one by one. You can consolidate all requests in one request set one by one and schedule that request set.

Define Release Rule Form:

Navigation:
Order Management --> Setup --> Shipping --> Picking --> Define Release Rule Form


Pick Release rule is nothing but the predefined pick release rule with all specific restrictions and attributes depending on your business needs.
This form is exactly like the Pick release form we discussed above. The same criteria, same restrictions can be used her as well. But here, you can define the rule, so that instead of manually selecting those criteria, every time, you can use the pre-defined release rule.
You can define multiple release rules with all set of parameters like for different customer, different item category, and all type of business requirements and use the same for Pick release from using the Form or Pick release through SRS.

Post pick Release and Debugging

Post Pick release execution, if any exception occurred, you can find those details in below table

select * from WSH_EXCEPTIONS;

Tables involved in pick release are below
You will be able to find the pick release batch details like what restrictions,, attributes used for the pick release.

SELECT * FROM WSH_PICKING_BATCHES;

Other tables involved here as well for delivery are

WSH_DELIVERY_DETAILS
WSH_DELIVERY_ASSIGNMENTS
WSH_NEW_DELIVERIES

If you want to check which release rules used for which order and what is the pick release batch for your sales order, you can use below script

------------------------------
SELECT wdd.source_header_number,
       oel.line_id,
       mp.organization_code,
       wpb.name,
       mtrl.creation_date,
       mtrl.last_update_date,
       mtrl.request_id mtl_req_id,
       wpb.request_id pick_batch_req_id,
       wdd.batch_id pick_batch_id,
       oel.ship_set_id,
       (select user_concurrent_program_name
          from apps.fnd_concurrent_programs_tl
         where concurrent_program_id =
               (select concurrent_program_id
                  from apps.fnd_concurrent_requests
                 where request_id = nvl(mtrl.request_id, wpb.request_id))) prog_name,
       decode((select concurrent_program_id
                from apps.fnd_concurrent_requests
               where request_id = nvl(mtrl.request_id, wpb.request_id)),
              1003890,
              (select PICKING_RULE_NAME
                 from apps.WSH_PICKING_RULES_V
                where picking_rule_id =
                      (select argument1
                         from apps.fnd_concurrent_requests
                        where request_id =
                              nvl(mtrl.request_id, wpb.request_id)))) rel_rule

  FROM apps.wsh_delivery_details  wdd,
       apps.mtl_txn_request_lines mtrl,
       apps.oe_order_lines_all    oel,
       apps.wsh_picking_batches   wpb,
       apps.mtl_parameters        mp
 WHERE wpb.batch_id = wdd.batch_id
   AND mtrl.line_id = wdd.move_order_line_id
   AND wdd.released_status IN ('S', 'Y', 'C')
   AND wdd.source_code = 'OE'
   AND wdd.source_line_id = oel.line_id
   AND oel.line_id = &LINE_ID
   and oel.ship_from_org_id = mp.organization_id;
---------------------------------------------------------------------------



Read More
Copyright © . Oracle Apps (SCM) . All Rights Reserved
Oracle Apps (SCM) is an online knowledge sharing blog which index online free tutorials, blogs and other sources, to get easier and accessible manner. The blog has been created keeping only one intention of sharing knowledge and for learning purpose. All trademarks, trade names, service marks, copyrighted work, logos referenced herein belong to their respective owners/companies. If any of the posting is violating copyright and you want us to remove that content. Please contact Here