In these times of data warehouse automation and fast track SSIS, BIML has become a huge contributor to my daily work.
On one of my most recent projects we had a custom script task in SSIS that we needed to implement in the same package several times.
The code of the custom script is in its own biml-file in the project and referenced from the main biml-file.
We kept getting a mysterious error when executing the package in debug mode from Visual Studio. (No warning upon building the packages).
After alot of debugging and hair pulling hours, we finally got our arms around the bug.
The error was that the ProjectCoreName of the new 3 script tasks in the same package had the same name.
My learning from this, and yes, I’m not a .NET developer, is that upon executing the custom script task, the SSIS engine must compile the code and store it for usage upon handling the data. This storage is shared with the whole package, and therefore cannot contain the same .NET project name. [Written from my personal understading – correct me if I’m wrong].
So for any future BIML users who wants to add the same custom script task to the BIML project – remember to add a variable to the ProjectCoreName of your biml-script.
This can be done fairly easy, as your biml-scripts can relate to the variables calling the biml-file. Just add the standard
to he ProjectCoreName-tag of your biml-file containing the custom script.