| 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.
|
目次
索引
![]()
|