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
  1. After backing up the database, open the DBBrowser
  2. Run Sql #1
  3. Click on the last record button
  4. Copy the OrderID
  5. Go to the GL Database table and filter by OrderID = XXXX (paste in the OrderID you copied)
  6. Navigate down to the last record - see if one of the last records is for AccountCode 4120 (Discount) - note the amount
  7. Copy the filter (OrderID = XXXX)
  8. Go to the Order Datbase
  9. Paste in the filter (OrderID = XXXX) you copied and hit enter
  10. Scroll to the right in the Order Database till you see the DiscountAmount
  11. Confirm that the amount there does not match the Amount in GL table
    1. If it does not, confirm that the amount matches the GL amount plus the difference that the query gave you
  12. 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
  13. 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
  1. Download GL Out of Balance.exe gl_out_of_balance.exe to customer's server and place in the Utilities folder
  2. Double click on the executable
  3. Click the View/Edit Sql button
  4. Modify the date range to the time frame the customer said the OOB occurred or to the last few months
  5. Click the run
  6. This will give you a list of orders and the datetime frame they are out of balance
  7. 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.