問題タブ [script-task]
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.
c# - c#を使用してファイルの電子メールをチェックする方法は?
毎週エクセルファイル付きのメールが届きます。おそらく私の目標を達成するためのより良い方法があることはわかっていますが、電子メールを開き、添付ファイルとして特定のファイル名を探し、そのファイルを別の場所にコピーできるスクリプト タスクを SSIS に持つことは可能でしょうか?
これがシナリオです。この Excel ファイルは、私のチームにとって SQL データベースに含めることが重要であり、Excel ソースのプロバイダーは、この Excel ファイルを 1 週間に 1 回だけ電子メールで送信してくれます。次に、電子メールを確認し、ファイルを SSIS データフロー タスクが取得して SQL テーブルに挿入できる場所にコピーします。これを自動化したい。私の元のアプローチが実行できない場合、他にどのように自動化できますか? 共有ネットワークの場所を使用する以外に。Excel ファイルは電子メールからのみ取得できると仮定します。Outlook/Office 365、SSIS、SSMS を使用して、DBO アクセス権があり、c# を使用できます。
私がメールについて無知であることを認めます。これを達成するために電子メールクライアントが実際に実行できる手順があれば、私はすべて耳を傾けるでしょう!
編集:ローカルマシンへの保存が不可能な場合があるため、ネットワークドライブにもアクセスできます。
c# - SSISスクリプトタスクでパスワードを暗号化するには?
そのため、電子メールにアクセスする SSIS パッケージにスクリプト タスクがあります。
パッケージ自体を暗号化しましたが、ScriptMain.cs ページでプレーン テキストになっていることにまだ不安を感じています。以前は、たとえば WPF アプリケーションでこのデータを暗号化できましたが、それをスクリプト タスクに変換する方法がわかりませんでした。私はこれを考えすぎていますか?接続マネージャーまたは保護のレイヤーをもう 1 つ追加する何かでこれを設定する方法はありますか?
追加したかったのは、交換サービス API を使用して電子メールに接続していることです。
sql-server - SSIS スクリプト タスクで空のフラット ファイルを検出する
フォルダー内のゼロ KB ファイルを識別し、メールまたはテキスト ファイルに出力するスクリプト タスクを探しています。
前もって感謝します。ご不明な点がございましたら、お問い合わせください。
ssis - SSIS 無効な文字 "." スクリプトタスクのファイル名エラー
1 つのファイルを 2 つの個別のファイルに分割するタスクがあります。ただし、その後、ソース ファイルをソース ディレクトリからアーカイブ フォルダに移動する必要があります。これにより、翌日再び取得されることはありません。
ファイル名は「DFG.AE234125.HDS932.H001.U001」のような非常に悪いものですが、外部からそのようなファイルを受け取っているため、名前を変更することはできません。私のループは、User::SelectedFile 変数を使用して反復することにより、すべてのファイルを取得して分割するという意味で正常に機能します。新しく追加された「ファイルをアーカイブに移動」スクリプト タスクに到達すると、ほぼ 1 分間読み込みが停止し、「ファイル名に '/\=,.' のような文字を含めることはできません」のようなエラーが返されます。スクリプトは C# であり、2 つ宣言しています1 つはアーカイブ パス用、もう 1 つはファイル名用の文字列であり、User::SelectedFile 変数を使用します。
私が検討した/試したこと:
- ファイル パスの確認 (サーバーの場所にアクセスできないため、C ドライブのテスト ディレクトリを使用しているため、パスは正しいです)
- 私はローカルの場所を使用しているため、特に分割用のファイルを取得しているため、許可の問題になることはありません。
- これはフラット ファイル接続を使用するスタンドアロン プロセスであるため、サーバー接続の問題はありません。
- これにはファイル システム タスクも使用してみましたが、名前に対して同じエラーが発生します。
- C# スクリプト自体は、処理されたファイルをアーカイブ フォルダーに移動する必要がある別のパッケージからコピー & ペーストされます。そこで動作します。新しいスクリプトで行ったことは、パスの変数を変更することだけです。
- ブレークポイントを追加したところ、スクリプト タスクに到達したときに変数が正しい値を持っていることがわかります。
問題は、プロセスがスクリプト タスクに到達する時点にあるようです。この時点で、分割はすでに正常に行われています。ファイル名の「.」を無視してアーカイブ フォルダに移動できる回避策を教えてもらえますか?
これは Stackoverflow に関する私の最初の投稿であるため、投稿自体に関するフィードバックは大歓迎です。
よろしくお願いします。
知財
sql-server - SSIS スクリプト タスク - XML ファイルから読み取り、テキストをシステム変数と照合し、値をユーザー変数に出力します。
私は SSIS を初めて使用し、スクリプト タスクに苦労しています。次のシナリオのスクリプトを作成する方法を見つけようとしています。
ここにシナリオがあります
XMLファイルには次のデータがあります
**XML ファイルから「名前」を読み取るスクリプト タスクが必要です。システム変数「マシン名」と一致し、出力をユーザー変数「サーバー番号」に書き込みます。
マシン名が DEV3WEB の場合 - 出力は番号 '1' になり、DEV3APP の出力は番号 '2' になります。**
前もって感謝します。
ssis - OLE DB コマンドは ssis で動的独立クエリをサポートしていますか?
以前は、多くの SQL クエリを実行していて、csv ファイルの eaxtract を手動で処理していました。今、私は同じことをする ssis パッケージを作ろうとしています。
これを行うために、for-each ループで OLE DB ソースを使用しました。しかし、それは機能していません。それで、私は正しくやっていますか?または、私が行うのに役立つことが他にありますか(スクリプトタスク以外)?