When there is a Deploy performed on the server it can trigger 2 events, StartDeploy and EndDeploy. In response to those events custom stored procedures can be called. The stored procedures to be run in response to the events are defined in the EventDefinition table. (Caution: This interface is only intended for expert developers with a high level of understanding of the internal table structures and contents.)


EventDefinition Table

This table is automatically created as part of the Deploy process if it does not already exist. So to get started, first do an application deploy with Web Service 2.0.2171 or later. Add records to the table for calls to stored procedures on events. Multiple stored procedures can be called for each event and the order of the calls is determined by the SequenceNumber value with the lowest SequenceNumber record being called first and the highest last.

Event – name of the event.

  • StartDeploy – This event is triggered after any automatic database upgrades and the latest version of the standard business rule library stored procedures have been updated, but before any standard Deploy processing against the SQL db or the Analysis Services db take place.

  • EndDeploy – This event is triggered after all standard Deploy processing has completed and just before the Finish deploy message is generated.

Action – name of the stored procedure to run. The stored procedure must already exist or an error will occur and the Deploy will fail. No parameters are passed to the stored procedure.

ActionType – must be a value of 1. (Note: Additional values may be added in the future to support calling more that stored procedures.)

ActionDescription – this description is returned to the user in the deploy log just before the stored procedure is called.

SequenceNumber – a number you can use to control the order of the stored procedure calls when there is more than one stored procedure configured for the same event. The stored procedures will be called in order starting with the lowest sequence number and ending with the highest. If multiple records for the same even contain the same sequence number the order they are called in not controlled.