SSIS Custom Transforms - what is MappedColumnID - ssis

SSIS developer documentation is notoriously terse, and I've scoured Google looking for an answer on this...
What is the MappedColumnID property (available on input, output and external metadata columns) all about? It doesn't appear to do anything useful.
Perhaps to rephrase the question... how do I achieve mappings between meta data columns and input / output columns? I know about the ExternalMetaDataColumnID property... but then how/where does MappedColumnID come into play?
Moreover, components like the OLEDB destination have a column mapping editor which appears in both the component UI as well as in the advanced editor. How is this achieved?

MappedColumnID is just an alternative way of identifying the columns instead of using there names.
From MSDN
The use of these properties is not required. These properties provide an easier way for developers to associate related columns, such as input and output columns, in custom data flow components.

Related

C# equivalent enums for TwinCAT Data types

Do I need to write the enums for the TwinCAT data types? Or they exist somewhere and I just can't find them?
Example: there is a data type called MC_HomingMode, which defines how to perform homing. I want to control it VIA ADS, so I need an enum for it. Couldn't find it.
Thanks
Well it apears there is no such thing. In my case, the TwinCAT types I needed, I made them in C# by my self.

Opensource JavaDoc editor

I have spent the days looking for an Opensource JavaDoc editor or a way to edit JavaDocs easily or creating package-info files and come back empty.
I am basically after a way to change the way the packages are listed. The automation framework I work on is undergoing some potential future changes. These changes in a nutshell will organise our test scripts in a way where they are split up into business areas and then into smaller packages of business functions within that area.
We use IntelliJ and the default JavaDoc generator creates the JavaDocs in a way where it makes a list of all the packages, what I want to do is have it create a list of the main packages (business areas) and then the sub packages within that contain our test scripts (business functions).
For example:
BusinessAreaOne contain BusinessFunctionOne, BusinessFunctionTwo and BusinessFunctionThree.
BusinessAreaTwo Contains BusinessFunctionFour and BusinessFunctionFive.
The BusinessFunction packages in turn contain scripts that cover just that business function.
I haven't been able to find an editor that does what I would like and I don't think editing the files manually is practical each time there is an update.
If there is no opensource java editor can do this are there any suggestions of a work around?
As I mentioned I have tried creating package-info files but as far as I can tell you can only add a description to that package. Is there any tutorials out there or does anybody know a way I can get it to display the list of packages within the selected package?
Thanks in advance.
Javadoc doesn't treat package hierarchies as nested hierarchies, it just flattens them all into a list, as you probably noticed, so your business functions will just appear as entries in the list between the business areas.
Looking for a Javadoc editor is not going to help you because the Javadocs you end up with is the output from the Javadoc compilation process, and there's no specific tag you can put in your code that will influence the compilation process in the way you're looking for.
You would have to write something to override Javadoc's implementation of its HTML formatter specifically for the package list using:
Javadoc Doclets
You can customize the content and format of the Javadoc tool's output by using doclets. The Javadoc tool has a default "built-in" doclet, called the standard doclet, that generates HTML-formatted API documentation. You can modify or subclass the standard doclet, or write your own doclet to generate HTML, XML, MIF, RTF or whatever output format you'd like. Information about doclets and their use is at the following locations:
Javadoc Doclets
You would use your own implementation of the Standard Doclet, finding the right class to override - try looking first at the PackageDoc class. I'm going through this learning process myself at the moment, but here's the info on Doclet and there's a link at the bottom of that page to the source code which will illustrate how to do it.
Of course there could be an easier way of doing it and if I discover it I'll come back to update this answer.

Application Input Specification: Drawing input data of method

Does anyone know a good way to to draw the exact structure of input data for a method? In my case I have to specify the correct input data for a server application. The server gets an http post with data. Because this data is a very complex json data structure, I want to draw this, so next developer can easily check the drawing and is able to understand, what data is needed for the http post. It would be nice if I can also draw http headers mark data as mandatory or nice to have.
I dont need a data flow diagramm or sth. like that. What I need is a drawing, how to build a valid json for the server method.
Please if anyone have an idea, just answer or comment this question, even if you just have ideas for buzz words, I can google myself.
In order to describe data structure consider (1) using the UML class diagram with multiplicities and ownership and "named association ends". Kirill Fakhroutdinov's examples uml-diagrams.org: Online Shopping and uml-diagrams.org: Sentinel HASP Licensing Domain illustrate what your drawing might look like.
As you need to specifically describe json structure then (2) Google: "json schema" to see how others approached the same problem.
Personally, besides providing the UML diagram I'd (3) consider writing a TypeScript definition file which actually can describe json structure including simple types, nested structures, optional parts etc. and moreover the next developer can validate examples of data structures (unit tests) against the definition by writing a simple TypeScript script and trying to compile it

Is there a better expression editor available for BIDS SSIS 2008R2?

I've found that editing expressions within a grid column in the BIDS tool (for SSIS 2008R2) is highly impractical for anything but the simplest expressions.
Eg refer the "Expression" column in the "Derived Column Transformation Editor".
Is there an "advanced" editor available within BIDS, or a 3rd party tool, that provides the same drag/drop functionality for available columns/variables/functions, but has enough screen real-estate in the text-editor component such that I can actually see the expression I'm building?
I've come across this: http://expressioneditor.codeplex.com/ . While this looks excellent, from what I can tell it's not actually integrated into BIDS.
This http://bidshelper.codeplex.com/ includes the above editor, but only seems to make it available for expressions found within the Control Flow level (not within Data Flows where I most need it).
There's also a teasing "Open IME" option available in the right-click context menu when editing an expression - but I can't find an Input Method Editor suitable.
Any help appreciated!
Nothing prevents you from creating Variables and using the rich expression editor (control flow one) to build your expressions and then paste them into the needed locations of a data flow. You'll need to update variable references to column references but that's a simple switch.
Perhaps an example will explain (comments suck). RIGHT(#[User::MyVariable], 4) vs RIGHT([MyColumn], 4) I'd use the control flow expression editor to make my expression work right for static data and then fix to work with columns when I was satisfied with the logic.
The rule of thumb I go by is if an Expression takes more room that the window can show, then I should probably look at either using a Script Component to perform the logic or add multiple Derived Column Components in series and build my Expressions piecemeal.

Generation custom files from dbml file?

I've been having a look at making changes to the partial classes generated from a DBML file. I was reading into using the sqlmetal.exe tool but it appears that you can't do much customisation of what it actually spits out.
I'm wanting to make changes to the file for serialization purposes, I'd like to add the Data Member Attribute to specified properties in the generated partial classes.
Is this possible to do using the sqlmetal.exe tool or would I need to write my own tool for the file generation?
You could check out T4 templates or CodeSmith for file generation.
No it is not. You can accomplish this with Entity Framework.
http://blogs.msdn.com/jkowalski/archive/2008/05/12/transparent-lazy-loading-for-entity-framework-part-1.aspx
Code written by Jaroslaw Kowalski works much the same way that Linq to SQL does.
It has some issues, but you can do everything with it, because you have the source. I'm going to publish my version soon(support for stored procedures, improved databinding experience and many other useful features)
If you want the datacontract and datamember attributes to be added, simply change the "Serialization Mode" property in the L2S designer's datacontext properties from "None" to "Unidirectional". All entity classes will then be datacontracts, and their members will be datamembers...
The upcoming Beta version of Entity Developer will contain highly customizable T4-like templates for code generation.
Also we have added functionality to divide the generated code into separate files.