Explanation
Some of these issues are caused by some sort of corruption when writing to the GL. Others are caused by a bug in SMS when doing order discounts
Resolution 1
- After backing up the database, open the DBBrowser
- Run Sql #1
- Click on the last record button
- Copy the OrderID
- Go to the GL Database table and filter by OrderID = XXXX (paste in the OrderID you copied)
- Navigate down to the last record - see if one of the last records is for AccountCode 4120 (Discount) - note the amount
- Copy the filter (OrderID = XXXX)
- Go to the Order Datbase
- Paste in the filter (OrderID = XXXX) you copied and hit enter
- Scroll to the right in the Order Database till you see the DiscountAmount
- Confirm that the amount there does not match the Amount in GL table
- If it does not, confirm that the amount matches the GL amount plus the difference that the query gave you
- If the amount in the Order Database's Discount matches the GL Amount plus the query's Amount, update the GL record to the Amount posted in the Order Database
- If not see Resolution 2
SQL 1
SELECT OrderID, SUM(Amount) FROM "GL Database" GROUP BY OrderID HAVING SUM(Amount) NOT BETWEEN -0.001 AND 0.001 ORDER BY OrderID
Resolution 2
- Download GL Out of Balance.exe gl_out_of_balance.exe to customer's server and place in the Utilities folder
- Double click on the executable
- Click the View/Edit Sql button
- Modify the date range to the time frame the customer said the OOB occurred or to the last few months
- Click the run
- This will give you a list of orders and the datetime frame they are out of balance
- At this point, you will need to either get assistance from a senior tech, or an accounting specialist or you can recreate that order on your local machine and view what your GL Data shows to resolve the issue
You could leave a comment if you were logged in.