MessageQueueDirector説明書 |
目次
索引
![]() ![]() |
第1部 基本機能編 | > 第6章 アプリケーションの作成 |
Symfoware/RDBトランザクション連携機能を利用した、データベースの更新とメッセージを送受信するアプリケーションは、まず、業務用データベースとMQDおよび目的のメッセージキューに接続します。その後、データベースの更新やメッセージの送受信を行い、トランザクションの終了を行うように作成します。
MQDへの接続は、プログラムインタフェースの“MQDCONNECTRDB”または“mqd_connectrdb”を使用します。トランザクションの終了は、“SQL COMMIT文”を使用します。トランザクションの取消しは、“SQL ROLLBACK文”を使用します。
Symfoware/RDBトランザクション連携機能を利用したアプリケーションの例を図6.12に示します。
なお、データベース管理システムの詳細については、“Symfoware Server RDB管理者ガイド”、データベースを使用するアプリケーション開発については、“Symfoware Server RDBユーザーズガイド 応用プログラム開発編”、SQLの詳細については、“Symfoware Server SQLリファレンスガイド”を参照してください。
[図の説明]
1) アプリケーションを業務用データベースに接続します。
2) “MQDCONNECTRDB”または“mqd_connectrdb”を使用してMQDに接続します。
3) アプリケーションを目的(受信先と送信先)のメッセージキューに接続します。
4) メッセージキュー1からメッセージを受信します。
5) メッセージの内容を見て、データベースを更新します。
6) 送信先メッセージキュー2にメッセージを送信します。
7) “SQL COMMIT文”を使用してトランザクションを終了します。
8) アプリケーションをメッセージキューから切断します。
9) アプリケーションをMQDから切断します。
10) アプリケーションを業務用データベースから切断します。
以下に、Symfoware/RDBトランザクション連携機能を利用したCOBOLコーディング例を示します。
EXEC SQL CONNECT TO 業務用データベース・・ END-EXEC. MOVE "MQD001" TO MQD-SYSNAME. CALL "MQDCONNECTRDB" USING MQD-SYSNAME MQD-ENVIRONMENT MQD-SYSADDR. MOVE "QUE001" TO MQD-QUENAME. CALL "MQDCONNECTQ" USING MQD-SYSADDR MQD-QUENAME MQD-ENVIRONMENT MQD-QUEADDR. ・ ・ * トランザクションの開始(ここから) CALL "MQDGETMSG" USING MQD-QUEADDR MQD-RCVMODE MQD-MESSAGEHEADER MQD-MSGBODY MQD-BODYLEN MQD-ENVIRONMENT MQD-RESULT. EXEC SQL SELECT 在庫数量 ・・ END-EXEC. ・ ・ EXEC SQL UPDATE 在庫数量 ・・ END-EXEC. CALL "MQDPUTMSG" USING MQD-QUEADDR MQD-UNITFLG MQD-MESSAGEHEADER MQD-MSGBODY MQD-ENVIRONMENT MQD-RESULT. ・ ・ EXEC SQL COMMIT END-EXEC. * トランザクションの終了(ここまで) ・ ・ CALL "MQDDISCONNECT" USING MQD-SYSADDR MQD-ENVIRONMENT MQD-RESULT. EXEC SQL DISCONNECT CURRENT END-EXEC. |
目次
索引
![]() ![]() |