カスタムトランスフォーマーの編集

FMEリファレンス > リーダーとライター (Readers and Writers)
最終更新: 2022-6-20 | FME 2022.0.1.0

カスタムトランスフォーマーの編集

カスタムトランスフォーマーを編集することにより、その処理内容を変更することができます。

Main タブにおけるワークスペース全体のデータフローの編集と異なる主な点は次のとおりです。

  1. 外部からフィーチャーを受け取るための Input (入力) ポート、処理後のフィーチャーを外部に出力するための Output (出力) ポート、カスタムトランスフォーマー内で繰り返し処理を行うための Loop (ループ) ポートを設けることができます。
  2. リーダー、ライターを含めることはできません。
  3. カスタムトランスフォーマーで定義したユーザーパラメーターは、そのカスタムトランスフォーマー内部のみで使用できます。

以下、カスタムトランスフォーマーの編集に固有の事項について説明します。


編集の開始

パスワードで保護されているカスタムトランスフォーマーを編集する場合は、以下の操作で編集を始めるときにパスワードの入力が求められます。


ワークスペースに組み込まれているカスタムトランスフォーマーを編集する場合

編集中のワークスペースで組込型として使用しているカスタムトランスフォーマーについては、Transformer Gallery の Embedded Transformers フォルダ内のトランスフォーマー名、または、キャンバス上のトランスフォーマーを右クリックして表示されるメニューで Edit を選択すると、キャンバスにそのトランスフォーマーと同じ名前の編集用タブが追加 (すでにそのタブがある場合は前面に表示) され、編集を始めることができます。

編集中のワークスペースで組込型として使用しているカスタムトランスフォーマーをワークスペース内で編集して処理内容を変更した場合、変更結果はそのワークスペースのみに反映されます。同じカスタムトランスフォーマーを使用している他のワークスペースに影響を及ぼすことはありません。


トランスフォーマー定義ファイル (*.fmx) を編集する場合

インストールまたはエクスポートしたカスタムトランスフォーマーについては、Transformer Gallery の All フォルダ、または Categorized フォルダ以下のサブフォルダに表示されているカスタムトランスフォーマー名を右クリックして表示されるメニューで Edit を選択すると、別の Workbench が起動してキャンバスの Main タブでトランスフォーマー定義ファイル (*.fmx) が開き、編集を始めることができます。

編集中のワークスペースで使用しているリンク型カスタムトランスフォーマーについては、キャンバス上でそのトランスフォーマーの右クリック > Edit でも、同様に別の Workbench が起動して *.fmx の編集を始めることができます。

トランスフォーマー定義ファイル (*.fmx) を編集して処理内容を変更した場合、変更結果は、そのカスタムトランスフォーマーの同じバージョンをリンク型として使用している全てのワークスペースに反映されます。同じカスタムトランスフォーマーの同じバージョンでも、それを組込型として使用しているワークスペースに影響を及ぼすことはありません。


ポートの追加・編集・削除

ポートの追加

カスタムトランスフォーマーの編集用タブが表示されているとき、Workbench メニュー: Transformers (またはキャンバス空白部分の右クリック) > Insert Transofmre Input | Output | Loop によって、そのカスタムトランスフォーマーに任意の数の Input (入力) | Output (出力) | Loop (ループ) ポートを追加することができます。

  • Input (入力) ポート: インターフェースに入力ポートとして表示され、それを通じて外部からフィーチャーを受け取ります。ただし、Loop ポートから送り出されたフィーチャーの受取のみを行う場合は、インターフェースに表示させないこともできます。
  • Output (出力) ポート: インターフェースに出力ポートとして表示され、それを通じて処理後のフィーチャーを外部に送り出します。
  • Loop (ループ) ポート: 同じカスタムトランスフォーマー内の特定の Input (入力) ポートにフィーチャーを送ります (そのフィーチャーに対して当該 Input ポート以降の処理が繰り返し行われます)。

各ポートは、Navigator ウィンドウで次のように表示されます。

各ポートのプロパティの編集は、キャンバス上のポートのダブルクリック、 (プロパティボタン) のクリック、または、Navigator ウィンドウにおけるポート名の右クリック > Properties (Loop ポートについては Set Input to Loop to) の選択によって編集用画面を開いて行います。


Input (入力) ポートの編集
  • Name: ポート名を設定します。
  • Publish チェックボックス: デフォルトではチェックされており、このトランスフォーマーのインターフェースにこの入力ポートが表示されて外部からフィーチャーを受け取ることができます。ループ専用の入力ポートの場合にはチェックをはずすことにより、インターフェースに表示させないことができます。
  • External Attributes to Expose: ワークスペースに組み込まれているカスタムトランスフォーマーを編集する場合で、Main のデータフローで他のオブジェクトの出力ポートとこの入力ポートが接続されている場合に、チェックボックス付きリストでフィーチャー属性が表示されます。
    ここでチェックした属性については公開 (Published) パラメーターが作成され、それらを介して属性値を受け取ることができます。
  • Add ボタン: 公開 (Published) パラメーターを介して値を受け取ることができる属性を追加します。

Output (出力) ポートの編集
  • Name: ポート名を設定します。
  • Attributes To Output: カスタムトランスフォーマー内のデータフローでフィーチャーに付加された属性について、出力するフィーチャーに全て保持させる場合に All Attributes を選択し、一部を削除したい場合は Spacified Attributes を選択して削除する属性のチェックをはずします。

Loop (ループ) ポートの編集
  • Loop to: このループポートに入力されたフィーチャーの送り先の入力ポートを選択します。

ポートの削除

