The SalesLogix entity model allows you to add an event/business rule action to a public method in an external assembly. This post talks about how to do this. I will not be talking about actually building an external assembly but just how to wire them up.
To do this:
Log into the Application Architect as Admin.
Go to the menu View…Project Explorer. This will open the Project Explorer navigator in your current workspace. Expand out the Entity Model…SalesLogix Application Entities… Select your entity. For my example I will choose SalesOrderItem.
Once you expand out your entity you will see Rules, and under this are the Business Rule and Event hooks. In my sample I will be adding an OnBeforeDelete Post Execute Event.
SalesLogix already wires up some events to have Primary Steps. You can only have one active Primary step. Usually it is not advisable to replace the SalesLogix pre-wired event as it handles important business logic (usually). Typically you always want to add either Pre Execute Steps or Post Execute Steps. In my case I am adding a post execute step, which will run after the built in SalesLogix Primary Step. BTW, on a side note these pre-wired steps SalesLogix has reference external assemblies, just like what we are going to do.
Back to the Sample, I double click on the OnBeforeEvent and the Event opens in the Application Architect.
I want to add a Post Execute Step, so I will click on that tab.
I can see there are no Steps defined yet. If there were I could add an additional step. Pre and Post events can have multiple Steps. Only the Primary Step can have one active step defined.
Click Add to add a new Step.
In the New Business Rule Step dialog that opens,
Choose the option for External Assembly. Notice that the bottom part of the screen changes and all of the edit boxes are read only. This is OK. The interface doesn’t want you to type in freely and make a mistake. Instead, click the hyperlink “Choose type and method from assembly”.
The class browser window appears.
The only choice here is to choose the menu File..Open. This will open a Browser window where you can browse out to your External Assembly file. When you do so, Click Open on the browser window.
Now that you have selected your Assembly, the Class Browser dialog should show you all of the Namespaces, Classes and Methods in the assembly. Navigate the assembly and choose the method you want to use.
The Event has now been wired up.