*Note: Before performing ANY of the following, please ensure you have a good Database Backup!
On occasion, we have had customers whose payroll print and post checks process bombs. More often than not this is due to a corrupt Reports.dic.
From the front end of Microsoft Dynamics GP 10, it is difficult (if not impossible) to get the interrupted posting cleaned up, because there are so many things that may or may not have hit the various UPR tables. Here is a way you can correct this from MS SQL:
1. Take a backup of the Company Database– take note of Vacation Information so that you may be able to return this to where it needed to be after performing all of these steps.
2. Recreate the Reports.dic (if this is what appears to be causing the problem… you will know this if your Payroll Batch bombs every time it gets to the posting state and reports won’t print out of the system)
3. Remove all of the Work information with the following delete statements:
Delete UPR10200
Delete UPR10201
Delete UPR10202
Delete UPR10203
Delete UPR10204
Delete UPR10205
Delete UPR10206
Delete UPR10207
Delete UPR10208
Delete UPR10209
Delete UPR10213
Delete UPR10301
Delete UPR19900
Delete UPR19901
(Note, our payroll batch was no longer in the “posting mode” but it also did nothing to print out the gl posting reports.)
To correct all of the “jumbled mess” in the UPR tables and the Checkbook Register:
1. Find the audit trails of the pay run that bombed (In our example we’ll use the following: UPRCC00001144).
2. Run the following MS SQL statements individually against the Dynamics GP company database (the select statement is there so you can see if there is data in that table that relates to the failed pay run):
select * from dd30100 where auctrlcd=’UPRCC00001144′
delete dd30100 where auctrlcd=’UPRCC00001144′
select * from upr30100 where auctrlcd=’UPRCC00001144′
delete upr30100 where auctrlcd=’UPRCC00001144′
select * from upr30200 where auctrlcd=’UPRCC00001144′
delete upr30200 where auctrlcd=’UPRCC00001144′
select * from upr30300 where auctrlcd=’UPRCC00001144′
delete upr30300 where auctrlcd=’UPRCC00001144′
select * from upr30400 where auctrlcd=’UPRCC00001144′
delete upr30400 where auctrlcd=’UPRCC00001144′
select * from upr30401 where auctrlcd=’UPRCC00001144′
delete upr30401 where auctrlcd=’UPRCC00001144′
After running these scripts run Reconcile on all of the Employees with GP Tools>Utilities>Payroll>Reconcile
Check the Employee Summary to see if everything looks ok (as it would have been prior to running this pay run)
Rebuild the batch and going through check printing again.
You will also need to take steps to correct any Checks that have hit the Bank Rec module.