BizTalk Map Documenter for 2010

Posted: August 31, 2011  |  Categories: BizTalk Uncategorized

I recently had to document a map quickly and decided to try the BizTalk Map Documenter v2.1

The first error I got was “Extension function parameters or return values which have CLR type ‘ConcatString’ are not supported.”. Looking at the comments on the download site I discovered that you have to modify  the parseLinkPath() and getHtmlSpaces() javascript functions within the XSLT to concatenate an empty string to the return value so that the runtime knew to cast it as a string.

After fixing this I got some output but it did not contain content for Constant functoids or links into functoids. John Glisson has been there before and after making the changes that he recommended I got some output for functoids.

I still was not satisfied because the functoid names where missing from the output. I think that the reason why this is happening is because the attribute Functoid_Name is not created in the map files created by BizTalk 2010. I changed the XSLT to look at the Functoid-FID instead and then choose a hard coded value to display. i.e.

<span class=”functoidName”>
            <!–<xsl:value-of select=”$functoidNode/@Functoid-Name” />–>
      <!–Added by Mahindra 2011/08/31–>
      <xsl:choose>
        <xsl:when test=”$functoidNode/@Functoid-FID = 107″>String Concatenate</xsl:when>
        <xsl:when test=”$functoidNode/@Functoid-FID = 125″>Date and Time</xsl:when>
        <xsl:when test=”$functoidNode/@Functoid-FID = 127″>ASCII to Character</xsl:when>
        <xsl:when test=”$functoidNode/@Functoid-FID = 260″>Scripting</xsl:when>
        <xsl:when test=”$functoidNode/@Functoid-FID = 315″>Equal</xsl:when>
        <xsl:when test=”$functoidNode/@Functoid-FID = 321″>Logical And</xsl:when>
        <xsl:when test=”$functoidNode/@Functoid-FID = 375″>Value Mapping</xsl:when>
        <xsl:when test=”$functoidNode/@Functoid-FID = 424″>Looping</xsl:when>
        <xsl:when test=”$functoidNode/@Functoid-FID = 474″>Iteration</xsl:when>
        <xsl:when test=”$functoidNode/@Functoid-FID = 705″>Logical Not</xsl:when>
        <xsl:otherwise>
          <xsl:value-of select=”$functoidNode/@Functoid-FID” />
        </xsl:otherwise>
      </xsl:choose>
     
    </span>

I only added the functoids that i needed to document.

