Acerca de Microsoft.BizTalk.BaseFunctoids.FunctoidScripts Class

Para utilizar functoids en la transformación de mensajes para realizar operaciones avanzadas de base de datos, funciones matemáticas, y conversiones entre otros. La gran mayoría de estas funciones están definidas en la clase no soportada por Microsoft FunctoidScripts que pertenece al namespace Microsoft.BizTalk.BaseFunctoids.

Aunque esta clase no es soportada por Microsoft puede ser utilizada desde las orquestaciones por medio de Expression Shape o desde una función .Net, de esta forma podemos reutilizar los functoids sin necesidad de crear un mapa de transformación.

Para dar un ejemplo de ello, utilicemos las funciones que se utilizan para consultar bases de datos representados por medio de los functoids Database Lookup, Error Return y Value Extract en una aplicación de consola.

using System;using System.Collections.Generic;using System.Text;using BTSScripts = Microsoft.BizTalk.BaseFunctoids;

namespace

Scorpio.Console.FunctoidScripts{   class Program   {      static void Main(string[] args)      {         BTSScripts.FunctoidScripts scripts = new BTSScripts.FunctoidScripts();         int dbIndex = 0;         scripts.DBLookup(dbIndex,                      "Ken", "Provider=SQLOLEDB;Data Source=localhost;Initial Catalog=Northwind;Integrated Security=SSPI;", "Authors", "au_fname");         if (scripts.DBErrorExtract(dbIndex).Length > 0)            System.Console.WriteLine(scripts.DBErrorExtract(dbIndex));         else            System.Console.WriteLine(scripts.DBValueExtract(dbIndex, "au_lname"));      }   }

De igual forma podemos utilizar otras funciones para simular la ejecución de functoids. La clase FunctoidScripts se encuentra en el assembly Microsoft.BizTalk.BaseFunctoids.dll localizado en la carpeta %programfiles%\Microsoft BizTalk Server 2004\Developer Tools\ .

La clase FunctoidScripts no esta documentada en BTS 2004 pero si lo esta en BTS 2006 Beta 1, igualmente esta clase hace parte de la infraestructura principal de BizTalk Server por lo que se recomienda usar esta funcionalidad con precaución.

Autor: Carlos Medina

Este mensaje se proporciona "como está" sin garantías de ninguna clase, y no otorga ningún derecho