Sage CRM: Error occurs with Rest API (sdata) DELETE request when Table Script is present

We use the Sage CRM Rest API (sdata) to view and administrate companies, persons, email addresses and phone numbers. GET's work fine, but when we issue one of the other methods, eg. DELETE, an error occurs on the server. Also responses get very slow.

In CRM\Logs\YYYYMMDDcore.log:

ERROR [http-nio-10001-exec-4]: 16-Feb-2024 11:50:21.267 Error executing 'DeleteRecord' table level script for change to 'Email', with a where clause of '(Emai_EmailId='124' AND Emai_Del eted IS NULL)'.

In CRM\Logs\YYYYMMDDexception.elf (where XXXXXXXXXXXXXXXXXXX is the username from the Basic Authentication header of the Rest API request):

Exception:
---------------------------------------------------------------------------------------
2.1 Date : Fri, 16 Feb 2024 11:35:45 +0100
2.2 Address : 4FEA8BA2
2.3 Module Name : eware.dll - (Sage CRM)
2.4 Module Version: 20.22.0.1
2.5 Type : Exception
2.6 Message : Invalid eWare username or password: username>XXXXXXXXXXXXXXXXXXX<.
2.7 ID : 9B49
2.8 Count : 1
2.9 Status : New
2.10 Note :

Because of this error, response of the DELETE takes about 4 seconds.

I discovered, that this issue is related to a Table Script ('Entity Level with Rollback') on table Email (for validating email addresses).
When I delete the Table Script, response takes 50 to 80 milliseconds.

We really need the Table Script to validate email addresses.
Can anyone explain why the error occurs? Any experiences or suggestions?

  • 0

    I think the fact that a Table Level Script of type "Entity Level with Rollback" is firing needs investigating.  Entity Level scripts are associated with specific system actions and I don't believe that they should be triggered by REST transactions.  Please can you log this as a bug with your local support team.

    Thanks