The user had a posting interruption posting RM invoices with payments and they got an “Object has no reference” error when attempting to recover the batch. However, the batch posted completely in AR, Bank Rec, and the GL has a batch waiting to be posted. However, the transactions did not clear out of RM work and only 21 of the 98 cash receipts in the batch ended up in the EFT table/CM20203 so they cannot create their EFT file. In addition, the Header record in CM20202 says there are 126 transactions, not 98. I suspect that every time they attempted to recover the batch they overwrote the EFT table but am not sure.
The questions are:
1. Is there a way to recreate the EFT file
2. If they were able to modify and use a prior one or create one by restoring to test, would that create a problem in the live system (missing information down the road for example)?
Were you able to figure this out? Thank you.
Oh, yes. I.m sorry. I was quite frazzled when it was over. And it turned out to be something goofy. We restored the prior night's backup to the test company (change the test company name temporarily to the name of the live company so you can create the EFT and send it from there). The posting stopped again. I ran a check links but that did not help. The Dexsql.log did not indicate any issue. Microsoft had recommended we try posting one by one and we found the transaction that it had stopped on so we looked at the customer and found that the address code had been changed and the new Address ID was not set up for EFT. I ran a SQL query and a few others were no longer set up for EFT. We restored to test again, set up the missing EFTs and she was able to post and create the ACH file. I confirmed with Microsoft that no history gets saved and it was ok to just clear the CM20202 and CM20203 tables in the live company. After everything was done, she was able to delete the batch in the live company since it had correctly posted in every module.I created a Smart List so she can check all of her customers and not just the ones in the batch. There were quite a few that had not been set up so they made the corrections and will run the smartlist prior to processing EFTs in the future to make sure nothing needs to be corrected prior to processing.
***NOTE: Don't forget to change the test company name back so that no one selects it in error.
To delete the batch, or make it available to print an edit list if it has not finished posting, you likely need to run the stuck batch procedures. You should make a full SQL backup of the company database and have all user out of GP in case a restore is required. They should be out of all companies since you will need to find any stuck records in tables that should be empty if no one is logged in.
Run the following on the Dynamics Database. If everyone is out, there should be no one in the system:
Select * from DYNAMICS..ACTIVITY
****If there are any records in the ACTIVITY table, stop and verify with the user(s) that they have completely logged out of GP. Once you are certain they are out, run the following.
In the company database run the following, substituting the correct batch name for XXXX
select BCHSTTUS, MKDTOPST, * from SY00500 where BACHNUMB='XXXX'
Update SY00500 set BCHSTTUS=0, MKDTOPST=0 where BACHNUMB='XXXX'
Hope this helps.
Other Microsoft Sites
I'm a Customer
I'm a Partner
Follow Microsoft Dynamics