2

以下のように、SQL実行タスクからForeachループに完全な結果セットを出力して、いくつかのテストを行っています

ここに画像の説明を入力

変数の値をメッセージボックスに出力したいだけですが、うまくいかないようです。

public void Main()
    {

        try
        {

            // TODO: Add your code here
            string Variables = Dts.Variables["User::ClientID"].ToString() +
            Dts.Variables["User::Passphrase"].ToString() +
            Dts.Variables["User::KeyFileName"].ToString() +
            Dts.Variables["User::InboundEncryptionRequired"].ToString() +
            Dts.Variables["User::SftpResponseRequired"].ToString() +
            Dts.Variables["User::OutboundDecryptionRequired"].ToString() +
            Dts.Variables["User::SftpHost"].ToString() +
            Dts.Variables["User::SftpPort"].ToString() +
            Dts.Variables["User::SftpUserName"].ToString() +
            Dts.Variables["User::Active"].ToString() +
            Dts.Variables["User::SftpDownloadFrom"].ToString() +
            Dts.Variables["User::SftpUploadTo"].ToString() +
            Dts.Variables["User::SftpDeleteFilesFromRemote"].ToString() +
            Dts.Variables["User::ConnectionProtocol"].ToString();

            MessageBox.Show(Variables);

        }



        catch (Exception Ex)
        {

            MessageBox.Show(Ex.Message);

        }
    }
}

}

クエリが2行を出力していることはわかっていても、「コレクションに要素が見つかりません」などのメッセージが表示されます。

また、変数を foreach ループにマップし、scrip タスクで読み取り専用変数を指定しました。

* アップデート *

これは私を夢中にさせています。変数名を 3 回チェックしましたが、完全な結果セットを取得していることを確認できます。

ここに画像の説明を入力

スクリプト タスク変数から User:: を削除しましたが、まだ運がありません。

4

4 に答える 4

8

使用している変数を渡す必要があります。スクリプト タスクをダブルクリックし、[スクリプト タスク エディター] モーダル ウィンドウで、表示する変数を [ReadOnlyVariables] または [ReadWriteVariables] に入力します。その後、コードでそれらを参照できるようになります。

スクリプト タスク エディター

于 2013-11-19T19:21:03.503 に答える