You are on page 1of 21

OPM Actual Costing is NOT the Standard

Keith McCormick, Solution Beacon, LLC

Solution Beacon/NCOUG Harper College, Palatine,IL 15 Aug, 2003 kmccormick@solutionbeacon.com solutionbeacon.com


1
2003 Solution Beacon, LLC. All Rights Reserved.

Overview
This presentation will discuss implementing actual costing in an OPM environment and the challenges involved with reconciling the inventory account to the change in inventory valuation. Attendees will be presented with functional and technical information regarding month end closing procedures and tips and tricks to overcome reconciliation hurdles. Reconciling the net change in inventory valuation to the value in the inventory account at month end is challenging in an OPM actual costing implementation. There are several steps that have to be performed in order for the information to roll up correctly in the calculation of costs. Furthermore, there are several steps to perform in order to accumulate subledger amounts for period end. If any steps are eliminated or performed out of sequence, the subledger values are incorrect. Additionally, depending on the modules that are implemented, conditions may exist in dependent modules (PO, OM, OPM Manufacturing) that prevent costs from being calculated correctly but that allow inventory levels to be adjusted thereby creating a reconciling mess.
2
2003 Solution Beacon, LLC. All Rights Reserved.

Assumptions
n n

Using Period Moving Average Cost (PMAC) Implemented Purchasing for Process Inventory instead of OPM Purchase Management Implemented Oracle Order Management instead of OPM Order Fulfillment

3
2003 Solution Beacon, LLC. All Rights Reserved.

Actual Cost Period End Prerequisites


n n n n n n n n n
4
2003 Solution Beacon, LLC. All Rights Reserved.

Complete and close all inventory batches Complete physical inventory, cycle counts and adjustments Enter all PO receipts, corrections and returns to suppliers Enter AP receipts if synchronizing invoices Ship confirm and update shipping for OM orders Enter resource costs Enter cost burdens Run GL expense allocations Enter actual cost adjustments

Actual Cost Period End Process

5
2003 Solution Beacon, LLC. All Rights Reserved.

Actual Cost Period End Process


n n n

Preliminary close the inventory calendar period Run Actual Cost Process

OPM Inventory > OPM Inventory Control > Inventory Close OPM Financials > Cost Management > Actual Costs > Actual Cost Process

View the actual cost process error messages Run preliminary GL Cost Update

OPM Financials > Cost Management > Actual Costs > Actual Cost Process > Actions menu > View Error Messages OPM Financials > Mfg. Acctg Controller > GL Cost Update

n n

View the GL Cost Update error messages Run Subsidiary Ledger Update

OPM Financials > Mfg. Acctg Controller > GL Cost Update > Actions menu > View Error Messages OPM Financials > Mfg. Acctg Controller > Subledger Update > Actions menu > Test Subsidiary Ledger Update OPM Financials > Mfg. Acctg Controller > Subledger Update > Actions menu > View Error Messages

View the Subsidiary Ledger Update error messages

6
2003 Solution Beacon, LLC. All Rights Reserved.

Actual Cost Period End Process (cont.)


This is where the fun starts
Reconcile the net change in inventory value (Current Period Prior Period) to the inventory account in the Account Distribution report
n

Run Inventory Valuations reports for current period and prior period Run Account Distribution (Account Summary) report for the Test Subledger
OPM Financials > Mfg. Acctg Controller > Reports > Detailed Subledger > Actions Menu > Account Distribution > Report on Test Subledger > Report Type Account Summary OPM Inventory > OPM Inventory Control > Reports > Run > Inventory Valuation Report

7
2003 Solution Beacon, LLC. All Rights Reserved.

Actual Cost Period End Process (cont.)


n n

Final close the inventory calendar period

Run Actual Cost Process if transaction adjustments were entered View the actual cost process error messages Run final GL Cost Update

OPM Inventory > OPM Inventory Control > Inventory Close

OPM Financials > Cost Management > Actual Costs > Actual Cost Process

OPM Financials > Cost Management > Actual Costs > Actual Cost Process > Actions menu > View Error Messages OPM Financials > Mfg. Acctg Controller > GL Cost Update

n n

View the GL Cost Update error messages Run Subsidiary Ledger Update

OPM Financials > Mfg. Acctg Controller > GL Cost Update > Actions menu > View Error Messages OPM Financials > Mfg. Acctg Controller > Subledger Update > Actions menu > Subsidiary Ledger Update OPM Financials > Mfg. Acctg Controller > Subledger Update > Actions menu > View Error Messages
2003 Solution Beacon, LLC. All Rights Reserved.

View the Subsidiary Ledger Update error messages

Actual Cost Period End Process (cont.)


n

Run GL Update OPM Financials > Financial Integration > GL Update n Run Journal Import General Ledger > Journals > Import > Run

