ストリーム変数
ストリーム変数とは、1つのストリームが有効な間のみ設定・参照可能な変数です。コンポーネントの出力ストリームの付加情報として参照してフロー処理の中で利用したり、入力ストリームに情報を付加してコンポーネントでの処理に利用したりすることができます。
ストリーム変数を使うには、以下の3つの方法があります。詳しくは、それぞれの項で説明します。
- フローサービスで予約された名前を使うフローサービス定義のストリーム変数
- コンポーネントのプロパティで定義したフィールドをストリーム変数として使うコンポーネント定義のストリーム変数
- ユーザーが任意の名前で定義して使うユーザー定義のストリーム変数
たとえば、フローサービス定義のストリーム変数は、FileGetコンポーネントでファイルを読み込んだ場合にコンポーネントの出力ストリームに設定されます。FileGetコンポーネントに続いてマッパーを連結してマッパーの中でストリーム変数を参照することができます。入力をそのまま出力する処理のコンポーネントを続けて連結した場合はストリームが存続してストリーム変数も保持されますが、コンポーネント自身でストリームを生成、加工する処理のコンポーネントを連結した場合は同じストリーム型であってもストリーム変数は引き継がれません。
メモ
詳しくは、各コンポーネントのヘルプを参照してください。
フローサービス定義のストリーム変数
フローサービス定義のストリーム変数は、フローサービスで予約された変数名を使います。コンポーネントの入力ストリームに、マッパーのマッパー変数を使って予約された変数名を定義して値を設定し、コンポーネントの処理に必要な情報として利用することができます。コンポーネントの出力ストリームでは、自動的に付加されたストリーム変数から値を参照することができます。
ストリーム変数を定義する
マッパーを選択するとインスペクタに表示されるマッパー変数タブで、予約された変数名、データ型、初期値を定義し、ストリーム変数項目で「はい」を選択します。初期値は省略可能です。
入力ストリームのストリーム変数
入力ストリーム変数には、現在、以下のものがあります。たとえば、SimpelMailコンポーネントでファイルを添付したメールを作成する場合、添付ファイルになるSimpelMailコンポーネントへの入力ストリームに対して、マッパーでストリーム変数名「FilePath」に添付ファイル名を定義すると、メーラーで受信した際の添付ファイル名になります。
| コンポーネント名 | 予約された変数名 | 変数の説明 |
|---|---|---|
| MIMEEncode | FilePath | Content-Dispositionのファイル名 |
| SimpleMail SimpleSMIMEMail |
FilePath | 添付ファイルが存在する場合のファイル名 |
| MIMEType | 添付ファイルが存在する場合のContent-Type | |
| Zip | FilePath | 存在する場合、Zip内のファイル名 |
ストリーム変数とストリームコンテナの利用
SimpleMailコンポーネントの「ファイルを添付」プロパティで「はい」を選択すると、ファイルを添付してメールを送信することができます。添付のファイル名はストリーム変数「FilePath」になります。たとえば、以下のような複数のファイルを添付してメールを送信するフローの場合、SimpleMailコンポーネントでの入力がストリームコンテナでも、ストリームを1つずつ添付ファイルとし、それぞれにファイル名をつけることができます。
出力ストリームのストリーム変数
出力ストリーム変数には、現在、以下のものがあります。たとえば、FileGetコンポーネントでファイルを読み込んだ場合、FileGetコンポーネントの次に連結したマッパーでストリーム変数名「FileDate」や「FileSize」からファイルの最終更新日時やファイルサイズを参照することができます。
| コンポーネント名 | 変数名 | 変数の説明 |
|---|---|---|
| AmazonS3Get | Name | オブジェクト名 |
| Size | サイズ | |
| ContentType | コンテントタイプ | |
| AzureBlobGet | Name | Blob名 |
| Size | サイズ | |
| ContentType | コンテントタイプ | |
|
BarGraphComponent GanttChartComponent MultiBarGraphComponent PieGraphComponent StackedBarGraphComponent |
AreaTags | 作成したグラフのクリッカブルマップ情報 |
| FileExist | FileName | ファイルが存在する場合、そのファイル名 |
| FilePath | ファイルが存在する場合、そのファイルパス | |
| FileDate | ファイルが存在する場合、その最終更新日時 | |
| FileSize | ファイルが存在する場合、そのサイズ | |
| FileGet RecordGet UnZip |
FileName | 読み込んだファイルのファイル名 |
| FilePath | 読み込んだファイルのファイルパス | |
| FileDate | 読み込んだファイルの最終更新日時 | |
| FileSize | 読み込んだファイルのファイルサイズ | |
| FTPGet | FilePath | 読み込んだファイルのファイル名 |
| FileDate | 読み込んだファイルの最終更新日時 | |
| FileSize | 読み込んだファイルのファイルサイズ | |
| HTTPGet HTTPPost |
StatusCode | HTTPレスポンスのステータスコード |
| HtmlParse | Title | 読み込んだHTMLのtitle属性の値 |
| MIMEDecode | FilePath | 出力対象のパートにContent-Dispositionヘッダーがある場合のファイル名 |
| OnSheetForm | WorkbookId | ワークブックID |
| QueueGet | JMSDestination | 配信先 |
| JMSDeliveryMode | 永続化フラグ | |
| JMSMessageID | メッセージの識別値 | |
| JMSTimestamp | メッセージが送信された時間 | |
| JMSExpiration | メッセージの有効期限(1970年1月1日からのミリ秒数) | |
| JMSRedelivered | 再配信されたメッセージならtrue | |
| JMSPriority | メッセージの優先順位 | |
| JMSReplyTo | 返信先を表わす任意の情報 | |
| JMSCorrelationID | 任意の識別子 | |
| JMSType | 任意の情報 |
コンポーネント定義のストリーム変数
コンポーネント定義のストリーム変数は、コンポーネントのカテゴリープロパティ(※)に定義する任意の名前のフィールドをシステムが自動的にストリーム変数にします。通常、コンポーネントのプロパティ値を参照する場合、コンポーネントの後にマッパーを連結してマッピングウィンドウでプロパティ名フィールドから参照することができますが、カテゴリープロパティをストリーム変数にすることにより、コンポーネントの後のみでなく出力ストリームが有効な間、ストリーム変数として値を参照することができます。
※カテゴリープロパティとは、コンポーネントを選択したときにインスペクタに表示される基本タブ以外のタブです。コンポーネントの処理に利用するパラメーターのようなフィールド定義をするために使用します。
次項で説明するカテゴリープロパティの対象フィールドは、コンポーネントのプロパティを出力ストリーム変数として使用するため、コンポーネントの前に連結したマッパーではプロパティとして見えますが、コンポーネントの後に連結したマッパーではストリーム変数として見えるようになっています。
出力ストリームのストリーム変数
ストリーム変数には、現在、以下のものがあります。たとえば、HTTPGetコンポーネントの受信ヘッダータブでヘッダー名を定義した場合、次に入力をそのまま出力する処理のコンポーネントを連結し、その次に連結したマッパーでヘッダーの内容であるストリーム変数フィールドからマッピングして参照するような処理を行うことができます。
| コンポーネント名 | カテゴリープロパティ名 | 変数の説明 |
|---|---|---|
|
AzureBlobGet AzureBlobPut AzureQueueGet AzureQueuePut AzureTableGet AzureTablePut |
受信ヘッダー | 受信ヘッダー |
| ExcelInput ExcelSlimInput ExcelPOIInput |
単一セル | Excelビルダーで定義した単一セル領域 |
| FlowInvoker | パラメーター | 実行するフローのパラメーター |
| HTTPGet HTTPPost |
受信ヘッダー | 受信ヘッダー |
| HTTPStart | Cookie | HTTPリクエストのCookie |
| Header | HTTPリクエストのヘッダー | |
| IMAP4 POP3 |
メールヘッダー | メールヘッダー |
| JavaInterpreter JavaClass |
パラメーター | パラメーター |
| OnSheetForm | 単一セル | Excelビルダーで定義した単一セル領域 |
| SubFlow | パラメーター | サブフローのパラメーター |
| XPathString | XPath | XPath式 |
ユーザー定義のストリーム変数
ユーザー定義のストリーム変数は、入力ストリームに情報を付加してカスタムコンポーネントでの処理に利用したり、出力ストリームの付加情報として定義し参照してフロー処理の中で利用したりすることができます
ストリーム変数を定義する
マッパーのインスペクタにあるマッパー変数タブで変数名、データ型、初期値を定義し、ストリーム変数項目で「はい」を選択します。初期値は省略可能です。