Now i was satisfied. This sure beats documenting the maps by hand.

  • Added all of the functoids in case anyone else needs:

    Scripting
    Record Count
    Index
    Value Mapping (Flattening)
    Value Mapping
    Nil Value
    Looping
    Iteration
    Table Looping
    Table Extractor
    Assert
    Mass Copy

    Character to ASCII
    ASCII to Character
    Hexadecimal
    Octal

    Cumulative Sum
    Cumulative Average
    Cumulative Minimum
    Cumulative Maximum
    Cumulative Concatenate

    Database Lookup
    Value Extractor
    Error Return
    Format Message
    Get Application ID
    Get Application Value
    Get Common ID
    Get Common Value
    Set Common ID
    Remove Application ID

    Add Days
    Date
    Time
    Date and Time

    Greater Than
    Greater Than or Equal To
    Less Than
    Less Than or Equal To
    Equal
    Not Equal
    Logical String
    Logical Date
    Logical Numeric
    Logical OR
    Logical AND
    Logical Existence
    Logical NOT
    IsNil

    Absolute Value
    Integer
    Maximum Value
    Minimum Value
    Modulo
    Round
    Square Root
    Addition
    Subtraction
    Multiplication
    Division

    Arc Tangent
    Cosine
    Sine
    Tangent
    Natural Exponential Function
    Natural Logarithm
    10^n
    Common Logarithm
    X^Y
    Base-Specified Logarithm

    String Find
    String Left
    Lowercase
    String Right
    Size
    String Extract
    String Concatenate
    String Left Trim
    String Right Trim
    Uppercase

    • mbrimble

      Can you send me all the other functoids? I have not got around to adding them all to my version yet?

  • Interesting that it did not come out right.

  • I would need the functoids for documentation. Kindly post them as well or better publish another complete xslt for the same.

  • Osiris Matiz Zapata

    In line 471 in BizTalkMapDocumenterHTML.xslt file, you should change
    to
    and
    in line 493 you should change
    to
    both lower-case

    and now you can see all parameters in “Functoid Sequence” section in HTML documentation

    • Mark Brimble

      Thanks I’ll make this change

  • Osiris Matiz Zapata

    You can add more Functoids Names and correct if you need it —- Using Mahindra’s Code

    <!—->

    None
    String Find
    String Left
    Lowercase
    String Right
    Size
    String Substring
    String Concatenate
    String Left Trim
    String Right Trim
    Uppercase
    Absolute Value
    Integer
    Maximun Value
    Minimum Value
    Modulo
    Round
    Square Root
    Addition
    Subtraction
    Multiplication
    Division
    Add Days
    Date
    Time
    Date and Time
    Character to ASCII
    ASCII to Character
    Hexadecimal
    Octal
    Arc Tangent
    Cosine
    Sine
    Tangent
    Natural Exponential Function
    Natural Logarithm
    10^n
    Common Logarithm
    X^Y
    Base-Specified Logarithm
    Scripting
    Greather Than
    LogicalGte
    Less Than
    Less Than or Equal To
    Equal
    Not Equal
    Logical String
    Logical Date
    Logical Numeric
    Logical OR
    Logical AND
    Record Count
    Index
    Cumulative Sum
    Cumulative Average
    Cumulative Minimum
    Cumulative Maximum
    Cumulative Concatenate
    Value Mapping (Flattening)
    Value Mapping
    Nil Value
    Looping
    Iteration
    Database Lookup
    Value Extractor
    Error Return
    Logical Existence
    XPath Functoid
    Table Looping
    Table Extractor
    Logical Not
    IsNil
    Assert
    Logical Existence
    Mass Copy
    Format Message
    Get Application ID
    Get Application Value
    Get Common ID
    Get Common Value
    Set Common ID
    Remove Application ID
    Date To String
    String Constant functoid
    String ToTitleCase functoid
    String Advance Compare Functoid
    String Replace Functoid
    String Normalize Functoid
    String PadLeft Functoid
    String PadRight Functoid
    String remove leading zeros
    Default Value Mapping
    Windows Registry Config Get
    Custom Config Get
    System Environment Variable Get
    SSO Config Ger
    Rule Engine Config Get
    BTSNTSvc Config Get
    Covert datetime format
    Convert from epoch to human readable date Functoid
    Convert from human readable to epoch date Functoid
    CRM Lookup
    Base64 Decoder Functoid
    Base64 Encoder Functoid
    Password Generator Functoid
    Tiny Id Generator Functoid
    Guid Generator Functoid
    Get Windows Azure ACS Wrap Token
    Add SharePoint 2013 Document Set
    Advanced Logical AND Functoid
    Advanced Equal Functoid
    Advanced Greather Than or Equal To Functoid
    Advanced Greather Than Functoid
    Advanced Less Than or Equal To Functoid
    If-Then-Else Functoid
    Advanced Not Equal Functoid
    Advanced Less Than Functoid
    Advanced Logical NOT Functoid
    Advanced Logical OR Functoid
    MSCRM Map Helper References
    MSCRM Map Helper Option Value
    MSCRM Map Helper Money
    MSCRM Map Helper Guid
    MSCRM Map Helper Base Types

BizTalk360
BizTalk Server

Over 500+ customers across
30+ countries depend on BizTalk360

Learn More
Serverless360
Azure

Manage and monitor serverless
components effortlessly

Learn More
Atomicscope
Business Users

Monitor your Business Activity in iPaaS
or Hybrid integration solutions

Learn More

Back to Top