0

異なるファイル名と異なる日付形式のCSv入力ファイルがいくつかあります。条件に基づいて動的に入力ファイルを選択する必要があります。

例えば

i have files file120120909.csv, scalefile09102012.csv  

条件に基づいて入力ファイルを取得する必要があります。だから私はユーザー変数を取り、このように式を返しました

(@[User::Type] =="File" ? "file" : (@[User::type] =="scale" ? "scale_" :"NA"))  + (DT_STR,4,1252)DATEPART("yyyy", @[System::StartTime] ) + RIGHT("0" + (DT_STR,2,1252) DATEPART("mm", @[System::StartTime]),2) + RIGHT("0" + (DT_STR,2,1252)DATEPART("dd", @[System::StartTime]),2)  

式を評価すると、次の結果が得られました

file120120912  

ここで、ユーザー変数@ [User :: Type] == "scale"に値を割り当てると、式の結果はになりますscalefile09102012

したがって、条件に基づいて、ファイルの日付を追加するにはどうすればよいですか?

4

1 に答える 1

0

VB.NET コードをスクリプト タスクに記述して、問題を解決できます。

    Dim type As String = Dts.Variables("Type").Value.ToString()
    Dim startDate As DateTime = DateTime.Parse(Dts.Variables("StartTime").Value.ToString())

    Dim result As String = ""

    If type.ToLower() = "file" Then
        result = type.ToLower() + startDate.ToString("yyyyMMdd")
    ElseIf type.ToLower() = "scale" Then
        result = type.ToLower() + "file" + startDate.ToString("MMddyyyy")
    Else
        result = "incorrect type"
    End If

    MsgBox(result)
于 2012-09-12T10:28:21.420 に答える