bea ホーム | 製品 | dev2dev | support | askBEA |
|
e-docs > Tuxedo > FML を使用した Tuxedo アプリケーションのプログラミング > FML プログラミング入門 |
FML を使用した Tuxedo アプリケーションのプログラミング |
FML プログラミング入門
ここでは、次の内容について説明します。
FML とは
フィールド操作言語 (FML: Field Manipulation Language) とは、属性と値の組み合わせをフィールドに格納する記憶構造 (フィールド化バッファ) を定義および操作する C 言語関数のセットです。属性はフィールドの識別子であり、対応する値はフィールドのデータ内容を表します。
フィールド化バッファを使用すると、関連したフィールドの集まりに名前でアクセスでき、協調動作するプロセス間でパラメータ化したデータをやり取りする際に非常に便利です。ほかのプロセスと通信する必要のあるプログラムで FML を使用すると、フィールドを格納する構造体を操作せずにフィールドにアクセスすることができます。
FML は、VIEWS と呼ばれる機能も提供します。この機能を使用すると、フィールド化バッファを C 構造体や COBOL レコードにマッピングしたり、逆に C 構造体や COBOL レコードをフィールド化バッファにマッピングできます。VIEWS を使用すると、フィールド化バッファの代わりに構造体内で大量のデータを操作できます。操作対象のデータが構造体に転送されると、アプリケーションの動作が速くなります。つまり、この VIEWS 機能を使用すると、フィールド化バッファのデータ独立性と従来のレコード構造の効率性や簡便性を両方とも実現できます。
FML および VIEWS の機能には、次の 2 つのインターフェイスがあります。
FML を BEA Tuxedo システムで使用する方法
BEA Tuxedo システムでは、ATMI アプリケーションのコンテキストで FML 関数を使用してフィールド化バッファを操作します。
FML 関数は、BEA Tuxedo システムのコア部分を扱うデータ・エントリ・プログラムで使用されます。つまり、これらのプログラムでは、フィールド化バッファを使用して、ユーザが端末から入力したデータをほかのプロセスに転送します。したがって、データ・エントリ・プログラムからフィールド化バッファに入力されたデータを受け取るプログラムを作成する場合も、FML 関数を使用する必要があります。
ユーザの入出力を操作するアプリケーション・プログラムを独自に開発する場合や、プロセス間でメッセージを送受信するプログラムを作成する場合も、プログラム間で送受信されるフィールド化バッファを操作する方法として FML を使用できます。
BEA Tuxedo の型付きバッファ
型付きバッファは、フィールド化バッファという FML の概念に基づいた BEA Tuxedo システムの機能の 1 つです。BEA Tuxedo システムには、FML と VIEW という 2 種類の標準的な型付きバッファが用意されています。これらのバッファのうち、BEA Tuxedo の VIEW バッファの場合は、FML フィールド化バッファとまったく関連付けなくてもよいという点が唯一異なります。
このマニュアルでは、構造化された FML レコードとして VIEW を説明します。ほかのマニュアル、たとえば『C 言語を使用した BEA Tuxedo アプリケーションのプログラミング』では、BEA Tuxedo で提供されるいくつかのバッファ型のうちの 1 つとして VIEW を扱います。
FML の用語