INCONSISTENCY IN G/L ENTRY TABLE

mkpjsrmkpjsr Member Posts: 587
hi experts

I am getting following message ,The transaction can not be completed because it will inconsistencies in the g/l entry table during jobwork cancellation .

Comments

  • krikikriki Member, Moderator Posts: 9,094
    [Topic moved from 'NAV Tips & Tricks' forum to 'NAV/Navision Classic Client' forum]

    The total amount of the G/L Entry should always be 0.
    If you are writing entries to it and the total is not 0 and you want to COMMIT it, you will get this error.
    In general it means there is some bug in the customized code. (a record is not written, or a record too many is written. A bug in the calculation of the amount,rounding errors,...).
    If there is no customized code in any point, it probably is a bug in the base.

    The only way to find out is to use the debugger and following every write to the G/L Entry table (you can start to debug every time codeunit 12 is entered (this is the one that writes to the G/L Entry.

    BTW: another way to help you debugging: if you are on SQL, you can try this trick: just before the COMMIT that generates the error. Do a FINDFIRST on the G/L Entry to force NAV to write all records it has in the buffer to the table. Then add "IF NOT CONFIRM('Continue?',FALSE) THEN ERROR('STOP'); The CONFIRM waits for a confirmation before doing the COMMIT. Opening another session you can see what this session has written in G/L Entry. DON'T DO THIS IN PRODUCTION BECAUSE YOU ARE BLOCKING EVERYONE!
    Regards,Alain Krikilion
    No PM,please use the forum. || May the <SOLVED>-attribute be in your title!


  • David_SingletonDavid_Singleton Member Posts: 5,479
    kriki wrote:
    ...
    The only way to find out is to use the debugger and following every write to the G/L Entry table (you can start to debug every time codeunit 12 is entered (this is the one that writes to the G/L Entry.

    BTW: another way to help you debugging: if you are on SQL, you can try this trick: just before the COMMIT that generates the error. Do a FINDFIRST on the G/L Entry to force NAV to write all records it has in the buffer to the table. Then add "IF NOT CONFIRM('Continue?',FALSE) THEN ERROR('STOP'); The CONFIRM waits for a confirmation before doing the COMMIT. Opening another session you can see what this session has written in G/L Entry. DON'T DO THIS IN PRODUCTION BECAUSE YOU ARE BLOCKING EVERYONE!

    or a MUCH better way would be to search mibuso for Rashed's trick to solve this.
    David Singleton
  • David_SingletonDavid_Singleton Member Posts: 5,479
    David Singleton
Sign In or Register to comment.