FilePath ストリーム変数の利用
1 つのストリームでのみ設定や参照が可能な変数を「ストリーム変数」といいます。ここでは、 FilePath ストリーム変数を利用して、ファイルパスを参照しフィールドに出力する方法と、ファイルパスからファイル名を取り出し別の文字列へ埋め込む方法を説明します。
ファイルパスをフィールドに出力する
1.FileGetなど、FilePathストリーム変数を持つコンポーネントと Mapper コンポーネントを配置し、マッピングウィンドウを表示する
HINT
変数の利用
フロー内を流れるストリームとは別に、任意の値を参照または保持したい場合、フローデザイナーでは「変数」として値を設定し、参照できます。変数にはフロー変数、ローカル変数、ストリーム変数などいくつかの種類があります。
2.「ストリーム変数」の「FilePath」から、出力先マッピン のフィールドまでドラッグする
ストリーム変数の FilePath の値が、フィールド値として出力されます。
HINT
ストリーム変数とは
1つのストリームが有効な間のみ、設定や参照が可能な変数を、「ストリーム変数」といいます。コンポーネントの出力ストリームの付加情報として参照して、フロー処理の中で利用したり、入力ストリームに情報を付加してコンポーネントでの処理に利用したりできます。
出力ストリーム変数
フローサービスによってコンポーネント実行時に自動的に付加され、出力ストリームに設定されるストリーム変数を「出力ストリーム変数」といいます。FileGet など一部のコンポーネントで用意されており、出力ストリーム変数を持つコンポーネントでは、ヘルプの「ストリーム情報」欄にその情報が記載されています。
ファイルパスからファイル名を取得する
1.FileGetなど、FilePathストリーム変数を持つコンポーネントと Mapper コンポーネントを配置し、マッピングウィンドウを表示する
2.「文字列」タブの Filename 関数(「ファイルパスからフォルダ名またはファイル名を取得」)を配置する
HINT
出力ストリーム変数としてFilePathを参照できるコンポーネントには、FileGet のほか FileExist、RecordGet、UnZip、FTPGet、MIMEDecode などがあります。
Filename 関数
Filename 関数は、入力されたパス文字列から、ファイル名やフォルダー名を取り出すマッパー関数です。取り出す対象は、「取り出す部分」プロパティで指定します。
3.出力ストリーム変数の「FilePath」と Filename 関数を接続線でつなぐ
このように Filename 関数を使って、入力ストリームの FilePath 変数からファイル名を取り出すことができます。なお、FileName ストリーム変数を利用できるフローの場合は、FileName 変数から直接ファイル名を取り出せます。
HINT
ファイル名をパス文字列に埋め込むには
Filename 関数や、FileName ストリーム変数を使って取り出したファイル名を、パス文字列に埋め込むには、 Embed マッパー関数を使用します。Embed 関数の「データ」プロパティに、パス文字列と、取得したファイル名の入力値として「$input1」(または「${input1}」)を指定します。