CRM software architecture - External business layer
We're developing our own CRM, which is integrated with other systems and
receiving marketing data from external databases.
We've got some business logic at forms level, so we can monitor data quality
in the OnLoad and OnSave events easily. But the same business logic has to be
executed and validated by some external systems, so we'd like to have an
external validations layer, which can be invoked by the external systems and
by the CRM. Something like a DLL would be perfect, but we've got two doubts
about this solution architecture:
(1) Is this feasible? Is the Forms code capable to invoke external
funcions available in a DLL? Has the DLL to be distributed among desktop
clients or will it be invoked only by the applications server?
(2) Is there any better architecture? Does anybody have experiences
building an external business validation layer?
Thanks a lot in advance.
You can try to use Microsoft.XmlHttp ActiveX which is common thing now
in CRM SDK, and IE by default is not block this ActiveX. You can invoke
any webservice or any web page that return XML format. By this way, it
will execute through some webserver, like the web application in CRM
Server itself, so there is no deployment issue at all.
Other way is through CRM Callout.