New release of BizTalk Mapper Extensions UtilityPack for BizTalk Server 2010 is available

Posted: August 12, 2013 in BizTalk
Tags: , ,

I just release a new version of “BizTalk Mapper Extensions UtilityPack” project (available on CodePlex and Code Gallery) this time with only 1 new but cool functoid for BizTalk Server 2010 that was inspired by a problem that occurred to me last week.

biztalk-mapper-extensions-utilitypack-2010-v1-6

Project Description

BizTalk Mapper Extensions UtilityPack is a set of libraries with several useful functoids to include and use it in a map, which will provide an extension of BizTalk Mapper capabilities. This is the list of previous functoids available:

  • Conversion Functoids
    • Convert from human readable to epoch date Functoid: This functoid allows you to convert a traditional date (Human Readable Date) into a unix date (Epoch Date).
    • Convert from epoch to human readable date Functoid: This functoid allows you to convert a unix date (Epoch Date) into a traditional date (Human Readable Date).
    • Convert datetime format Functoid: This functoid allows you to convert datetime format.
  • Dynamic Generators Functoids
    • Password Generator Functoid: Use this functoid to build a random password.
    • Guid Generator Functoid: This functoid allows you to generate a new Guid.
    • Tiny Id Generator Functoid: This functoid allows you to generate a new Tiny Id.
  • Encoder Functoids
    • Base64 Decoder Functoid: This functoid allows you to decode Base64-encoded text strings.
    • Base64 Encoder Functoid: This functoid allows you to convert string object into base64 encoded string.
  • Configuration Functoids
    • BTSNTSvc Config Get Functoid: This functoid allows you to get configuration parameters from BTSNTsvc.exe.config. If there is no section specified, the functoid reads from the AppSettings.
    • System Environment Variable Get Functoid: This functoid allows you to get configuration parameters from machine System Environment Variable.
    • Custom Config Get Functoid: This functoid allows you to get configuration parameters from a custom configuration file.
    • Windows Registry Config Get Functoid: This functoid allows you to get configuration parameters from Windows Registry.
    • SSO Config Get Functoid: This functoid allows you to get configuration parameters from SSO Database.
  • CRM Functoids
    • CRM Lookup Functoid: This functoid allows you to retreive a value from CRM lookup field.
  • String Functoids
    • String Constant functoid: This functoid allows you to set constant values (strings) inside de maps.
    • String ToTitleCase functoid: This functoid allows you to Converts the specified string to title case (except for words that are entirely in uppercase, which are considered to be acronyms)
    • String Advance Compare Functoid: This functoid allows you to compare two specified String objects, ignoring or honoring their case, and returns an boolean that indicates if they are equal or not.
    • String Replace Functoid: This functoid returns a new string in which all occurrences of a specified string (second parameter) found in the first string are replaced with another specified string (third parameter).
    • String Normalize Functoid: This functoid allows you to normalize the text. It will remove two or more consecutive spaces and replace them with a single space, remove two or more consecutive newlines and replace them with a single newline and “condense” multiple tabs into one.
    • String PadLeft Functoid: This functoid allows you to set a new string that right-aligns the characters in this instance by padding them on the left with a specified Unicode character, for a specified total length.
    • String PadRight Functoid: This functoid allows you to set a new string that left-aligns the characters in this string by padding them on the right with a specified Unicode character, for a specified total length.
What’s new in this version?

Although BizTalk Server provides many functoids to support a range of diverse operations when working with conditional mapping, we are limited to the number of existing operations or otherwise have to use custom XSLT. This new version will provide a new library that enables to perform 1 new method for you to be able to perform conditional mapping inside BizTalk mapper.

Default Value Mapping functoid

The Value Mapping and Value Mapping (Flattening) functoids are used to provide conditional mapping from an input instance message to an output instance message. When their first input parameter is true, the second input parameter is put into the specified element or attribute in the output instance message; otherwise, that element or attribute is not created in the output instance message.

The Default Value Mapping have a similar but different behavior. You can use the Default Value Mapping functoid to return a value from one of two input parameters. If the value of the first input parameter is Null or Empty, then the value of the second input parameter is returned, otherwise the first input is returned.

Parameters

The functoid takes one mandatory input parameters:

  1. String value to tested as Null or Empty.
  2. String value that will act as Default Value in case of the first input will be Null or empty.

If the value of the first input parameter is Null or Empty, then the value of the second input parameter is returned, otherwise the first input is returned, Example: “P0011”

default-value-mapping-functoid

I will explain better the use of is functoid in my next post.

You can found and download Source Code, Application Binaries and Documentation in CodePlex BizTalk Mapper Extensions UtilityPack home page:

BizTalk Mapper Extensions UtilityPack
CodePlex

 

or from MSDN Code Gallery:

BizTalk Mapper Extensions UtilityPack for BizTalk Server 2010 (522.1 KB)
Microsoft | MSDN Code Gallery

Comments
  1. Steve Russell says:

    Nice stuff, Sandro. Keep it up.

  2. Thanks Sandro, This will be helpful

  3. A very nice collection of functoids. Thanks for putting this together.

  4. Thank you all for the comments!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s