Question

We have this Biztalk 2009 solution that, amongst other things, writes flat text files (tab separated) to a directory (a Send Port I believe).

Prior to writing the file, some logic is being performed on different fields (stripping unwanted characters, parsing, etc.) and this logic is held in standard C# classes.

Now that I have located this logic, where can I see where it is being used and referenced from?

I'm asking this as I would want to implement the same idea to other fields prior to the file being written.

The solution is quite huge.

I have looked through orchestrations and pipelines and could not find any mention of said classes and its methods.

I also, tried VS's seach "Entire Solution", found some mentions in some XSD/XML files, but nothing that tells me where the previous dev decided this logic would be used. Also tried "Find all references" but being a Biztalk application, it's not doing the same as in a standard .NET solution.

Was it helpful?

Solution

Turns out those classes and their methods are referenced in functoids.

If you open a .BTM file (mapping) you will see how data can be manipulated by these between the source and target schema.

By "Configuring Functoid Script" you can select either Inline C#, JScript.NET and others to perform certain operations on the flow of data between the source and target schema. One of these options is "External Assembly" where you'll be able to select a method from a class that you have referenced in your project.

By "Configuring Functoid Inputs", you'll be able to configure the parameters to be sent to the "External Assembly"'s referenced method.

By searching in "Entire Solution" for the method's name, you eventually find it mentionned in the XML content of the .BTM file. Open the BTM file (by just double clikcing on it in your solution) from there, look for all these "S" symbols in the grid, that's where it'll likely happen.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top