使用指令碼元件
使用 C#或 vb.net 程式碼,轉換更加簡單。需要一個輸出列,因為我們輸入的型別無法動態更改,另一種方法是在正手上新增一個輸入列使其成為 ReadWrite。
http://i.stack.imgur.com/5DvO7.jpg
下一個程式碼將填充新列。
public override void Input0_ProcessInputRow(Input0Buffer Row)
{
if (Row.DataDate_IsNull)
Row.DataDateAsDate_IsNull = true;
else
{
DateTime tmp;
if (DateTime.TryParseExact(Row.DataDate.ToString(), "yyyyMMdd", new DateTimeFormatInfo(), System.Globalization.DateTimeStyles.None, out tmp))
Row.DataDateAsDate = tmp;
else
// throw exception or return null
Row.DataDateAsDate_IsNull = true;
}
}