9
2003 Solution Beacon, LLC. All Rights Reserved.

Account Mapping Form

10
2003 Solution Beacon, LLC. All Rights Reserved.

Reconciling Inventory Value


The net change in inventory value should reconcile to the accounts associated with the INV account title on the Account Distribution Summary report
Current Period Inventory Value Prior Period Inventory Value = Net Change in Inventory Value this should equal Account Distribution Summary Report (all accounts associated with the INV account title) NOTE: If an account associated with INV is also associated with another account title, then the value associated with the other account titles must be backed out.

11
2003 Solution Beacon, LLC. All Rights Reserved.

Summarize Subledger Entries


SELECT l.co_code, l.fiscal_year, l.period, l.doc_type, gsm.sub_event_code, gsm.sub_event_code, gsm.sub_event_desc, l.acct_ttl_type, gat.acct_ttl_code, gat.acct_ttl_desc, gat.acct_ttl_code, SUBSTR(u.acctg_unit_no,1,10) acct_unit, SUBSTR(m.acct_no,1,50) account, SUBSTR(m.acct_no,1,50) l.currency_base, l.currency_trans, SUM(DECODE(l.debit_credit_sign,1,l.AMOUNT_BASE*l.debit_credit_sign,0)) debit, SUM(DECODE(l.debit_credit_sign,1,l.AMOUNT_BASE*l.debit_credit_sign,0)) SUM(DECODE(l.debit_credit_sign,-1,l.AMOUNT_BASE*l.debit_credit_sign,0)) credit SUM(DECODE(l.debit_credit_sign,FROM gmf.gl_subr_tst l, gmf.gl_accu_mst u, gmf.gl_acct_mst m, gl_sevt_mst gsm, gl_acct_ttl gat WHERE l.co_code = 'TFY' AND l.fiscal_year = '2003' AND l.period = 2 AND l.acct_ttl_type = 1500 -- inventory AND u.acctg_unit_id = l.acctg_unit_id AND m.acct_id = l.acct_id AND u.co_code = l.co_code AND m.co_code = l.co_code AND l.acct_ttl_type = gat.acct_ttl_type AND l.sub_event_type = gsm.sub_event_type GROUP BY l.co_code , l.fiscal_year, l.period, l.doc_type, gsm.sub_event_code, gsm.sub_event_code, gsm.sub_event_desc, l.acct_ttl_type, gat.acct_ttl_code, gsm.sub_event_desc, gat.acct_ttl_desc, u.acctg_unit_no, m.acct_no, l.currency_base, l.currency_base, l.currency_trans
2003 Solution Beacon, LLC. All Rights Reserved.

12

Summarize Subledger Entries (cont.)


Inventory transactions from the test subledger
Doc Type PROD PROD ADJI CREI TRNI OMSO RECV RECV RECV RTRN XFER SubEvent Code CERT RELE IADJ IADJ INTA OMSP RADJ RCPT VOID RTRN XFER Sub Event Description Batch Certification Batch Release Inventory Adjustments Inventory Adjustments Inventory Movement Intra Company Order Management Shipments Inventory Receipt Adjustment Inventory Receipts Inventory Receipt Voids Inventory Returns Inventory Transfers Code Combination 0070-0000-0000-140100-0000 0070-0000-0000-140100-0000 0070-0000-0000-140100-0000 0070-0000-0000-140100-0000 0070-0000-0000-140100-0000 0070-0000-0000-140100-0000 0070-0000-0000-140100-0000 0070-0000-0000-140100-0000 0070-0000-0000-140100-0000 0070-0000-0000-140100-0000 0070-0000-0000-140100-0000 Debit 9,304,068.39 656,413.54 398,703.45 70,003.11 17,687,933.59 13,790.27 3,597,434.52 9,925.15 9,520,256.44 Credit (653,658.28) (8,265,072.29) (746,870.29) (17,687,933.59) (4,764,526.22) (17,237.43) (196,603.81) (9,925.15) (9,531,620.54) Delta 8,650,410.11 (7,608,658.75) (348,166.84) 70,003.11 (4,764,526.22) (3,447.16) 3,597,434.52 (196,603.81) (11,364.10)

Net Change in Inventory

(614,919.14)

13
2003 Solution Beacon, LLC. All Rights Reserved.

Summarize Transaction Data


Retrieve IC_TRAN_PND transactional data
SELECT s.doc_type, SUM(s.total) doc_type_total FROM ( SELECT t.item_id, t.co_code, t.orgn_code, t.whse_code, t.doc_type, SUM(t.trans_qty) total_qty, t.trans_um, c.acctg_cost, c.acctg_cost * sum(t.trans_qty) total FROM ic_tran_pnd t, gl_item_cst c, cm_whse_asc a WHERE t.trans_date >= TO_DATE('01-FEB-2003 00:00:00','dd-mon-yyyy TO_DATE('01- FEB00:00:00','dd- monhh24:mi:ss') AND t.trans_date <= TO_DATE('28-FEB-2003 23:59:59','dd-mon-yyyy TO_DATE('28- FEB23:59:59','dd- monhh24:mi:ss') AND t.completed_ind = 1 AND t.delete_mark = 0 AND t.whse_code = a.whse_code AND c.whse_code = a.cost_whse_code AND c.cost_mthd_code = 'PMAC' AND c.item_id = t.item_id AND c.calendar_code = 'PMAC' AND c.period_code = '0302' GROUP BY t.item_id, t.co_code, t.orgn_code, t.whse_code, t.doc_type, t.trans_um, c.acctg_cost )s GROUP BY s.doc_type

Retrieve IC_TRAN_CMP transactional data


SELECT s.doc_type, SUM(s.total) doc_total FROM ( SELECT t.item_id, t.co_code, t.orgn_code, t.whse_code, t.doc_type, SUM(t.trans_qty) total_qty, t.trans_um, c.acctg_cost, c.acctg_cost * sum(t.trans_qty) total FROM ic_tran_cmp t, gl_item_cst c, cm_whse_asc a WHERE t.trans_date >= TO_DATE('01-FEB-2003 00:00:00','dd-mon-yyyy TO_DATE('01- FEB00:00:00','dd- monhh24:mi:ss') AND t.trans_date <= TO_DATE('28-FEB-2003 23:59:59','dd-mon-yyyy TO_DATE('28- FEB23:59:59','dd- monhh24:mi:ss') AND t.whse_code = a.whse_code AND c.whse_code = a.cost_whse_code AND c.cost_mthd_code = 'PMAC' AND c.item_id = t.item_id AND c.calendar_code = 'PMAC' AND c.period_code = '0302' GROUP BY t.item_id, t.co_code, t.orgn_code, t.whse_code, t.doc_type, t.trans_um, c.acctg_cost )S GROUP BY s.doc_type

14

2003 Solution Beacon, LLC. All Rights Reserved.

Compare Transactions to Subledger


Doc Type
OMSO

Transaction Data
(4,763,056.87)

Subledger Data
(4,764,526.22)

Delta
1,469.35

Description
Possibly sales orders that are not ship confirmed or that have not had Update Shipping run Open production batches or production batches that are completed and closed in separate periods or formulas with a cost allocation not equal 1

PROD RECV RTRN XFER

1,036,961.31 3,382,490.78 (5,366.79)

1,041,751.36 3,382,490.78 (11,364.10)

(4,790.05) 5,997.31

Transfers that have been shipped from the source warehouse and not received at the target warehouse In this case, it is because inventory has been transferred from a costed warehouse to an uncosted wareouse

ADJI CREI STSI TRNI

(350,753.16) 70,003.11 -

(348,166.84) 70,003.11 -

2,586.32) -

15
2003 Solution Beacon, LLC. All Rights Reserved.

Test Subledger Account Map


Request ID: Test Subledger Account Map Acct Title ----INV IVA IVA IVA IVA IVA IVA IVA 01-AUG-2003 01- AUGPage: 2 of 5 Sub Source Event Event Account Desciption ------ ----- ----- -----------------------------IC IADJ IADJ Inventory Inventory Adjustment Expense Inventory Adjustment Expense Inventory Adjustment Expense Inventory Adjustment Expense Inventory Adjustment Expense Inventory Adjustment Expense Inventory Adjustment Expense Account Combination Debit Credit ------------------- ---------- ---------001-0100-14000-000 468,707 746,870 001- 0100- 14000001-0100-14010-000 56 0 001- 0100- 14010002-0200-14010-000 40 0 002- 0200- 14010002-0220-14010-000 6 8 002- 0220- 14010002-0230-14010-000 667,060 332,385 002- 0230- 14010003-0310-14010-000 54,024 61,313 003- 0310- 14010003-0320-14010-000 12,649 0 003- 0320- 14010003-0330-14010-000 2,752 6,458 003- 0330- 14010========== ========== IADJ IADJ Total: 1,215,577 1,215,577 IADJ 001-0100-14000-000 001- 0100- 14000IMVT INTA Total: INTA IMVT XFER Inventory Inventory Transfers Inventory Valuation Variance INV XFR IVV 001-0100-14000-000 001- 0100- 14000002-0200-14010-000 002- 0200- 14010002-0200-14010-000 002- 0200- 14010IMVT XFER Total: XFER 17,687,934 17,687,934 ========== ========== 17,687,934 17,687,934 9,520,256 9,531,621 9,531,621 9,520,265 8 0 ========== ========== 19,051,885 19,051,885 ========== ========== 37,955,396 37,955,396

IMVT

INTA

Inventory

INV

IC Total:

16
2003 Solution Beacon, LLC. All Rights Reserved.

Why Reconciliation Didnt Work


n

Production Batches
u
u

This update statement is needed set the batch completion date equal to the batch close date when they occur in different periods MONYY. The costing process creates separate entries for in the subledger when a batch is closed and when it is completed. If the dates for close and completion are in separate periods, then it causes problems with reconciling costing. -- set the batch_close_date = actual_cmplt_date for batches with -- dates that cross over periods. this situation causes inventory -- values to remain in WIP between periods and complicates reconciliation. -- When the actual_cmplt_date = 01/01/1970, then it is excluded -- since those need special attention. UPDATE pm_btch_hdr SET batch_close_date = actual_cmplt_date WHERE batch_status = 4 AND TO_CHAR(actual_cmplt_date,'MONYY') <> TO_CHAR(batch_close_date,'MONYY') AND actual_cmplt_date <> TO_DATE('01-JAN-1970','DD-MON-YYYY');

All batches must be completed and closed within the same period

17
2003 Solution Beacon, LLC. All Rights Reserved.

Why Reconciliation Didnt Work (cont.)


n

Production Batches
u
t

All batches must be completed and closed within the same period

This query is a final check to ensure that there are no batches that cross period boundaries. If a batch is started in 1 period and finished in another period, reconciling costing is more difficult. If this query returns any records, they will have to be evaluated on a case by case basis to determine the resolution. Usually, it will be to set the completion date and close date to the same period as the start date. -- this query will verify that there are no batches that cross period boundaries SELECT batch_no, actual_start_date, actual_cmplt_date ,batch_status FROM pm_btch_hdr WHERE TO_CHAR(actual_start_date,'MONYY') <> TO_CHAR(actual_cmplt_date,'MONYY') AND batch_status = 4;

18
2003 Solution Beacon, LLC. All Rights Reserved.

Why Reconciliation Didnt Work (cont.)


n

Order Management
u

Orders must be ship confirmed with update shipping completed (oe_interfaced flag = Y)

Inventory Management u Inventory movement from a costed warehouse to an uncosted warehouse

SELECT wdd.source_header_number order_number, wdd.source_line_number line_number, TO_CHAR(ITP.TRANS_DATE,'YYMM') period, itp.trans_um, itp.trans_um, SUM(itp.trans_qty * gic.acctg_cost) cost gic.acctg_cost) FROM ic_tran_pnd itp, cm_whse_asc cwa, gl_item_cst gic, itp, cwa, gic, wsh_delivery_details wdd WHERE wdd.source_line_id = itp.line_id AND wdd.delivery_detail_id = itp.line_detail_id AND wdd.oe_interfaced_flag = 'N' AND itp.doc_type = 'OMSO' AND itp.location <> 'NONE' AND itp.trans_qty <> 0 AND itp.trans_date BETWEEN TO_DATE('01-AUG-02 00:00:00','DD-MON-YY HH24:MI:SS') TO_DATE('01- AUG- 00:00:00','DD- MONAND TO_DATE('31-AUG-02 23:59:59','DD-MON-YY HH24:MI:SS') TO_DATE('31- AUG- 23:59:59','DD- MONAND itp.completed_ind = 1 AND gic.calendar_code = 'PMAC' AND gic.cost_mthd_code = 'PMAC' AND itp.item_Id = gic.item_id AND gic.period_code = '0208' AND itp.orgn_code = gic.orgn_code AND gic.whse_code = cwa.cost_whse_code AND cwa.whse_code = itp.whse_code GROUP BY wdd.source_header_number, wdd.source_header_number, wdd.source_line_number, wdd.source_line_number, TO_CHAR(ITP.TRANS_DATE,'YYMM'), itp.trans_um

19
2003 Solution Beacon, LLC. All Rights Reserved.

Actual Costing Behind the Scenes


Process
Preliminary Close Inventory

Table
ic_perd_bal

Description
Onhand balances are summarized by period, warehouse and item. Used for inventory valuation.

Actual Cost Process

cm_cmpt_dtl Transactions are costed and the components and costs are stored in this table gl_item_cst gl_subr_tst Cost components are rolled up to reflect total item cost Accounting transactions are allocated by period, warehouse, sub-event and account title

Preliminary GL Cost Update Test Subsidiary Ledger Update

20
2003 Solution Beacon, LLC. All Rights Reserved.

Questions?

KMcCormick@SolutionBeacon.com

21
2003 Solution Beacon, LLC. All Rights Reserved.

You might also like