バイナリファイルをマッピングに追加する

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  データソースとターゲット > プロトコルバッファー >

バイナリファイルをマッピングに追加する

プロトコルバッファー書式でエンコードさえているバイナリファイルから、または、バイナリファイルへデータを読み取には、MapForce マッピングに .proto ファイルを以下のように追加する必要があります。

 

 

マッピングコンポーネントとして .proto ファイルを追加する方法:

1.「入力」 メニューで「プロトコルバッファー」をクリックします。 または、「プロトコルバッファーファイルの挿入」 mf_ic_binary ツールバーボタンをクリックします。
2.次のいずれかを実行してください:
a.ローカルディスク上の保管されている .proto ファイルを開くには、「開く」を開きます。
b.URL から .proto ファイルを開くには、「URL に切り替える」 をクリックして、ファイルの URL をダイアログボックスに入力します。URL からコンポーネントを追加するを参照してください。
c.以前にグローバルリソースとして定義されている .proto ファイルを開くには、 「グローバルリソースに切り替える」 をクリックします。グローバルリソースに関する情報は、 Altova グローバルリソースを参照してください。
3..proto ファイルは通常複数のメッセージ型を含んでいます。 プロンプトされると、(通常 「ルート」と呼ばれる)階層の一番上のオブジェクトを選択します。

mf_proto_01

4.「OK」 をクリックします。ダイアログボックスが表示されます。

mf_proto_13

5.プロトコルバッファーバイナリファイルからデータを読み取る場合、「参照」 をクリックして、データを読み取るバイナリインスタンスを選択します。プロトコルバッファーファイルにデータを書き込む場合、または、後にインスタンスを選択する場合、「スキップ」をクリックします。

 

.proto ファイルの読み取りに成功すると、 MapForce は他のコンポーネント型に行われるようにマッピング上に構造を表示します。例:

 

mf_proto_02

 

バイナリコンポーネントがマッピングに追加されました。しかしながら、まだデータ読み取り、書き込まれていないため、マッピングはまだ完成していません。完成されたマッピングを表すサンプルに関しては、次を参照してください。:

 

サンプル: プロトコルバッファーからデータを読み取る
サンプル: プロトコルバッファーにデータを書き込む

 

「ファイル/ブロブ」 ボタン

バイナリコンポーネント上の「ファイル/ブロブ」 ボタンは、次のシナリオで役に立ついくつかのコマンドが搭載されたコンテキストメニューを開きます:

 

コンポーネント設定からファイル名を使用する - これはデフォルトで選択されるオプションで、マッピングが単一のバイナリファイルを読み取る、または、生成する際に意味を成します。このオプションが設定されていると、ファイル名を「」ダイアログボックスから変更することができます。このオプションが設定されていると、「コンポーネント設定」 ダイアログボックスからファイルの名前を変更することができます。バイナリコンポーネントの設定を参照してください。
マッピングにより提供された動的なファイル名を使用する - このコマンドはマッピングが複数のバイナリファイルを読み取る、または、生成する場合意味を成します。このオプションが設定されていると、「コンポーネント設定」 ダイアログボックスからファイル名を変更することはできません。代わりに、マッピング自身からの情報をベースにファイル名を設定することができます。 サンプル: プロトコルバッファーにデータを書き込むを参照してください。
プロトコルバッファーにブロブを解析する- このコマンドは、コンポーネントを解析コンポーネントに変換します。これにより、マッピングが可能なツリー構造にすることにより、プロトコルバッファー書式のバイナリの値を解析することができます。 これは文字列の解析とシリアル化に類似した方法で作動します。文字列の解析とシリアル化を参照してください。 この場合、文字列ではなくバイナリバイト文字列とのみ作業することができます。  例えば、下のコンポーネントでは、バイナリ型のアイテムを左側の「ブロブ」入力に接続することができます。マッピングのランタイムでは、個のバイナリの値は解析され、データを右側のマップ可能な構造にパスします。

mf_proto_14

プロトコルバッファーをブロブにシリアル化する - このコマンドは、コンポーネントをシリアル化コンポーネントに変換することができます。これにより、マップ可能なツリー構造をプロトコルバッファー書式内のバイナリ値にシリアル化を手助けすることができます。 例えば、下のコンポーネントでは、適切な型のアイテムを左側のマップ可能構造に接続することができます。 マッピングランタイムでは、構造はシリアル化され、(バイナリ型の)単一の出力を右側に生成し、更にターゲットコンポーネントに接続できるようになります。これはマッピングが BLOB (Binary Large Object) 型としてデータをターゲットデータベースに書き込む際に役に立ちます。他の使用方法は、データをターゲットプロトコルバッファーコンポーネントの (「バイト」型の) バイナリフィールドに書き込む場合です。

mf_proto_15


(C) 2019 Altova GmbH