0

私はSSISを初めて使用し、この質問の解決策を見つけるために検索しました。どんな助けでも大歓迎です!

データ型を変更するために、dt_wstr として定義されたデータを含むフラット ファイルがあります。[列] を dt_str(50) に設定するためにデータ変換を使用しています。

派生列も使用しています-新しい列として追加します: 目標は式を書くことです

11文字として定義された[列]があります

私の質問は、10 文字のみをキャプチャする式をどのように記述すればよいかということです。10 文字を超えるものは [column] を -1 else (dt_I8) [column] に変更したいと考えています。

私はもう試した:

FINDSTRING([Column],"9999999999",1) == 10 ? -1 : (DT_I8)TRIM([Column]) 

FINDSTRING([Column],"9999999999",1) > 10 ? -1 : (DT_I8)TRIM([Column]) 

LEN([Column]) == 10 ? -1 : (DT_I8)[column]

SUBSTRING( [Copy of Member ID] ,1,10)

パッケージはエラーなしで実行されますが、テーブルの結果が正しくありません。10 文字を超える列がテーブルに表示されません。

私はビジュアルスタジオ2012を使用しています

ありがとうダワナ

4

1 に答える 1