Synchronization Errors After Update To Version 8
Important Release Note for Anveo Client Suite 8 Release
In previous Anveo Mobile App versions, the parameter RunTrigger of the Anveo Script command INSERT(true/false) and MODIFY(true/false) has been always set INSERT(TRUE) / MODIFY(TRUE) during incoming data processing in Microsoft Dynamics, even with INSERT(FALSE) / MODIFY(FALSE). This bug has been resolved with Anveo Client Suite 7/8 and the newer app versions. The ACF App Events codeunit now correctly interprets the parameter.
However, this change of behavior might cause serious data processing errors in existing installations. As a result, a synchronization process will show error messages during the synchronization process.
Fast and simple workaround: Always set the default behavior in the app events codeunit to INSERT(TRUE) / MODIFY(TRUE), even with incoming INSERT(FALSE) or MODIFY(FALSE). This solution is an easy short-term workaround as it is very easy to implement, but will disallow the developers to use INSERT(FALSE) / MODIFY(FALSE) in the future.
Codeunit 5327199 ACF App Events
Change the following code:
Function OnInsertRec() [...] // *** INSERT RECORD TO NAV DATABASE *** InsertSuccessful := RecRef.INSERT(NAVAction = NAVAction::CallTrigger); [...]
// *** INSERT RECORD TO NAV DATABASE *** InsertSuccessful := RecRef.INSERT(TRUE);
And change the following code:
Function OnModifyRec() [...] // *** MODIFY NAV RECORD *** ModifySuccessful := RecRef.MODIFY(NAVAction = NAVAction::CallTrigger); [...]
// *** MODIFY NAV RECORD *** ModifySuccessful := RecRef.MODIFY(TRUE);
Walk through your existing app and correct all INSERT and MODIFY commands to INSERT(TRUE/FALSE) / MODIFY(TRUE/FALSE).
If you run a fresh installation with Anveo Client Suite 8 or newer including the base application xml import, you will have already all “INSERT” and “MODIFY” statements in correct format.