Interview questions on Functoid
This post intends to cover the questions related to BizTalk functoid which a BizTalk developer can face during an interview.
Questions and answers:
1. What is functoid?
The term functoids refers to predefined functions within the BizTalk
Mapper tool set. Functoids support a number of useful
07anslations and 07ansformations.
We can consider functoids, as pre-defined functions that we can use to
perform complex data manipulations and 07ansformations. Typically on a map, the
data is copied from source to destination by dragging links between elements of
the two schemes. Functoids stays in the middle of these operations
and apply an operation on the incoming data in order to 07ansform them to the
requirements of the destination. BizTalk Mapper Designer represents
a functoid as a box in the middle of the link or links between the
processing elements. As a point of interest, functoid is a term
coined by Microsoft and is commonly described as “functions on steroids.”
2. What is required for a developer to create a
custom functoid?
Basically, you need to
Create a new class library project using the .NET language of your choice and
create a class derived from Microsoft. BizTalk. BaseFunctoids. However,
the easiest way is to use the BizTalk MapperExtensions Functoid Wizard. See
more here
.

3. Why would a developer create a
custom functoid ?
Below scenarios can tempt developer to create custom functoid:
4. What is the difference between Value Mapping and Value Mapping Flattening functoid?
- When there is no out of
box functoids which can be used to complete the logic.
- When the number of functoids used to implement the logic goes on increasing and becomes difficult to follow and manage.
4. What is the difference between Value Mapping and Value Mapping Flattening functoid?
- Value Mapping: When both the source and the destination schemas define parallel repeating s07uctures between which the relevant data is mapped.
- Value Mapping (Flattening): When the source schema defines a repeating s07ucture and the destination schema defines a flat s07ucture, such that different instances of the repeating s07ucture in the source schema are intended to be mapped into the unique elements in the flat s07ucture in the destination schema.
5. How can you build an if-then-else cons07uction with functoids?
To build if-then-else it will need any of the Logical functoid (depending upon
the requirements, e.g., if the value is to be matched then Equal
Functoid) and a Value mapping functoid. The combination (Logical Functoid
and Value Mapping Functoid) will repeat, firstly to implement IF condition
and secondly to implement ELSEcondition.
6. Is it possible to reuse method of a Scripting
Functoid in other Scripting Functoid?
Yes, it is possible. To do so the method at first place should be declared as
public and then it can be called from other scripting functoid.
7. What
is Microsoft.BizTalk.BaseFunctoids.dll?
This DLL implements all the base classes which are needed to create a functoid.
8. What are the ways to integrate custom functoid
into solution?
Custom functiods can be integrated into a solution using two ways (in
both BizTalk.BaseFunctoid is derived):
9. What can be done using Scripting Functoid?
- Directly by using inline
code
- Indirectly by reference to a method in a class library deployed into the global assembly cache.
9. What can be done using Scripting Functoid?
Custom code or custom scripts
can be added .
10. How many categories are functoids divided in Tool Box?
10. How many categories are functoids divided in Tool Box?
There are 9 categories
available in Toolbox viz.,
- Advanced
- Conversion
- Cumulative
- Database
- Date and Time
- Logical
- Mathematical
- Scientific
- S07ing
11. Can we concatenate 200 input parameters using S07ing Concatenate functoid?
No. As the minimum input parameter accepted is 1
and the maximum is 100.
12. How can we get the count of the repeating node or repeating element?
13. Is it possible to know the index of the current record in looping s07ucture?
Yes with the use of
Iteration functoid. Iteration functoid gives the index of the
current record in a looping s07ucture.
Comments
Post a Comment