More on Infor CRM triggers introduced in v8.1

In a previous post, I talked about new triggers introduced in the 8.1 upgrade process. Those triggers have issues with data being added to the database causing unnecessary bloat unless you actually are using the ERP integrations, which very few people do.

We discovered another issue with them today- with the triggers in place you will no longer be able to delete accounts added with the triggers in place. This is because on of the triggers on the account table (ACCOUNT_INT_INSTEAD_INS) adds a GUID to the field ACCOUNT.GLOBALSYNCID. The standard OnBeforeDelete Account entity event now validates that that field does not contain data. If it does you get an error saying you can’t delete the account. The message you will receive is “X Account is currently linked with . You cannot delete accounts which are currently lined”. Aside from the error message misspelling *sigh*, this kind of causes a problem!

The solution for this is:
1) Clear any accounts with a GLOBALSYNCID: update sysdba.ACCOUNT set globalsyncid=null where globalsyncid is not null
(You may also want to do the same for CONTACT, ADDRESS, ACTIVITY, and USER_ACTIVITY as these also have triggers which populate a GLOBALSYNCID in each of those tables. Just repeat the same sql statement above but replace ACCOUNT with the different table names.)
2) Disable the SQL triggers. The easiest way to do this is to run the following SQL statement:

Disable trigger ACCOUNT_INT_INSTEAD_INS on sysdba.ACCOUNT
go
Disable trigger ACCOUNT_INTEGRATION_INSERT on sysdba.ACCOUNT
go
Disable trigger ACCOUNT_INTEGRATION_CHANGE on sysdba.ACCOUNT
go
Disable trigger ACCOUNT_TOMBSTONE on sysdba.ACCOUNT
go
Disable trigger ACTIVITY_INT_INSTEAD_INS on sysdba.ACTIVITY
go
Disable trigger ACTIVITY_INTEGRATION_INSERT on sysdba.ACTIVITY
go
Disable trigger ACTIVITY_INTEGRATION_CHANGE on sysdba.ACTIVITY
go
Disable trigger ACTIVITY_INT_INSTEAD_INS on sysdba.ACTIVITY
go
Disable trigger ACTIVITYATTENDEE_INT_INSTEAD_INS on sysdba.ACTIVITYATTENDEE
go
Disable trigger ACTIVITYATTENDEE_INTEGRATION_CHANGE on sysdba.ACTIVITYATTENDEE
go
--Disable trigger ACTIVITYATTENDEE_COUNT on sysdba.ACTIVITYATTENDEE
--go
Disable trigger ADDRESS_INT_INSTEAD_INS on sysdba.ADDRESS
go
Disable trigger ADDRESS_INTEGRATION_CHANGE on sysdba.ADDRESS
go
Disable trigger ADHOCGROUP_INTEGRATION_TOMBSTONE on sysdba.ADHOCGROUP
go
Disable trigger ADHOCGROUP_INTEGRATION_INSERT on sysdba.ADHOCGROUP
go
Disable trigger CONTACT_TOMBSTONE on sysdba.CONTACT
go
Disable trigger CONTACT_TOMBSTONE on sysdba.CONTACT
go
Disable trigger CONTACT_INT_INSTEAD_INS on sysdba.CONTACT
go
Disable trigger CONTACT_INTEGRATION_INSERT on sysdba.CONTACT
go
Disable trigger USERACTIVITY_INT_INSTEAD_INS  on sysdba.USER_ACTIVITY
go
Disable trigger USERACTIVITY_TOMBSTONE  on sysdba.USER_ACTIVITY
go
Disable trigger USERACTIVITY_INTEGRATION_CHANGE on sysdba.USER_ACTIVITY
go
Disable trigger USERACTIVITY_INT_INSTEAD_INS on sysdba.USER_ACTIVITY
go

3) Delete the trigger definitions from the DB_OBJECTDEFINITION definition table. Again use the following SQL:

Delete from sysdba.DB_OBJECTDEFINITION where objectname in (
'ACCOUNT_INTEGRATION_INSERT'
,'ACCOUNT_INTEGRATION_CHANGE'
,'ACCOUNT_TOMBSTONE'
,'ACTIVITY_INTEGRATION_INSERT'
,'ACTIVITY_INTEGRATION_CHANGE'
,'ACTIVITY_INT_INSTEAD_INS'
,'ACTIVITYATTENDEE_INT_INSTEAD_INS'
,'ACTIVITYATTENDEE_COUNT'
,'ACTIVITYATTENDEE_INTEGRATION_CHANGE'
,'ADDRESS_INTEGRATION_CHANGE'
,'ADHOCGROUP_INTEGRATION_TOMBSTONE'
,'CONTACT_TOMBSTONE'
,'CONTACT_INTEGRATION_CHANGE'
,'CONTACT_INTEGRATION_INSERT'
,'USERACTIVITY_TOMBSTONE'
,'USERACTIVITY_INTEGRATION_CHANG'
,'USERACTIVITY_INT_INSTEAD_INS'
,'CONTACT_INT_INSTEAD_INS'
,'ACCOUNT_INT_INSTEAD_INS'
,'ADDRESS_INT_INSTEAD_INS'
)

A word of warning, do these things only if you are NOT USING the ERP integrations that Infor has designed these for.

ABOUT THE AUTHOR

Kris Halsrud

Kris Halsrud is a Senior Analyst / Developer for Customer FX Corporation.

2 Comments

  1. Thanks for the heads up. Does disabling these triggers affect Outlook integration or just ERP integration?

    Reply
    • Mike the triggers that end in “_INT_INSTEAD_INS” are used for Outlook Integration and should be left enabled if using that. The others are strictly for ERP integrations

Submit a Comment

Your email address will not be published. Required fields are marked *

Subscribe To Our Newsletter

Join our mailing list to receive the latest Infor CRM (Saleslogix) news and product updates!

You have Successfully Subscribed!