ベンダー・マスター・データは、企業内の調達機能および会計機能にとって不可欠です。一般的な購買ビジネス・プロセスでは、まず最初に購買要求を作成し、次にこの購買要求をMRP (Materials Resource Planning) を実行して送信します。その購買要求に対してベンダーが選択され、これらのベンダーは次に購入注文 (PO: Purchase Order) に統合されます。これらの購入注文が承認されると、注文処理のためにベンダーに送信されます。
ベンダーは購入注文では、「Supplier (供給業者)」エンティティーを表す正規のエンティティーとして参照されます。ベンダーは、顧客と同様に、自分自身または他のベンダーの必要を満たすパートナーの機能や役割も果たします。ベンダーは、以下の機能を果たすことができます。
VendorSync コラボレーション・テンプレートは、Vendor Manager コラボレーション・オブジェクト・グループを構成する他のコラボレーションとともに、ベンダー情報を保守および同期するための共通プロセスを指定します。このプロセスは、重複エントリーなしでもソース・アプリケーションと宛先アプリケーションの両方で複写情報の正確性を保証することにより、ベンダー情報を組織全体で共通に表示できるようにします。
Vendor Manager コラボレーション・オブジェクト・グループは、カスタマー・インタラクション・マネージメント (CIM) アプリケーションとエンタープライズ・リソース・プランニング (ERP) アプリケーションとの間でベンダー情報を同期します。これらのタイプのアプリケーションの一方が同期された情報のソースとなり、他方が宛先となります。
ベンダー情報は多くの場合、Requisition Processing (要求処理) で参照される基本 Vendor を最上位とする階層内に保管されます。Invoicing (送り状作成) データや Supplier (提供業者) データなどの補助的なベンダー情報は、基本 Vendor に関連付けられて保管されます。
IBM WebSphere Business InterChange Server は、基本 Vendor に関するデータを汎用 Vendor ビジネス・オブジェクトに保管します。関連する Vendor や住所に関するデータは、汎用 VendorPartner ビジネス・オブジェクトに保管されます。また IBM WebSphere Business InterChange Server は、Vendor ビジネス・オブジェクトを使用して、基本 Vendor とそれに関連付けられた各 Vendor の関係も保管します。
Vendor Manager コラボレーション・オブジェクト・グループは、これら 2 つの汎用ビジネス・オブジェクトと 3 つのコラボレーションを使用して、基本 Vendor とそれらに関連付けられたデータを同期します。3 つのコラボレーションは、次のとおりです。
VendorSync は、汎用の Vendor ビジネス・オブジェクトを使用して、基本 Vendor およびそれと関連する各 Vendor との関係を同期します。コラボレーションは、基本 Vendor に関連付けられたすべてのベンダー・データを同期または検証するように構成できます (VERIFY_SYNC_VENDORPARTNERS)。そのように構成した場合、VendorSync は関連した各 Vendor または住所に対して汎用の VendorPartner ビジネス・オブジェクトを作成し、それを VendorPartnerWrapper コラボレーションに送信します。VERIFY_SYNC_VENDORPARTNERS プロパティーの値は、VendorSync が、同期を指定する Sync 動詞と検証を指定する Exists 動詞のいずれとともに VendorPartner を送信するかを決定します。
また VendorSync の別の構成プロパティー (SYNC_PARENT_FIRST) は、コラボレーションが、基本 Vendor を同期する前に関連した Vendor の同期を行うか、基本 Vendor を同期した後に行うかを決定します。この選択は、宛先アプリケーションがデータを保管する方法に依存します。保管オプションには、次の 2 種類があります。
一部のアプリケーション (例えば Baan、Oracle、および Vantive) では、関係は子レベルで (つまり VendorPartner 役割において) 保管されます。VendorPartner データは、その親である基本レコードと独立には存在せず、また複数の基本 Vendor に関連付けることはできません。基本 Vendor は、これらの関連レコードが作成される前に存在している必要があります。
例えば、VendorSync が Oracle に宛先アプリケーションとしてバインドされている場合、SYNC_PARENT_FIRST を「true」に設定すると、コラボレーションは以下の動作を実行します。
注: IBM WebSphere Business InterChange Server は、子へのリンクを親 (汎用 Vendor) ビジネス・オブジェクトに保管するため、以下の点に注意する必要があります。
一部のアプリケーション (例えば Clarify、PeopleSoft、および SAP) では、基本 Vendor とそれに関連付けられた Vendor との関係は、親レベルで保管されます。これらのアプリケーションは、Vendor に関連付けられた VendorPartner データ (例えば Invoicing Vendor や Supplier Vendor) を、独立のオブジェクトとして保管します。これらのオブジェクトは、親である主 Vendor ビジネス・オブジェクトとは独立に存在し、また複数の基本 Vendor に関連付けることができます。これらの関連 VendorPartner は、基本 Vendor が作成される前に存在している必要があります。
例えば、VendorSync が SAP を宛先アプリケーションとしてバインドされている場合、SYNC_PARENT_FIRST を「false」に設定すると、このコラボレーションは次のように動作します。
注: IBM WebSphere Business InterChange Server では、基本 Vendor は別の基本 Vendor の VendorPartner となることはできません。そのため、この関係が許容されるアプリケーションでも、基本 Vendor を別の基本 Vendor の Invoicing VendorPartner にするには、カスタマイズが必要となる場合があります。
VendorSync の構成プロパティー全体の詳細については、『構成プロパティー』を参照してください。
VendorPartnerSync は、宛先アプリケーション内の VendorPartner を同期します。VendorPartnerSync は VendorSync とは独立に実行できます。その場合、これはソース・アプリケーションによって直接起動されます。VendorSync によって起動された場合、VendorPartnerSync はその VendorSync に対して状況を戻します。
VendorPartnerSync の構成オプションについては、『構成プロパティー設定のチェックリスト』を参照してください。
VendorPartnerWrapper は、関連付けられたベンダーのデータが宛先アプリケーションに存在するかどうかを検証したり、それらのデータを宛先で同期したりします。
どちらの場合も、VendorPartnerWrapper は状況を呼び出しコラボレーションへ戻します。
VendorPartnerWrapper の構成オプションについては、『構成プロパティー設定のチェックリスト』を参照してください。
場合によっては、Vendor Manager コラボレーション・オブジェクト・グループを実行するには、複数のコラボレーション・オブジェクトを構成および実行する必要があります。例えば、基本 Vendor のデータだけでなく、関連付けられたベンダーのデータも同期するように VendorSync を構成する場合がそれに当たります。また、インストールしたシステムで、関連ベンダーのデータを基本 Vendor とは独立に同期する場合も同様です。
インストールしたシステムでは、以下のコラボレーション・オブジェクトが必要になります。
コラボレーション・オブジェクト | 説明 |
---|---|
VendorSync | ソース・アプリケーションは、VendorSync コラボレーション・オブジェクトによって処理される Vendor 同期イベントを起動します。VendorSync は、Vendor ビジネス・オブジェクトから、各関連ベンダー・パートナーの固有キーを取得します。コラボレーションは、各関連ベンダー・パートナーについて、参照値の VendorPartner ビジネス・オブジェクトを作成します (固有キーのみを取り込みます)。次に VendorSync は VendorPartnerWrapper コラボレーション・オブジェクトを呼び出し、宛先アプリケーションでこの VendorPartner を同期します。 |
VendorPartnerWrapper | VendorSync に呼び出されて、VendorPartnerWrapper はソース・アプリケーションから完全な VendorPartner ビジネス・オブジェクトを検索し、それを Create 動詞とともに VendorPartnerSync コラボレーション・オブジェクトに送信します。 |
VendorPartnerSync | VendorPartnerWrapper (これに対してはその From ポートがバインドされている) から呼び出されて、VendorPartnerSync は宛先アプリケーションで VendorPartner を同期します。 |
VendorPartnerSync | ソース・アプリケーションは、第 2 の VendorPartnerSync コラボレーション・オブジェクトによって処理される VendorPartner 同期イベントを起動します。このコラボレーション・オブジェクトの From ポートは、ソース・アプリケーションに直接バインドされています。このコラボレーションは VendorPartner を、それらが関連付けられている基本 Vendor とは独立して同期します。 |
図 1 は、上記のシナリオに必要なコラボレーションと汎用ビジネス・オブジェクトを示します。立体のオブジェクトは、ビジネス・オブジェクトを表します。長円は、コラボレーション・オブジェクトを表します。
図 1. 使用例に必要なコラボレーションの関係
注: ユーザー独自の要件および条件を指定するには、グループ内のコラボレーション・オブジェクトを別途構成する必要があります。詳しくは、『構成プロパティー設定のチェックリスト』を参照してください。
この節では、ポート・バインディングについて説明し、VendorSync に基づくコラボレーション・オブジェクトをセットアップするために必要なステップを説明します。コラボレーション・テンプレートの標準の機能、ポート、および構成プロパティーについて、およびコラボレーション・オブジェクト作成に関する一般情報については、『Required Documents for Creating Collaboration Objects』にリストされている文書を参照してください。
図 2 に、System Manager で表示される VendorSync のポートを示します。各ポートについての情報は、後続の表に示します。
図 2. VendorSync コラボレーションのポート
注: コラボレーション・オブジェクトでポートを使用しないようにするには、そのポートをポート・コネクターにバインドしてください。これにより、コラボレーション・オブジェクトが追加機能を提供せずに、そのポートは未使用として示されます。
ビジネス・オブジェクト | バインド先 | 機能 | 使用される動詞 |
---|---|---|---|
Vendor | 宛先アプリケーションのコネクター | 参照値のビジネス・オブジェクトを送信して、完全な値のビジネス・オブジェクトを検索します。その結果により、Vendor を同期する際に使用される動詞が決定されます。 |
Retrieve |
ビジネス・オブジェクト | バインド先 | 機能 | 使用される動詞 |
---|---|---|---|
Vendor | ソース・アプリケーションのコネクター、または呼び出し側コラボレーション | トリガー・ビジネス・オブジェクトを受け取ります。コラボレーションが正常に終了した場合、このポートは、同期呼び出しの最後に、トリガー・ビジネス・オブジェクトをソース・アプリケーションに戻します。 |
Create Retrieve Update Delete |
ビジネス・オブジェクト | バインド先 | 機能 | 使用される動詞 |
---|---|---|---|
Vendor | 宛先アプリケーションのコネクター |
トリガー・ビジネス・オブジェクトをコラボレーションから送信します。 注: このコラボレーションは Create および Update 動詞のみをサポートするように設計されましたが、標準の Delete 動詞も備えています。Vendor ビジネス・オブジェクトを Delete 動詞を使用して起動する前に、宛先アプリケーションが Vendor を処理できるかどうかを検証してください。 |
Delete Create Update Delete |
ビジネス・オブジェクト | バインド先 | 機能 | 使用される動詞 |
---|---|---|---|
VendorPartner |
|
参照値の VendorPartner ビジネス・オブジェクトを VendorPartnerWrapper コラボレーションに送信するために使用します。
|
Sync Exists |
VendorSync をスタンドアロンのコラボレーション・オブジェクトとしてセットアップするには、以下の手順に従ってください。
関連する VendorPartner を VendorSync プロセスの一部として検証または同期するために、以下のコラボレーション・オブジェクト・グループの任意の組み合わせを作成できます。
検証 同期 必要なコラボレーション VendorPartner VendorSync、VendorPartnerWrapper VendorPartner VendorSync、VendorPartnerWrapper、VendorPartnerSync
以下のステップでは、セットアップの手順を説明し、VendorPartner の検証または同期を処理するための代替のステップを示します。
この節では、このコラボレーション・テンプレートのプロセス・ロジックについて説明します。
図 3 に、VendorSync のプロセス・ロジックを示します。
図 3. VendorSync コラボレーションのプロセス・ロジック
このコラボレーション・テンプレートでは、以下の標準コラボレーション・ビジネス・プロセスが使用されます。
これらのビジネス・プロセスについては、『Required Documents for Creating Collaboration Objects』を参照してください。
図 4 に、VendorSync の Create および Update プロセスを示します。
図 4. VendorSync コラボレーションの Create および Update プロセス
注:
VendorSync は VendorPartnerWrapper を使用して、VendorPartner ビジネス・オブジェクトを VendorPartnerSync に送信します。Wrapper コラボレーションもこのビジネス・オブジェクトを動詞 Create とともに送信します。宛先アプリケーションに当該のビジネス・オブジェクトがすでに存在する場合、VendorPartnerSync が Create を Update に変換するようにするには、その CONVERT_CREATE プロパティーを「true」に設定します。
VendorSync が Vendor ビジネス・オブジェクトを Update 動詞とともに宛先に送信する場合、同期により VendorPartner との関係 が更新されますが、この同期によって VendorPartner が実際に作成、更新、または削除されるわけではありません。
例えば、Vendor が VendorPartner への参照を削除する場合、アプリケーションは VendorPartner を (物理的にも論理的にも) 削除しません。アプリケーションは、単純に VendorPartner への参照を除去します。つまり、VendorPartner を除去することなく、VendorPartner への関係を除去します。
図 5 に、VendorSync によって同期された Vendor No.100 のデータを示します。ソース・アプリケーションと宛先アプリケーションの両方に、同じ 3 つの VendorPartner が関連付けられた、同一の基本 Vendor が含まれています。
図 5. VendorPartner への参照を削除する前の Vendor データ
図 6 に、ソース・アプリケーションが関連 VendorPartner の 1 つを削除した後の、同じ基本 Vendor を示します。子ビジネス・オブジェクトが削除されると、ソース・コネクターは Vendor ビジネス・オブジェクトを Update 動詞とともに VendorSync に送信します。この図は、宛先アプリケーションが関連 VendorPartner への参照を除去する前の、VendorSync が宛先アプリケーションに送信する時点での Vendor ビジネス・オブジェクトの状態を示しています。
図 6. ソース・アプリケーションが VendorPartner への参照を削除した後の Vendor データ
図 7 に、宛先アプリケーションで関連 VendorPartner への参照が削除された後の Vendor ビジネス・オブジェクトの状態を示します。
図 7. 宛先アプリケーションで同期された後の Vendor データ
InterChange Server は、トランザクション・コラボレーションのいずれかのステップで失敗が発生した場合、トランザクションをロールバックできます。例えば、VendorSync がトランザクションのコラボレーションに参加するコラボレーション・オブジェクト・グループのメンバーである場合、VendorSync のアクションは、より大きなトランザクションの 1 つのサブトランザクション・ステップとなります。コラボレーション・オブジェクト・グループのビジネス・プロセスでいずれかのステップが失敗すると、トランザクション・コラボレーションは InterChange Server がグループ内のコラボレーションの処理をどのようにロールバックすればよいか明示します。
VendorSync コラボレーション・オブジェクトをほかのコラボレーション・オブジェクトと無関係に使用する場合、または From ポートを別のコラボレーションではなくソース・アプリケーションにバインドする場合、そのプロセスを構成するトランザクション・ステップは 1 つのみになります。このような場合には、ロールバックを実行する必要はありません。
1 つのコラボレーション・オブジェクト、またはコラボレーション・オブジェクト・グループにロールバックを実行させるには、コラボレーション・テンプレートを変更する必要があります。WebSphere Business Integration システムにおけるトランザクション処理を理解するためには、「テクニカル入門 (IBM WebSphere InterChange Server)」を参照してください。コラボレーション・テンプレートへのトランザクション処理の追加については、『Required Documents for Creating Collaboration Objects』を参照してください。
トランザクション処理を実行できるようにコラボレーション・オブジェクトを拡張するには、以下の手順を完了します。
この節では、次の項目を説明します。
Vendor Manager コラボレーション・オブジェクト・グループは 3 つのコラボレーションに相当するため、望ましい振る舞いを実現するには、すべてのコラボレーションを構成することが重要です。以下のチェックリストは、3 つすべてのコラボレーションに関する構成プロパティーを指定します。
ゴール | プロパティー | 設定 |
---|---|---|
宛先アプリケーションから Vendor を、同期を試行する前に検索します。 | USE_RETRIEVE | 「true」 |
宛先アプリケーションで基本 Vendor を、関連 Vendor または住所を作成する前に作成します。 | SYNC_PARENT_FIRST | 「true」 |
トリガーとなる基本 Vendor に関連付けられた Vendor または住所を検証します。 | VERIFY_SYNC_VENDORPARTNERS | 「verify」 |
トリガーとなる基本 Vendor に関連付けられた Vendor または住所を同期します。 | VERIFY_SYNC_VENDORPARTNERS | 「sync」 |
VendorSync のトリガー・ビジネス・オブジェクトが宛先に存在する場合に、Create 要求を Update 要求に変換します。 | CONVERT_CREATE | 「true」 |
VendorSync のトリガー・ビジネス・オブジェクトが宛先に存在しない場合に、Update 要求を Create 要求に変換します。 | CONVERT_UPDATE | 「true」 |
ゴール | プロパティー | 設定 |
---|---|---|
宛先アプリケーションから VendorPartner を、同期を試行する前に検索します。 | USE_RETRIEVE | 「true」 |
VendorPartnerSync のトリガー・ビジネス・オブジェクトが宛先に存在する場合に、Create 要求を Update 要求に変換します。 | CONVERT_CREATE | 「true」 |
VendorPartnerSync のトリガー・ビジネス・オブジェクトが宛先に存在しない場合に、Update 要求を Create 要求に変換します。 | CONVERT_UPDATE | 「true」 |
ゴール | プロパティー | 設定 |
---|---|---|
関連ベンダーのデータの検証または同期が失敗した場合に、VendorPartnerWrapper および VendorPartnerWrapper コラボレーションが警告を記録し、呼び出し側のコラボレーションに成功状況を戻すように指定します。 | CONTINUE_WITH_WARNING | 「true」 |
この節では、このコラボレーション・テンプレートの標準プロパティーおよび固有のプロパティーについて説明します。
このコラボレーション・テンプレートでは、以下のコラボレーション・テンプレートの標準構成プロパティーを使用します。
これらの構成プロパティーについては、『Required Documents for Creating Collaboration Objects』を参照してください。
このコラボレーション・テンプレートには、標準構成プロパティーに加えて、以下に示す構成プロパティーがあります。
プロパティー名とその説明 | 可能な値 | デフォルト値 |
---|---|---|
SYNC_PARENT_FIRST VendorSync が宛先アプリケーションで、関連ベンダーまたは住所 (VendorPartner) を作成する前に基本 Vendor (親ビジネス・オブジェクト) を作成するようにするには、「true」に設定します。この設定は、宛先アプリケーションがベンダー・パートナーを再利用しない場合、つまりアプリケーションが親/子関係を子に保管する場合に使用します。この場合、アプリケーションは VendorPartner ビジネス・オブジェクトを作成する前に Vendor を作成しておく必要があります。 VendorSync が宛先アプリケーションで、基本 Vendor (親ビジネス・オブジェクト) を作成する前に関連ベンダーまたは住所 (VendorPartner) を作成するようにするには、「false」に設定します。この設定は、宛先アプリケーションがベンダー・パートナーを再利用する場合、つまりアプリケーションが親/子関係を親に保管する場合に使用します。この場合、アプリケーションは Vendor ビジネス・オブジェクトを作成する前に VendorPartner を作成しておく必要があります。 |
true、false | false |
VERIFY_SYNC_VENDORPARTNERS 「neither」に指定すると、このコラボレーションがトリガー・ビジネス・オブジェクトを同期するときに、宛先アプリケーション内の関連する VendorPartner を最初に同期することはありません。 このコラボレーションが、基本ベンダーに関連付けて保管している補助的なベンダー情報を同期するようにするには、「sync」に設定します。コラボレーションは、以下のステップを実行します。
このコラボレーションが、宛先アプリケーションで関連 VendorPartner を検証するようにするには、「verify」に設定します。コラボレーションは、以下のステップを実行します。
注: VendorSync のメッセージの内容については、以下のコラボレーション・メッセージ・ファイル (\collaborations\messages\VendorSync.txt) を参照してください。 |
sync、verify、neither |
neither |
このコラボレーション・テンプレートのメッセージの説明を表示するには、Log Viewer を起動し、コラボレーション・テンプレートのメッセージ・ファイルを開いてください。Log Viewer を起動してコラボレーション・テンプレートのメッセージ・ファイルを開くには、以下の手順に従います。
このコラボレーション・テンプレートのより新しいバージョンにアップグレードするには、以下の手順を行います。