* トランザクションとコンポーネントの記述方法
Firebird基幹システムの全体構造は、メインコントロール-トランザクション-コンポーネントで構成されています層の。オンライントランザクションマスタコントロールはCプログラムで記述し、非同期トランザクションマスタコントロールと終日バッチマスタコントロールはCLおよびRPGLEプログラムで記述します。メイン コントロールはトランザクション コードを介して対応するトランザクション RPGLE プログラムを呼び出し、トランザクション プログラムは CALLP を介してさまざまなモジュールのコンポーネント RPGLE プログラムを呼び出し、処理ロジック全体を完了します。トランザクション プログラムとコンポーネント プログラムの両方で、一連のテンプレート サンプルがまとめられています。サンプル プログラムの作成方法を次に示します。
トランザクションとコンポーネントプログラムの記述方法を紹介する前に、まず、/COPY によって導入される統合共通プログラムを紹介します。プログラムのこの部分は DSCPPGM に配置されます。 /COPY は乱用すべきではなく、命名規則と組み合わせる必要があることに注意してください。そうしないと、プログラムの可読性が低下しやすくなります。
まずはHEADです。このファイルは、著作権といくつかの日付 fmt ルールを定義します。
トランザクション プログラムの例では、6 桁のトランザクション コード 000000 を例に挙げています。トランザクション プログラムの名前は T000000A で、2 つの入力 T000000I1 と T000000I2 と 2 つの出力 T000000O1 と T00000O2 があります。ここで、I2 と O2 は配列です。
T000000I1のプログラムは以下の通りです。
コンポーネントプログラムサンプルSCETPSVには、固定PMGパラメータに加えて、2つの独自パラメータF1とF2があります。コンポーネントは、SCETPSVP コンポーネント宣言、SCETPSVF1 および SCETPSVF2 の 2 つのパラメータ構造体定義、および SCETPSV コンポーネント プログラムで構成されます。
SCETPSVF1パラメータファイルは以下の通りです。
この時点で、コンポーネントとトランザクションテンプレートが導入されました。このテンプレートに従って、実際に使用されるモジュールプログラムを記述し、トランザクションマスターにハングして実行できます。