After searching a lot on the Internet, I have to post this question here. I know it is simple but I'm breaking out my head since the last couple of hours.
I'm trying to convert a column in my source table of datatype varchar(6) to a column of datatype int in my destination. I tried using the Derived Column/Data Conversion transformations but none of them worked. So, I tried using the following C# (credits to the original poster) and getting an error during compilation.
Note: "MyCol" is the Input Column I've specified in the Script Component and "CleanCol" is the Output column I've specified as datatype [DT_I4].
public override void Input0_ProcessInputRow(Input0Buffer Row) { int colOut = 0; if (!Int32.TryParse(Row.MyCol, out colOut)) { Row.CleanCol_IsNull = true; } else { Row.CleanCol = colOut; } }
The best overloaded method match for 'int.TryParse(string, out int)' has some invalid arguments
The other expression I've tried was:
ISNULL(MyCol) ? (dt_i4)"" : (dt_i4)MyCol
From the above code, you might have understood that the source field has some blank records as well in the MyCol field.
Please let me know the best possible way to do the conversion from a String to Int or help me in fixing the error from the above.
Thanks,
Bangaaram
Known is a DROP, Unknown is an OCEAN.