使用指令碼元件

使用 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;
    }
}

http://i.stack.imgur.com/9Sr4Q.jpg