How to Configure Functoid Input Parameters
Properly configuring the input parameters to the functoids in your map is one of the most important, and potentially error-prone, aspects of using functoids. You can configure the functoid input parameters as follows:
Create visible input links by connecting schema nodes and respective functoids (drag-and-drop the mouse from schema node to the functoid).
Directly edit the list of input parameters using the Configure <Functoid> Functoid dialog box.
This topic provides step-by-step instructions for configuring the input parameters for a functoid using these methods.
The dragging method of establishing functoid input parameters provides a convenient way to specify input parameters that involve XPath specifications into the source schema. For information on creating a schema node and functoid input parameters, see How to Add Basic Functoids to a Map. However, the Configure <Functoid> Functoid dialog box is the definitive mechanism for viewing all the input parameters to a functoid, for creating and modifying any constant parameters, and for re-arranging the order of the input parameters when necessary.
When you configure the input parameters for a functoid directly on the grid page (by drawing lines, using the mouse drag-and-drop, from the source schema node and linking it to the functoid), if the number of inputs reaches maximum, the cursor changes to a NO state. Also, the status bar displays the reason. The figure below shows a functoid which accepts only one input link.
You can configure the Scripting and Table Looping functoids using the Configure <Functoid> Functoid dialog box. For information about how to configure the functoids, see How to Configure the Scripting Functoid and How to Configure the Table Looping and Table Extractor Functoids.
Prerequisites
These instructions require that BizTalk Mapper is running.
What is an input parameter?
An input parameter can be any of the following:
A link from source schema node to a functoid
A link from functoid to another valid functoid
A constant value
Note
There are a few functoids, such as Date, Time, Date and Time, and Nil, which do not need any input parameters.
The figure below displays a functoid (highlighted in red) with two input parameters (Input[0] and Input[1]) and a constant parameter (Input[2]).
To open the Configure <Functoid> Functoid dialog box
You can open the Configure <Functoid> Functoid dialog box in one of the following ways:
In the relevant grid page, right-click the functoid, and then click Configure Functoid Inputs.
Double-click the functoid for which you want to configure the input parameters.
Select the functoid and then click the ellipses (…) in the Visual Studio’s Properties window.
Select the functoid and then press ENTER from the keyboard.
Select the functoid and then press CTRL+M, CTRL+I from the keyboard. For a list of Mapper shortcut keys, see BizTalk Mapper Keyboard Shortcuts.
To insert constant input parameters
In the Configure <Functoid> Functoid dialog box, select the Functoid Inputs tab.
Note
The Functoid Inputs tab is selected by default.
Click the button. A new row is added.
Type the value for the new input parameter, and then click OK.
Note
If the add button is not enabled, the functoid does not accept or require input parameters, or may already have the maximum number of allowed inputs.
To edit existing constant input parameters
In the Configure <Functoid> Functoid dialog box, click the existing constant input parameter that you want to edit. The current value is selected.
Important
You can edit the parameters of constant inputs only. Input parameters of all other types cannot be edited. They can only be rearranged or deleted.
Click the button. Make the appropriate changes to the constant value, and then click OK.
Alternatively, you can double-click the constant input parameter to edit it, or press F2 from the keyboard.
To select multiple input parameters
You can select multiple input parameters by holding down the CTRL key and clicking the desired rows, and then perform any of the following operations. You can press CTRL+A from the keyboard to select all the rows.
Move the selection up/down.
Note
If the bulk selection includes either the top-most or the bottom-most row among the other rows, you cannot move the selection up/down respectively.
Rearrange the selection.
Delete the selection.
To change the order of existing input parameters
In the Configure <Functoid> Functoid dialog box, click the existing input parameter that you want to move to a different position in the ordered list of input parameters.
Click the button to move the parameter up in the parameter list. Repeat as necessary until the selected input parameter is in the desired position. Alternatively, you can press the UP ARROW key from the keyboard. For a list of Mapper shortcut keys, see BizTalk Mapper Keyboard Shortcuts.
-OR-
Click the button to move the parameter down in the parameter list. Repeat as necessary until the selected input parameter is in the desired position. Alternatively, you can press the DOWN ARROW key from the keyboard. For a list of Mapper shortcut keys, see BizTalk Mapper Keyboard Shortcuts.
Important
You can rearrange the sequence of inputs only from the Configure <Functoid> Functoid dialog box. If you select the top-most or bottom-most row, the or buttons would be disabled, respectively.
To delete an input parameter by deleting the input link
In the relevant grid page, click the input link corresponding to the input parameter you want to delete.
On the Edit menu, click Delete.
Note
Alternatively, you can press the DELETE key, or right-click the link in the relevant grid page, and click Delete from the shortcut menu.
Important
The input link is deleted silently. You can always undo delete if you are not sure about it. For more information about undo/redo operations, see How to Undo or Redo User Operations.
To delete existing input parameters within the Configure <Functoid> Functoid dialog box
In the Configure <Functoid> Functoid dialog box, click the existing input parameter that you want to delete.
Note
You can delete any input parameter using this technique, even those that correspond to an input link.
Click the button. The selected existing input parameter is deleted from the parameter list. Click OK.
Alternatively, you can select the row you want to delete, and press the DELETE key from the keyboard.
Important
The input parameter is deleted silently. You can always undo delete if you are not sure about it. For more information about undo/redo operations, see How to Undo or Redo User Operations.
Note
The delete button is not enabled when there are no input parameters in the parameter list.
To set labels and comments for functoids
You can set labels and comments for functoids using the Configure <Functoid> Functoid dialog box.
In the Configure <Functoid> Functoid dialog box, click the Label and Comments tab.
Type the Label and Comments, and then click OK.
Important
For more information about how to label and comment functoids and/or links, see How to Label a Link and How to Label and Comment a Functoid.