実行待ちのアウトバウンド・ドキュメントの登録

LANSA Composer

実行待ちのアウトバウンド・ドキュメントの登録


通常ユーザーのアプリケーション内で注文書の入力や、販売注文の発注等のイベントが発生すると、取引先へのアウトバウンドのトランザクション・ドキュメントの作成・送信が必要になります。

このようなイベントが発生すると、ユーザーのアプリケーションではLANSA Composerトランザクション・ドキュメント処理フレームに通知し、引き続きLANSA Composerがアウトバウンド・ドキュメントを生成して送信できるようにしないといけません。

これは、アプリケーション内で実行待ちのアウトバンド・トランザクション・ドキュメントを登録することで可能となります。これにより、アウトバウンド処理は実行待ちのアウトバウンドのドキュメントを検知し、処理します。

実行待ちのトランザクション・ドキュメントを登録する方法には以下の3通りがあります。

TXDOC_REGOUTBNDアクティビティを利用して実行待ちのアウトバウンド・ドキュメントを登録

LANSAファンクションAPIを利用して実行待ちのアウトバウンド・ドキュメントを登録

LANSAコンポーネントAPIを利用して実行待ちのアウトバウンド・ドキュメントを登録

 

TXDOC_REGOUTBNDアクティビティを利用して実行待ちのアウトバウンド・ドキュメントを登録

一番単純なケースとしては、既存のLANSA Composer処理シーケンスの責任範囲内に、アウトバウンドのトランザクション・ドキュメントの生成・送信が必要となるイベントが存在する場合です。このイベントでは、提供されたTXDOC_REGOUTBNDアクティビティをユーザーの処理内で使用すれば、実行待ちのアウトバウンドのトランザクション・ドキュメントが登録でき、プログラムを作成する必要もありません。

このアクティビティに関する詳細は、TXDOC_REGOUTBNDを参照してください。

 

LANSAファンクションAPIを利用して実行待ちのアウトバウンド・ドキュメントを登録

注: このセクションは、適用されるLANSA開発技術の十分な知識があるという前提で書かれています。LANSAによるアプリケーション開発に関する詳細はLANSA製品のドキュメントを参照してください。

LANSA ComposerではDXXREGOファンクションが提供され、LANSAアプリケーションの実行待ちのアウトバウンドのトランザクション・ドキュメントを登録できます。

  • ユーザーのLANSAアプリケーションで、PROCESS(*DIRECT)でCALL RDMLコマンドを使用してDXXREGOを呼び出します。
  • ユーザー作成のアプリケーションでは、LANSA交換リストを使用して、以下の必要な変数情報を引き渡すことが可能です。

 

名前

説明

タイプ

DXTPII

取引先の内部または外部ID

A(32)

DXXDCTID
DXXDSTID
DXXDSTVR
または
DXXDSTII


ドキュメント・タイプ名
ドキュメント標準名
ドキュメント標準バージョン

ドキュメント標準内部ID


A(15)
A(15)
A(15)

A(32)

DXXTRNTYP

トランザクションID (例: '850', 'INVOIC')

A(6)

DXXTEST

実稼働(P)またはテスト(T)

A(1)

DXXKEY01

ステージング・ファイル・キー 1 (例: 会社コード)

A(32)

DXXKEY02

ステージング・ファイル・キー 2 (例: 部門コード)

A(32)

DXXKEY03

ステージング・ファイル・キー 3 (例: 部門コード)

A(32)

DXXKEY04

ステージング・ファイル・キー 4 (例: 請求書番号)

A(32)

DXXKEY05

ステージング・ファイル・キー 5 (例: その他)

A(32)

DXXKEY06

ステージング・ファイル・キー 6 (例: その他)

A(32)

 

 

  • ユーザー作成のアプリケーションは、以下の交換リスト経由で要求結果を受信できます。

名前

説明

タイプ

DXRESULT

戻りコード(OK、ER)

A(2)

DXXENVID

トランザクション・ドキュメント・エンベロープID

S(9, 0)

 

  

注: LANSA Composer開発パッケージをVisual LANSA開発環境にインポートした場合は、上記のフィールドの定義はLANSAリポジトリに既に存在します。

LANSAコンポーネントAPIを利用して実行待ちのアウトバウンド・ドキュメントを登録

注: このセクションは、適用されるLANSA開発技術の十分な知識があるという前提で書かれています。LANSAによるアプリケーション開発に関する詳細はLANSA製品のドキュメントを参照してください。

LANSA Composerでは再利用可能パーツ、DXXREGOUTが用意されており、コンポーネント・ベースのLANSAアプリケーションからの実行待ちのアウトバウンドのトランザクション・ドキュメントのための複数のインターフェイスを提供します。

アプリケーションでは、次の2つのインターフェイスのいずれかを選択できます。

1.  dxSimpleDocumentメソッドにより、アプリケーション内の1回の呼び出しで、1つの交換、グループ、そしてトランザクション・メッセージを含む単一のドキュメント・エンベロープを作成し、登録することができます。

 

2.  もしくは、メソッド一式を使用することで、より複雑な複数の交換、グループ、そしてトランザクション・メッセージを含むトランザクション・ドキュメントを作成し、登録することができます。  

dxNewDocument1 または dxNewDocument2

dxNewInterchange   (オプション)

dxNewGroup            (オプション)

dxNewMessage   

dxRegisterDocument   

 

いずれのインターフェイス・スタイルを使用しても、アプリケーションでは次のようなイベント操作を選択することが可能です。

dxValidationError   

dxPreInsert2IN   

dxPreInsert3GP   

dxPreInsert4MS  

 

最後の3つのイベントでは、APIにより生成されたトランザクション・データをトランザクション・ドキュメントのデータベースに書き込む前に、カスタマイズすることも可能です。

注: LANSA Composer開発パッケージをVisual LANSA開発環境にインポートすると、Visual LANSA IDE内の機能ヘルプが利用でき、DXXREGOUTコンポーネントにより提供されるこれらのメソッドやイベントの詳細を確認できます。