ビジネス機能テストシナリオのプロセス定義
SAP Readiness Validator の各ビジネス機能テストシナリオは、「SAP Readiness Validator での BusinessWorks プロセス定義」のテーブルにリストされているように、Windchill Enterprise Systems Integration EAI Windchill シミュレーションモジュール内で別個のプロセス定義として実現されています。これらの各プロセス定義は実際の Enterprise Systems Integration ビジネスロジックの API 呼び出しを正確に模倣しますが、たとえば、BAPI_TRANSACTION_ROLLBACK を使用せず、タイムアウトエラー発生時に API 呼び出しを再試行しないなど、一部の処理を簡素化します。例として、RV_Part_SAPCreate_PD という名前の "部品の作成/変更" プロセス定義を以下に示します。Windchill Enterprise Systems Integration の SAP API 呼び出しロジックの詳細については、Windchill Enterprise Systems Integration Installation and Configuration Guide およびこのドキュメントの「SAP API の説明と特性」のセクションを参照してください。
論理フロー
RV_Part_SAPCreate_PD という名前の "部品の作成" プロセス定義は、その実行をトリガーするために必要な Rendezvous メッセージを待機します。次に、このプロセスは、BAPI_MATERIAL_SAVEREPLICA の XML テストデータ入力を読み取り、BAPI を呼び出し、その呼び出しが技術的に成功したかと機能的に成功したかを判別します。エラーが発生した場合、このプロセスは終了します。エラーがない場合、このプロセスは BAPI_MATERIAL_SAVEREPLICA について同じ基本手順を繰り返します。技術的および機能的な成功と失敗は、共有 Logging_Service プロセスのインライン呼び出しによって TIBCO BusinessWorks プロセスエンジンのログに記録されます。プロセス定義を以下の図に示します。
"部品の作成/変更" プロセス定義 RV_Part_SAPCreateChange_PD
コンポーネント
以下のチャートでは、"部品の作成/変更" プロセス定義 RV_Part_SAPCreateChange_PD を構成する TIBCO BusinessWorks アクティビティと分岐条件について説明します。
アクティビティ名
入力
出力
依存
RVSubscriber_CreateChangePart_Part
[ドメイン].Create.Part というフォーマットの件名が付いた Rendezvous メッセージの受信
なし
プロセスの開始をトリガーするには、必要なフォーマットの件名が付いた Rendezvous メッセージを受信する必要があります
ReadFile_BAPI_MATERIAL_SAVEREPLICA
グローバル変数 ESIValidatorDirectory で指定されているパス内の BAPI_MATERIAL_SAVEREPLICA.xml という名前の UTF-8 エンコードデータファイル
ファイルのコンテンツを単一のテキスト文字列として
UTF-8 エンコーディングで存在するファイル
XMLParser_BAPI_MATERIAL_SAVEREPLICA
単一のテキスト文字列での、BAPI_MATERIAL_SAVEREPLICA.xml のコンテンツ
XML 構造での、BAPI_MATERIAL_SAVEREPLICA.xml のコンテンツ
/SharedConfigurations/ESISchemas/SAPInteractionSchemas/BAPI_MATERIAL_SAVEREPLICA にあるスキーマ
Invoke_BAPI_MATERIAL_SAVEREPLICA
BAPI_MATERIAL_SAVEREPLICA.xml の解析出力
BAPI_MATERIAL_SAVEREPLICA の実行からの SAP リターン構造
SAP Part Configuration Adapter Services にインポート (フェッチ) された BAPI_MATERIAL_SAVEREPLICA の構造
CallProcess_Logging_Service_BAPI_MATERIAL_SAVEREPLICA_TechnicalSuccess
Logging_Service プロセスの必須の入力パラメータ。
BusinessWorks プロセスエンジンのログに追加された、BAPI_MATERIAL_SAVEREPLICA の技術的な成功を示す行
なし
CallProcess_Logging_Service_BAPI_MATERIAL_SAVEREPLICA_TechnicalFailure
Logging_Service プロセスの必須の入力パラメータに加え、StackTrace
BusinessWorks プロセスエンジンのログに追加された、BAPI_MATERIAL_SAVEREPLICA の技術的な失敗を示す行
なし
Mapper_BAPI_MATERIAL_SAVEREPLICA_BAPI_MATERIAL_SAVEREPLICA_DetermineSuccess
BAPI_MATERIAL_SAVEREPLICA のリターン構造の "ID" および "NUMBER" パラメータ
BAPI_MATERIAL_SAVEREPLICA のリターン構造のコンテンツに応じて、変数 CreatePartSuccess = "true" または "false"。ID="MM" かつ "NUMBER"=356 の場合にのみ、機能的な成功が確立されます。
BAPI_MATERIAL_SAVEREPLICA の呼び出しが技術的な成功であった
CallProcess_Logging_Service_BAPI_MATERIAL_SAVEREPLICA_FunctionalSuccessFailure
Logging_Service プロセスの必須入力パラメータに加え、API リターン構造フィールド TYPE、ID、MESSAGE、および NUMBER。機能的な成功または失敗は、変数 CreatePartSuccess の値によって示されます。
BusinessWorks プロセスエンジンのログに追加された、BAPI_MATERIAL_SAVEREPLICA の機能的な成功または失敗を示す行
変数 CreatePartSuccess の値は "true" または "false" でなければなりません
ReadFile_BAPI_TRANSACTION_COMMIT
グローバル変数 ESIValidatorDirectory で指定されているパス内の BAPI_TRANSACTION_COMMIT.xml という名前の UTF-8 エンコードデータファイル
ファイルのコンテンツを単一のテキスト文字列として
UTF-8 エンコーディングで存在するファイル
XMLParser_BAPI_TRANSACTION_COMMIT
単一のテキスト文字列での、BAPI_TRANSACTION_COMMIT.xml のコンテンツ
XML 構造での、BAPI_TRANSACTION_COMMIT.xml のコンテンツ
/SharedConfigurations/ESISchemas/SAPInteractionSchemas/BAPI_TRANSACTION_COMMIT にあるスキーマ
Invoke_BAPI_TRANSACTION_COMMIT
BAPI_TRANSACTION_COMMIT.xml の解析出力
BAPI_TRANSACTION_COMMIT の実行からの SAP リターン構造
SAP Part Configuration Adapter Services にインポート (フェッチ) された BAPI_TRANSACTION_COMMIT の構造
CallProcess_Logging_Service_BAPI_TRANSACTION_COMMIT_TechnicalSuccess
Logging_Service プロセスの必須の入力パラメータ。
BusinessWorks プロセスエンジンのログに追加された、BAPI_TRANSACTION_COMMIT の技術的な成功を示す行
なし
CallProcess_Logging_Service_BAPI_TRANSACTION_COMMIT_TechnicalFailure
Logging_Service プロセスの必須の入力パラメータに加え、StackTrace
BusinessWorks プロセスエンジンのログに追加された、BAPI_TRANSACTION_COMMIT の技術的な失敗を示す行
なし
CallProcess_Logging_Service_BAPI_TRANSACTION_COMMIT_FunctionalSuccess
Logging_Service プロセスの必須入力パラメータに加え、API リターン構造フィールド TYPE、ID、MESSAGE、および NUMBER。
BusinessWorks プロセスエンジンのログに追加された、BAPI_TRANSACTION_COMMIT の機能的な成功を示す行
なし
End
なし
なし
なし
Invoke_BAPI_MATERIAL_SAVEREPLICA
BAPI_MATERIAL_SAVEREPLICA の呼び出しで技術的なエラーが発生しなかった場合
CallProcess_Logging_Service_BAPI_MATERIAL_SAVEREPLICA_TechnicalSuccess
CallProcess_Logging_Service_BAPI_MATERIAL_SAVEREPLICA_TechnicalFailure
分岐の詳細は次のとおりです。
アクティビティからの分岐
条件
True の場合の分岐先
False の場合の分岐先
コメント
Invoke_BAPI_MATERIAL_SAVEREPLICA
BAPI_MATERIAL_SAVEREPLICA の呼び出しで技術的なエラーが発生しなかった場合
CallProcess_Logging_Service_BAPI_MATERIAL_SAVEREPLICA_TechnicalSuccess
CallProcess_Logging_Service_BAPI_MATERIAL_SAVEREPLICA_TechnicalFailure
標準エラー分岐条件では、タイムアウトなど、API 呼び出しの技術的エラーが自動的に検出されます。
CallProcess_Logging_Service_BAPI_MATERIAL_SAVEREPLICA_FunctionalSuccessFailure
CreatePartSuccess = "false" の場合
End
ReadFile_BAPI_TRANSACTION_COMMIT
BAPI_MATERIAL_SAVEREPLICA の機能的な成功に基づいてこのプロセスを続行するかどうかを決定します
Invoke_BAPI_TRANSACTION_COMMIT_BAPI_MATERIAL_SAVEREPLICA
BAPI_TRANSACTION_COMMIT の呼び出しで技術的なエラーが発生しなかった場合
CallProcess_BAPI_TRANSACTION_COMMIT_TechnicalSuccess
CallProcess_Logging_Service_BAPI_TRANSACTION_COMMIT_TechnicalFailure
標準エラー分岐条件では、タイムアウトなど、API 呼び出しの技術的エラーが自動的に検出されます。
"部品の作成" プロセス定義のコンポーネント
これは役に立ちましたか?