Estos son los pasos para crear una regla personalizada que será usada en el motor de reglas de BizTalk Server.
Ejemplo
Una clase .Net que simplemente que se encargará de actualizar un campo de un mensaje tipo string con la fecha actual menos n días.
Pasos a seguir
- Crear clase .Net que contendrá el método que retorna la fecha solicitada.
2. Firmar el assembly y subirlo al GAC
La siguiente es la instrucción que se debe setear en el evento Post Build de los Build Events del class library de .Net.
- Instrucción para subir al GAC Para VS2012
CALL "%VS110COMNTOOLS%vsvars32.bat"
gacutil /uf $(TargetName)
gacutil /if "$(TargetPath)
3. Especificar el assembly .Net como fuente de datos para las reglas de negocio
- En la ventana Facts Explorer, clic en el tab .NET Assemblies.
- Clic derecho en nodo Modules.
- Desde los assemblies disponibles seleccionar el assembly .Net recien creado.
4. Definir política el cual contendrá una regla que invoque la clase correspondiente.
Nota: Para soportar invocación de clases estáticas en el motor de reglas, se debe definir una propiedad StaticSupport bajo HKEY_LOCAL_MACHINE\Software\Microsoft\BusinessRules\3.0 en el regedit .
- StaticSupport == 1
Links relacionados:
- Calling helper methods from the Business Rules Engine
- MS BRE: Controlling rule side effects
- Invoking Static Members of a Class
5. Probar la política
Adicionar instancia o ejemplo XML de los esquemas relacionados
Clic Test y debe ver el cambio reflejado en el xml ingresado.