Dynamics GP Manufacturing rollup and revalue/place cost may not work for all items
Hi Everyone,
Ever had an issue with Manufacturing Standard cost Rollup and revalue/replace cost not working? If so, this is a great article for you! I've listed out some things to check and created multiple blogs based on what you might be seeing.
Standard cost Rollup/Replace cost is not working for any item in GP Manufacturing.
This blog will be broken into 3 sections.
- Section 1 will include steps to troubleshoot common errors during the rollup/replace cost process.
- Section 2 will include steps to take if your system locks up while running the rollup/replace cost function.
- Section 3 will be steps to take if your rollup/replace cost finished, but your costs did not change.
Section 1: What error are you receiving?
Below each error, is a link for steps to correct them. If you are not receiving an error, go to Section 2.
- Violation of PRIMARY KEY constraint 'PKBomlev2'. Cannot insert duplicate key in object 'dbo.Bomlev2'.
- Violation of PRIMARY KEY constraint 'PKBomlev1'. Cannot insert duplicate key in object 'dbo.Bomlev1'.
- Procedure or function mcstDoItemSCST02 expects parameter '@parent_part2' error
https://community.dynamics.com/gp/b/dynamicsgp/posts/error
- Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression
- Revaluation in Process Error
- Arithmetic overflow error converting IDENTITY error
- You can't revalue inventory because there are unposted shipment or shipment/invoice transactions in Purchase Order Processing error
- If your error was not included in the above list, open a new incident with support.
Section 2: Is your system locking up when running the rollup/replace cost?
- Check to see if these is some type of mismatch in position numbers or sequence numbers on one of your BOMs that can cause this issue. Run the below scripts against your company database.
select POSITION_NUMBER, PPN_I from BM010115 where BOMCAT_I ='1'
group by POSITION_NUMBER, PPN_I having count (*) >1
select BOMSEQ_I, PPN_I from BM010115 where BOMCAT_I ='1'
group by BOMSEQ_I, PPN_I having count (*) >1
select PPN_I,BOMSEQ_I from BM010115 where BOMCAT_I in (1,2)
and PPN_I in(select ITEMNMBR from IV00101 where VCTNMTHD>3)
group by PPN_I,BOMSEQ_I having count(*)>1 order by PPN_I,BOMSEQ_I
If these scripts return results, you must delete one of the duplicates using SQL. Delete the line based on the dex_row_id.
- Verify you do not have a recursive BOM. Follow the steps for recursive BOM error below.
https://community.dynamics.com/gp/b/dynamicsgp/edit/327918
- Run Checkdata and lock for the following errors. Follow the Checkdata document link to run the script and correct the errors.
Manufacturing Setup - Check data stored procedure - Dynamics GP | Microsoft Docs
If you receive any of the below errors, they must be corrected:
BOM PARENT MISSING ITEM MASTER RECORD
INVALID BOM CATEGORY
INVALID BOM TYPE
TABLE XXXXX HAS BOM SEQUENCES THAT ARE 0
PERPETUAL ITEM ON PERIODIC BOM
BOM PARENT MISSING ITEM MASTER RECORD
IC COST ITEM MASTER RECORD IS MISSING ITEM MASTER RECORD
IC_IV_STANDARD RECORD IS MISSING AN ITEM MASTER RECORD
ICIV0323 UNIT COST DOES NOT MATCH ITEM STANDARD COST
INVALID ROUTING SETUP LABOR CODE
INVALID ROUTING WORK CENTER
ITEM MASTER AND IC COST ITEM MASTER HAVE DIFFERENT VALUATION METHODS
ITEM MASTER MISSING IC COST STANDARD ITEM DEFAULT FOR A STANDARD COST ITEM
STANDARD COST ITEM IS MISSING AN IC_IV_STANDARD RECORD
STANDARD COST BOUGHT ITEM IS MISSING AN IC COST STANDARD ITEM DEFAULTS
- If the above did not correct your lockup issues, contact the support desk.
Section 3: Is the rollup/replace cost completing but no items are updated?
- Verify that you have records in the IV00101, CT00003, and ICIV0323for your items and that each costing column has the correct amount. Run the below scripts against your company database.
select a.ITEMNMBR, A. TOTALCOSTI_1 AS ICIV0323TOTALCOST, B. STNDCOST AS IV00101COST from ICIV0323 a join IV00101 b on a.ITEMNMBR=b.ITEMNMBR where a.TOTALCOSTI_1<>b.STNDCOST
select a.ITEMNMBR, A. MATCOSTI_1 AS ICIVCOST, B. COST_I AS CTCOST from ICIV0323 a join CT00003 b on a.ITEMNMBR=b.ITEMNMBR where a.MATCOSTI_1<>b.COST_I
If items are returned from these scripts, you must use SQL to update the columns to match. The STNDCOST column in the IV00101 must match the TOTALCOSTI_1 column in the ICIV0323. The MATCOSTI_1 column in the ICIV0323 must match the COST_I column in the CT00003. Use SQL and the dex_row_id to correct the values so that the match.
- Next, verify your standard cost items have a record in the CT00200. Run the below script.
SELECT * FROM ICIV0323 WHERE ITEMNMBR NOT IN (SELECT ITEMNMBR FROM CT00200)
If you are missing records in this table, or the CT00003 an ICIV0323, download the scripts below and run them against your company database to see if that helps.
https://mbs2.microsoft.com/fileexchange/?fileID=81f534d0-d6e5-46a5-926b-9e2f393fdc2f
- Verify there is not a perpetual item on a periodic BOM. If there is a perpetual item on periodic BOM it will prevent the rollup for any items related to the problem BOM
Run the below scripts against you company database.
SELECT a.PPN_I, a.CPN_I, a.BOMCAT_I, a.BOMNAME_I FROM BM010115 a, IV00101, IV00101 AS IV00101_2 WHERE a.PPN_I = IV00101.ITEMNMBR AND a.CPN_I = IV00101_2.ITEMNMBR AND IV00101.VCTNMTHD > 3 AND IV00101_2.VCTNMTHD < 4
If this returns results, you must remove the item from the BOM in BOM Entry.
- Verify all components have a record in the IV00101. Run the below script against the company database.
SELECT PPN_I, CPN_I, BOMCAT_I, BOMNAME_I FROM BM010115 WHERE CPN_I NOT IN (SELECT ITEMNMBR FROM IV00101)
If this returns results, you must enter the item in Cards | Inventory | Item and enter the item on the card.
- If you are doing the rollup/revalue routine, verify that you do not have items with overrides costs. Run the below script against the company database.
SELECT * FROM ICIV0323 WHERE NO_CALC_MAT<>0
- Contact the support desk if this did not correct the problem.

Like
Report
*This post is locked for comments