ポートを削除するには、キャンバス上でそのポートを選択してから次のいずれかひとつの操作をします。

  • キーボードの Delete キーを押し下げる
  • メニュー: Edit > Delete を選択する
  • 右クリック > Delete を選択する

ユーザーパラメーター (User Parameters)

ワークスペースにおけるユーザーパラメーターと同じ方法により、カスタムトランスフォーマーには公開 (Published) パラメーター、非公開 (Private) パラメーターを定義、修正することができます。

カスタムトランスフォーマーで定義したユーザーパラメーターは、そのカスタムトランスフォーマーの内部のみで使用することができます。

公開 (Published) パラメーターについてはカスタムトランスフォーマーのインターフェース (パラメーター設定画面) にその値を設定するための入力フィールドが表示され、そのカスタムトランスフォーマーを使用する側で設定した値を受け取ることができます。


トランスフォーマーパラメーター (Transformer Parameters)

トランスフォーマー定義ファイル (*.fmx) の編集中は、Navigator ウィンドウの Transformer Parameters セクションで次の事項を設定・変更することができます。ワークスペースに組み込まれているカスタムトランスフォーマーをそのワークスペース内で編集するときは、後述の Advanced セクションのパラメーターのみが編集できます。

  • Password: このカスタムトランスフォーマーの定義をパスワードによって保護することができます。パスワードを設定してから保存すると、次回以降このカスタムトランスフォーマーを編集するときにパスワードの入力が必要になります。
  • Name:カスタムトランスフォーマーの名前が表示されます。
  • Transformer Insert Mode: このカスタムトランスフォーマーをワークスペースに追加するときのモードとして、次のうちひとつを選択します。
  1. ○ Embedded by Default: ワークスペースへの追加時には組込型とし、後でリンク型への変更もできる。
  2. ○ Linked by Default: ワークスペースへの追加時にはリンク型とし、後で組込型への変更もできる。
  3. ○ Embedded Always: 常に組込型とする (リンク型への変更はできない)。
  4. ○ Linked Always: 常にリンク型とする (組込型への変更はできない)。

初期値は、このカスタムトランスフォーマーを *.fmw ファイルにエクスポートしたときに Insert Mode として設定された値です。

  • Deprecated: *.fmx ファイルを削除せずに廃止する場合に Yes を設定します。このパラメーターに Yes を設定したカスタムトランスフォーマーは Transformer Gallery に表示されなくなりますが、既存のワークスペースに追加済みのものは引き続き使用できます。
  • Description:カテゴリーや概要、ヘルプなどを設定できます。

Advanced セクションのパラメーターの構成は、次のようにケースによって異なります。

ワークスペースに組み込まれているカスタムトランスフォーマーをそのワークスペース内で編集する場合
トランスフォーマー定義ファイル (*.fmx) を編集する場合 – Enable Blocked Looping: No
トランスフォーマー定義ファイル (*.fmx) を編集する場合 – Enable Blocked Looping: Yes
  • Enable Blocked Looping: ループ処理を行うカスタムトランスフォーマーでグループベーストランスフォーマー (Group-Based Transformers) が含まれる場合は Yes、それ以外の場合は No を選択します。
  • Maximum number of iterations (0 for infinity), Attribute to hold iteration count: これらのパラメーターは Enable Blocked Looping パラメーターを Yes にしたときに現れ、それらとリンクした公開 (Published) パラメーターが自動的に追加されます。内容については次のページを参照してください。

トランスフォーマープロパティ (Transformer Properties)

カスタムトランスフォーマーの編集中は、Navigator ウィンドウの Transformer Properties セクションにカスタムトランスフォーマーの名前、カテゴリ、処理内容や使用方法の説明などが表示されており、それらはワークスペースプロパティと同じ要領で編集することができます。


ワークスペースに組み込まれているカスタムトランスフォーマーをそのワークスペース内で編集する場合
トランスフォーマー定義ファイル (*.fmx) を編集する場合

ここで Version (バージョン番号) を編集することはできません。編集結果を保存するときに、既存のトランスフォーマー定義を上書きするか、新バージョンとして保存するかを選択することができ、新バージョンとして保存したときに新しいバージョン番号が自動的に与えられます。


編集結果の保存
ワークスペースに組み込まれているカスタムトランスフォーマーをそのワークスペース内で編集した場合

ワークスペースに組み込まれている組込型カスタムトランスフォーマーの定義は、ワークスペースを保存したときにワークスペースファイル (*.fmw) の一部として保存されます。カスタムトランスフォーマーの編集結果のみを保存するための操作は必要ありません。

トランスフォーマー定義ファイル (*.fmx) を編集した場合

トランスフォーマー定義ファイル (*.fmx) を編集した場合には、Workbench メニュー: File > Save によって編集結果が保存できます。編集を始めてから最初に保存するときに次のメッセージボックスが表示され、既存のトランスフォーマー定義を上書きするか、編集後のトランスフォーマーを新しいバージョンとして保存するかを選択することができます。

既存のトランスフォーマーを上書きしますか、それとも、このトランスフォーマーの新しいバージョンを作成しますか?
現在のトランスフォーマーを上書きすると、このトランスフォーマーを使用している全てのワークスペースに影響を及ぼします。

このメッセージボックスで Overwrite ボタンをクリックすると既存のトランスフォーマー定義が編集結果によって上書きされます。New Version ボタンをクリックすると新しいバージョンとして保存され、新しいバージョン番号が自動的に与えられます。

既存のトランスフォーマー定義を上書きした場合、このトランスフォーマーの既存バージョンをリンク型として使用している全てのワークスペースに編集結果が反映されますが、組込型として使用しているワークスペースに影響を及ぼすことはありません。