SSIS - Add Capability to Data Conversion Transform to Replace Column - by Todd McDermid

Status : 

  Won't Fix<br /><br />
		Due to several factors the product team decided to focus its efforts on other items.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.

Sign in
to vote
ID 505258 Comments
Status Closed Workarounds
Type Suggestion Repros 0
Opened 10/28/2009 2:05:04 PM
Access Restriction Public
Primary Feedback Item 496110


The current Data Conversion transform adds columns to the Data Flow with the converted type.  It's quite typical for those wanting a column data type converted to have the column retain the same name as it originally had, for easier manipulation/mapping/reduced confusion downstream.
Sign in to post a comment.
Posted by Jamie Thomson on 10/28/2009 at 2:59 PM
OK I gotcha, so there's a pre-requisite here isn't there? i.e. The ability to hide a column in the dataflow.

Let's link to the connect submission that asks for that because these two suggestions are inextricably linked:

SSIS: Hide columns in the pipeline

I still think that deceiving the user into thinking that the column had been replaced when actually it hasn't is a little bit dangerous - after all there would be a performance degredation (no matter how small) that they might not be aware of. Maybe if the Data Conversion component had a check box on each column saying "Hide this column downstream" or something - then the user would be explicitly hiding the column and thus would be more aware of the implications.

Posted by Todd McDermid on 10/28/2009 at 2:46 PM
Ah - but that's entirely what I mean. I intend for that functionality to "trick" the user into thinking the column really has been replaced. In truth, another column has been added - but you wouldn't see the "original" column on the output (even though it would be named the same) - the component should remove the "original" column from the output - as per your "hide" Connect issue. Doing that would keep the component synchronous - SSIS would optimize the buffers to add the column as early as desirable, then fill it when it reached the component. As far as the package designer (the human) would see - the column truly has been replaced.

I find this is exactly what I (and lots of others dealing with the Unicode/Nonunicode issue) want when converting types - "Just change the type and don't litter my flow with columns I no longer need and columns that aren't the name I wanted!"
Posted by Jamie Thomson on 10/28/2009 at 2:35 PM
Hi Todd,
Not sure about this one. "Replace column" would trick the user into thinking that the column truly had been replaced when you and I know that in truth an extra column would have to be created under the covers. Moreover you would now see 2 columns with the same name which is not only a sub-optimal experience but also confusing to someone who thinks that the original column should have been replaced.