INV Slow Moving Inventory

Description

Categories
Enginatics
Repository
GitHub
Slow moving, excess and obsolete inventory. Lists items still holding stock as of a chosen date that have had no material movement over a chosen period, with their value, usage rate and months of supply, for obsolescence provisioning.

On Hand is the quantity as of the As of Date, not the current quantity. It is rolled back like Oracle's Transaction Historical Summary report, by reversing every material transaction posted after that date. Values use the item cost of the organization's primary cost method. In process manufacturing (OPM) organizations they use the OPM item cost that applies on the As of Date for the cost method of the legal entity's fiscal policy, which is zero for an item without a cost in that period.

The no activity test is made per item, so an item is dropped as a whole as soon as any of its subinventories moved. Ignore Adjustment Transactions excludes cycle count adjustments, physical inventory adjustments and cost updates from that test and from Last Transaction Date. Logical transactions never count as activity.

Usage Quantity is the quantity issued out of stock over the Usage Months preceding the As of Date. Months of Supply stays empty where there was no usage at all, which identifies the items that have not moved once in the whole window.

Rows are per subinventory; Item On Hand and Item On Hand Value are the item totals across subinventories.

SQL 178 lines

Parameters 10

ParameterTypeList of values SQL
Organization CodeLOV
mp.organization_code=:organization_code
As of DateDate
No Activity SinceDate
Usage MonthsNumber
Ignore Adjustment TransactionsLOV Oracle
SubinventoryLOV
y.subinventory_code=:secondary_inventory_name
ItemLOV
msiv.concatenated_segments=:item
Category Set 1LOV
select xxen_util.item_category_columns(p_category_set_name=>'<parameter_value>', p_table_alias=>'x') sql_text from dual
Category Set 2LOV
select xxen_util.item_category_columns(p_category_set_name=>'<parameter_value>', p_table_alias=>'x') sql_text from dual
Category Set 3LOV
select xxen_util.item_category_columns(p_category_set_name=>'<parameter_value>', p_table_alias=>'x') sql_text from dual