The trick to having a single drop ship warehouse is to make sure that it gets defaulted in onto all Externally sourced lines, and especially when the line Source Type is changed from Internal to External.
Here are the changes and setups to make it happen:
1.
Make Source Type a dependency source attribute
Enter the below code into OE_Line_Util_Ext. Clear_Dependent_Attr
IF NOT OE_GLOBALS.Equal(p_x_line_rec.source_type_code, p_old_line_rec.SOURCE_TYPE_code)
THEN
l_index := l_index + 1.0;
l_src_attr_tbl(l_index) := OE_LINE_UTIL.G_SOURCE_TYPE ;
END IF;
This goes at the end of the package, as the very last code
inside the main IF statement in the
package. It will make the ‘Source Type’ a dependency source attribute
2.
Change the OEXUDEPB.pls version
From something like this:
/* $Header: OEXUDEPB.pls 120.5.12010000.7 2012/02/01 20:10:02 gabhatia
ship $ */
To
/* $Header: OEXUDEPB.pls 120.999 custom version freeze $ */
This is recommended by oracle documentation to prevent patches
from overriding the changes in OE_Line_Util_Ext. If any patches alter this
package the above code changes will have to be applied to the OEXUDEPB.pls version provided by the patch manually and only then
the new version can be deployed.
3.
Make Warehouse dependent on Source Type
Alter OE_Dependencies_Extn. Load_Entity_Attributes
by uncommenting the sample dependency code and adding the text highlighted in
red
ELSIF p_entity_code = OE_GLOBALS.G_ENTITY_LINE THEN
null;
-- Sample Code for Disabling
dependency of Invoice To on Ship To
--
x_extn_dep_tbl(l_index).source_attribute := OE_LINE_UTIL.G_SHIP_TO_ORG;
--
x_extn_dep_tbl(l_index).dependent_attribute := OE_LINE_UTIL.G_INVOICE_TO_ORG;
--
x_extn_dep_tbl(l_index).enabled_flag := 'N';
-- l_index := l_index + 1;
-- Sample Code for adding
dependency of Source Type on Item
x_extn_dep_tbl(l_index).source_attribute
:= OE_LINE_UTIL.G_SOURCE_TYPE;
x_extn_dep_tbl(l_index).dependent_attribute := OE_LINE_UTIL.G_SHIP_FROM_ORG;
x_extn_dep_tbl(l_index).enabled_flag
:= 'Y';
l_index := l_index + 1;
END IF;
4.
Change the OEXEDEPB.pls version to prevent
patches from overriding OE_Dependencies_Extn. Similar way as in p.2
5.
Create new dependency template
OM-> Setup -> Rules -> Defaulting -> Order Line
-> Defaulting Condition Templates
6.
Change order of defaulting rules by putting Source
Type in front of Warehouse
OM-> Setup -> Rules -> Defaulting
-> Order Line
7.
Set up the default drop ship warehouse
OM-> Setup -> Rules -> Defaulting -> Order Line
->Warehouse -> Defaulting Rules
Make sure that the Drop Ship condition has lower precedence
than the Always condition
Go to Tools and Generate the Defaulting Handler Package
Now that all the setups are done, you can create an OM line, add Receiving Org to your folder and see how the warehouse and Source Org change as you change the Source Type from Internal to External.
The last thing to remember is adding items and costs to your new organization.
To simplify and full automate it, you may consider
The last thing to remember is adding items and costs to your new organization.
To simplify and full automate it, you may consider
- creating a concurrent request based on EGO_ITEM_PUB.ASSIGN_ITEM_TO_ORG API to always add all the items from your mater item org to the Drop Shipment Organization.
- defining the org as FIFO, even if you are Standard or Average Cost shop in all other orgs. This way you will never have any variances and never have to define cost for this org.
With that in place, create an alert of recurring report to tell you about any onhands present in the DSO org. If there are any that means someone didn't get invoiced properly...
With the single drop shipment org this is trivial to identify.
No comments:
Post a Comment