ディレクトリー・リストの解析の例

この例では、「FTP ファイルのリスト (FTP List Files)」アクティビティーを使用して FTP ディレクトリーからディレクトリー・リストを取得し、フラット・ファイル・スキーマを使用して長いディレクトリー・リストを解析します。 そして各ファイルのプロパティーに基づいて、ファイルのリスト全体を繰り返します。

このタスクについて

各ファイルのプロパティーに基づいて、以下のアクションのいずれかが実行されます。

FTPParseDirListingExample を開いて表示し、詳しく調べるには、次のようにします。

手順

  1. 次のようにして、FTPParseDirListingExample プロジェクトを解凍します。
    1. Studio 内で定義されたデフォルト作成パスを見つけます。これは、新しいプロジェクトの作成先ディレクトリーです。現在のデフォルト作成パスを表示するには、Studio のツールバー・メニューから「ファイル」 > 「設定...」を選択します。 「設定」ウィンドウが表示されます。現行「デフォルト作成パス」がペインの下部に表示されます。 デフォルトでは、「デフォルト作成パス」は次のディレクトリーにあります。 C:¥Documents and Settings¥myLogin¥My Documents myLogin はご使用の Windows ログイン名です。
    2. FTPParseDirListingExample プロジェクトを構成するファイルが格納された FTPParseDirListingExample.zip ファイルを見つけます。Studio のインストール時にデフォルトを受け入れた場合、 このファイルはディレクトリー C:¥Program Files¥IBM¥WebSphere Cast Iron Studio 3.X¥Samples¥FTPParseDirListing にあります。
    3. FTPParseDirListingExample.zip ファイルを FTPParseDirListing ディレクトリーからデフォルト作成パスのディレクトリーにコピーします。
    4. FTPParseDirListingExample.zip ファイルの内容をデフォルト作成パスのディレクトリーに解凍します。
  2. 次のようにして、FTPParseDirListingExample プロジェクトを開きます。
    1. Studio のツールバー・メニューから 「ファイル」 > 「プロジェクトを開く...」を選択します。「開く」ダイアログ・ボックスが表示されます。
    2. FTPParseDirListingExample ディレクトリーを参照して開きます。
    3. FTPParseDirListingExample.sp3 ファイルをクリックして、「開く」をクリックします。プロジェクトが表示されます。
  3. 「プロジェクト」タブで、processBids オーケストレーションをダブルクリックします。 次の図に 示すように、processBids オーケストレーションのタブにオーケストレーションのアクティビティーが表示されます。
  4. ジョブのスケジュール」アクティビティーをクリックします。「チェックリスト」で「構成」タスクをクリックします。 実行時に、このアクティビティーはオーケストレーション・ジョブを 5 分ごとに開始します。
  5. List Files Full Dir Listing」というラベルが付いている「FTP ファイルのリスト (FTP List Files)」アクティビティーをクリックします。「チェックリスト」で「構成」タスクをクリックします。 このアクティビティーは、FTP サーバーの /input ディレクトリーにあるファイルの長いディレクトリー・リストを取得し、リストを 1 つのストリングとして dirListing 出力パラメーターに返します。この例では、directoryListing 出力パラメーターに返されたストリングは、fullDirectoryListing ストリング変数に格納されます。

    ディレクトリー・リストの解析の例に合わせて FTP エンドポイントが構成されている場合、「構成」タスクの「テスト」をクリックして、ディレクトリー・リストを取得します。「ファイルのみをリスト (NLST)」チェック・ボックスは、ディレクトリー・リストにファイルのリストのみが格納されるか、完全なディレクトリー・リストが格納されるかを決定します。この例では、「ファイルのみをリスト (NLST)」チェック・ボックスをクリアします。

  6. If...Then」アクティビティーを展開します。実行時、このアクティビティーは fullDirectoryListing ストリング変数の値を検査し、値が空の場合、If パスが実行されてオーケストレーションが終了します。fullDirectoryListing ストリングが空ではない場合、Else パスが実行されて、オーケストレーションはディレクトリーを解析します。
  7. フラット・ファイルの読み取り」アクティビティーをクリックします。「チェックリスト」で「入力のマップ」タスクをクリックします。 実行時、「FTP ファイルのリスト (FTP List Files)」アクティビティーで作成された長いディレクトリー・リストは、Data 入力パラメーターを介して「フラット・ファイルの読み取り」アクティビティーに渡されます。
  8. チェックリスト」で「出力のマップ」タスクをクリックします。 実行時、「フラット・ファイルの読み取り」アクティビティーはディレクトリー・ストリングを解析し、「出力のマップ」タスクに反復ノード構造で表示します。

  9. For Each」アクティビティーをクリックします。実行時、「For Each」アクティビティーは、ディレクトリー・リストを格納する反復ノード構造を繰り返します。それぞれの繰り返しは、単一ファイルとそのファイルのプロパティーに相当します。

  10. 変数のマップ」アクティビティーをクリックします。実行時、「変数のマップ」アクティビティーは現在のファイルのサイズを 10 進数値に変換します。

  11. If...Then」アクティビティーをクリックします。実行時、 「If...Then」アクティビティーは、次の「If...Then」ブランチを開始します。

タスクの結果

ディレクトリー・リストの解析の例を実行するには、『ディレクトリー・リストの解析の例に合わせた FTP エンドポイントの構成』セクションに示す手順を参照してください。