問題タブ [script-component]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
774 参照

web-services - SSISで(スクリプトコンポーネントで)複数の入力を使用してWebサービスを呼び出す方法は?

特別な計算を実行できる Web サービスを使用する必要があります。これを実行するために Web サービス タスクを使用しましたが、問題は、Web サービスを 1 回 (1 つの入力値)しか呼び出す方法がわからず、複数の値の計算を実行する必要があることです。

ここに画像の説明を入力

目標を達成するために、これらの2つのオプションを思いつきました

オプション1:

  • 私の意見では、WS タスクの代わりにデータ フロー タスクを使用して、スクリプト コンポーネントで Web サービスを呼び出す方がよいでしょう (ただし、スクリプトで WS を呼び出す方法がわかりません??)。

オプション 2:

  • Web サービス タスクを保持し、複数の入力値の計算を実行します。
0 投票する
2 に答える
2647 参照

stored-procedures - SSIS スクリプト コンポーネント呼び出しストアド プロシージャが -1 を返す

Stored proc への呼び出しを実装しようとしましたが、proc は後で使用する ID を返します。実行するたびに、out パラメーターを -1 として取得します。以下は私のサンプルコードです:

personID は常に -1 です。ここで何が間違っていますか。助けてください..!!以下はストアドプロシージャコードです

0 投票する
1 に答える
8732 参照

c# - SSIS 2012 のスクリプト コンポーネントの PipelineBuffer から列名を取得する

スクリプト コンポーネントの変換で PipelineBuffer から列名とインデックスを取得しようとしていますが、これは SSIS であり、それらを Hashtable に追加します。クラスを から に変更し、次のコードを使用public class ScriptMain : UserComponentすると、これが可能になることがわかっています。ScriptMain : PipelineComponent

でも; これを行うと、オーバーライドできなくなります。public override void Input0_ProcessInputRow(Input0Buffer Row)これは PipelineComponent クラスでは使用できないため、次のようなものを呼び出すだけでは接続マネージャーにアクセスできなくなります。IDTSConnectionManager100 connMgr = this.Connections.DbConnection;私が見ることができることから、BufferManager は UserComponent クラスでは使用できません。UserComponent を使用してこれを達成する方法はありますか?

0 投票する
0 に答える
287 参照

xml - SSIS Get テーブル名

私が達成したいのは、エラーの説明が発生するテーブル名を取得することです。私が考えているのは、OLEDB Destination(occupancy/attachedStructures) のコンポーネント名を取得することですが、その方法がわからないか、他の方法があります。

これは、ここの手順に基づいた私のサンプル図です
SSIS ダイアグラム

0 投票する
1 に答える
1169 参照

c# - SSIS スクリプト コンポーネント - Json の 1 行をテーブルに処理する

私はSSISが初めてです。入力としてテーブルからJson文字列を含むフィールドを取得し、Jsonを出力としてテーブルに変換しようとしています。SSIS で非同期スクリプト コンポーネントをセットアップし、Json フィールドを入力列として選択し、出力列も作成しましたが、いくつかの問題に遭遇しました。

  1. 入力から値を取得するにはどうすればよいですか? 次のような「ProcessInputRow」メソッドで入力列を文字列に抽出しようとします

    string = Row.MData 「型 'Microsoft.SqlServer.Dts.Pipeline.BlobColumn' を 'string' に暗黙的に変換できません」というメッセージが表示されます

    または、文字列に変換しようとすると「Microsoft.SqlServer.Dts.Pipeline.BlobColumn」を返します

  2. OutputBuffer.AddRows を使用して出力を作成できるので、コードを "ProcessInputRow" に記述する必要がありますか? 「CreateNewOutputRows」の入力データにアクセスできないため、「CreateNewOutputRows」を無視しますか?

  3. または、これを行うためのより良いアプローチの提案はありますか?

0 投票する
1 に答える
5125 参照

sql-server - SSIS スクリプト コンポーネントまたはスクリプト タスク ジョブ履歴ログへの書き込み

  • SQL Server 2008 R2 を使用しています。
  • SSIS パッケージを実行するスケジュールされたジョブがあります - SQL エージェントで実行されます。
  • スケジュールされたジョブで発生するメッセージをログに記録したい。
  • スクリプト コンポーネントまたはスクリプト タスクからのメッセージをログに記録したいと考えています。
  • エラーのみをログに記録するのではなく、「Processed X records」などの成功メッセージをログに記録したい。
  • カスタム テーブルなどを作成したくありません。
  • 理想的には、これらのメッセージをジョブ履歴ログに表示したい