Sunday, 16 November 2008

Hi all

I am doing a lot of functoid implementation these days, and therefore, I have for instance decided to find out what these FunctoidCategories are and where in the toolbox the different categories belong.

In the toolbox, we have the following groups of functoids:

  • String
  • Mathematical
  • Logical
  • Date/Time
  • Conversion
  • Scientific
  • Cumulative
  • Database
  • Advanced

I still remember my first custom functoid - I was really expecting that in my code I could decide in which group my functoid should appear and maybe even create my own group. But that isn't the case. There are 24 different FunctoidCategories that I can assign my functoid, and only the above 9 groups. You can read more about the different functoid categories here. Basically, I will just give a very short resumé of this information and then I will match each category to a group in the toolbox, so you have this information for future reference.

So, this is what I know:

Category Toolbox group Description
Assert Advanced For internal use only.
Conversion Conversion Converts characters to and from their numeric representation, and to convert numbers from one base to another.
Count Advanced For internal use only.
Cumulative Cumulative Performs various kinds of accumulation of the value of a field that occurs multiple times in a source document and outputs a single output.
DatabaseExtract Database For internal use only.
DatabaseLookup Database For internal use only.
DateTime Date/Time Adds date, time, date and time, or add days to a specified date, in output data.
ExistenceLooping Advanced For internal use only.
Index Advanced For internal use only.
Iteration Advanced For internal use only.
Keymatch Advanced For internal use only.
Logical Logical Controls conditional behavior of other functoids to determine whether particular output data is created.
Looping Advanced For internal use only.
MassCopy Advanced For internal use only.
Math Mathematical Performs specific numeric calculations such as addition, multiplication, and division.
NilValue Advanced For internal use only.
Scientific Scientific Performs specific scientific calculations such as logarithmic, exponential, and trigonometric functions.
Scripter Advanced For internal use only.
String String Manipulates data strings by using well-known string functions such as concatenation, length, find, and trim.
TableExtractor Advanced For internal use only.
TableLooping Advanced For internal use only.
Unknown Advanced For internal use only.
ValueMapping Advanced For internal use only.
XPath Advanced For internal use only.

To see this for your self, download

. Unzip the zip file, copy the dll to "%BTS%\Developer Tools\Mapper Extensions", where %BTS% is the installation folder of BizTalk. Then go to VS.NET 2005 and reload the toolbox. If you want use one of the functoids, remember to also GAC the dll. All the functoids have the exact same implementation, but they do not generate the same XSLT by the mapper because of the chosen category. Perhaps a new blog post on that later on...

--
eliasen

Sunday, 16 November 2008 23:57:44 (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 

Theme design by Jelle Druyts