ビジネス・オブジェクト定義の生成

このセクションでは、Business Object Designer Express 内で JD Edwards OneWorld ODA を使用してビジネス・オブジェクト定義を生成する方法を説明します。Business Object Designer Express の起動および使用については、「ビジネス・オブジェクト開発ガイド」を参照してください。

ODA の始動

Windows での ODA の始動

ODA は、Windows の start_OneWorld0DA.bat で、メタデータ・リポジトリー (すなわち、IDL ファイル) が存在するファイル・システムを マウント可能な任意のマシンから実行できます。この始動ファイルには、必要な OneWorld .jar ファイルおよび Connector .jar ファイルへのパスなどの始動パラメーターが記述されています。

OneWorld 対応の ODA のデフォルト名は、OneWorldODA です。この名前は、始動スクリプト (start_OneWorldODA.bat) 内の AGENTNAME を変更することによって変更できます。

ODA を始動するには、次のコマンドを実行します。

start_OneWorldODA

i5/OS での ODA の始動

ODA を始動するには、 /QIBM/UserData/WBIServer43/<instance_name>/ODA/OneWorld/ start_OneWorldODA.sh の ODA 始動スクリプトを変更する必要があります。

JAR_DIR ディレクトリーを設定する行は、Kernel.jar と Connector.jar がコピーされた場所に変更する必要があります。

JD Edwards Oneworld からコピーされた JAR ファイルのパスを入力します。

i5/OS で ODA を始動するには、次のいずれかの方法を使用します。

Business Object Designer Express の実行

Business Object Designer Express では、ODA を使用してビジネス・オブジェクト定義を生成するステップをユーザーに示すウィザードを提供しています。以下に示すステップがあります。

エージェントの選択

  1. Business Object Designer Express 始動します。
  2. 「ファイル」>「ODA を使用して新規作成」 をクリックします。「ビジネス・オブジェクト・ウィザード - ステップ 1/6 - エージェントの選択」画面が表示されます。
  3. 「検索されたエージェント」リストで ODA/AGENTNAME (start_OneWorldODA スクリプトから) を選択し、「次へ」をクリックします。(必要なエージェントがリストされていない場合は「エージェントの検索」 をクリックする必要があります。)
    図 5. 「エージェントの選択」画面

エージェントの構成

「次へ」をクリックすると、「ビジネス・オブジェクト・ウィザード - ステップ 2/6 - エージェントの構成」画面が表示されます。図 6 では、この画面をサンプル値とともに示しています。

図 6. 「エージェントの構成」画面

この画面で設定するプロパティーを、表 3 で説明します。この画面で入力したすべての値をプロファイルに保管することができます。次回 ODA を実行するときに、プロパティー・データを再入力しなくても、ドロップダウン・メニューからプロファイルを選択するだけで、保管された値を再利用できます。それぞれ指定された値の組み合わせが異なる複数のプロファイルを保管することも可能です。

表 3. 「エージェントの構成」プロパティー
プロパティー名 デフォルト値 タイプ 説明
BOPrefix なし String ODA が、生成するビジネス・オブジェクトの名前の前に付加するプレフィックス。
Environment なし String OneWorld への接続に使用する環境。
JarFileDirectory なし String (必須) .jar ファイルが配置されているディレクトリー。アダプターを使用して起動する必要のあるビジネス関数を含む .jar ファイルはすべて、このディレクトリーに配置しなければなりません。
NameOfTables なし String ビジネス・オブジェクトを生成する対象となる、; で区切られた OneWorld のテーブル名 (例: F4211;f4210)。
Password なし String OneWorld への接続に使用するパスワード。
PortNo なし String JDE サーバーが実行しているポート番号。
Server なし String JDE が実行しているマシン名。
TraceFileName なし String トレース・メッセージ・ファイルの名前。例えば OneWorldODAtrace.txt など。
TraceLevel 5 Integer (必須) エージェントのトレース・レベル (0 から 5)。トレース・レベルの詳細については、トレースを参照してください。
MessageFile なし String (必須) ODA が表示するすべてのメッセージを記述したメッセージ・ファイルの名前。OneWorld の場合、このファイルの名前は BIA_OneWorldODAAgent.txt となります。メッセージ・ファイルの名前を正しく指定しなかった場合、ODA はエラーを生成します。
UserName なし String OneWorld への接続に使用するユーザー名。

  1. ODA で新規プロファイルを作成したい場合は、任意の時点で、「プロファイル」グループ・ボックス内の「新規」ボタンおよび「保管」ボタンを使用します。ODA を再び使用するときには、既存のプロファイルを選択することができます。
  2. 表 3 に定義されているように、各プロパティーの値を入力します。
    注:
    プロファイルを使用する場合、プロパティー値はプロファイルから取り込まれますが、必要に応じて値を変更することができます。新規の値を保管することも可能です。

ビジネス・オブジェクトの選択

図 7 に示すように、「ビジネス・オブジェクト・ウィザード - ステップ 3/6 - ソースの選択」画面が表示されます。

生成するオブジェクトの選択に関連する規則を以下にリストします。

この画面にリストされる OneWorld オブジェクトの中で、上位オブジェクトの子オブジェクトであるものを判別するには、オリジナルの GenJava ファイルを参照してください。また、この画面にリストされるすべての OneWorld オブジェクトを選択して、それぞれに対応するオブジェクトを生成することもできます。生成されたビジネス・オブジェクトは、親子関係を反映します。

図 7. 「ソースの選択」画面

ODA により、2 つのオプション 「ビジネス関数 (Business Functions) 」および 「XML BO (XML BOs)」がツリー・ノードとして表示されます。「ビジネス関数 (Business Functions)」をクリックすると、.jar ファイル形式の OneWorld オブジェクトを含むツリーが JarFileDirectory 構成プロパティーで指定されたディレクトリーの下に表示されます。「ビジネス関数 (Business Functions)」に固有の情報については、ソース・ノードの選択を参照してください。

XML BO (XML BOs)」をクリックすると、ツリーの子ノードが表示されます。これらのツリーの子ノードは、ODA のプロパティー・ウィンドウで入力したテーブルの名前に対応します。リストされたテーブルから、生成するテーブルを選択できます。「XML BO (XML BOs)」に固有の情報については、XML ビジネス・オブジェクトを参照してください。

ビジネス・オブジェクトを生成するために、複数の .jar ファイルからオブジェクトを選択できます。オブジェクトを選択するには、「代わりにこのオブジェクトを使用」ボタンを使用します。標準のフィルター機能を使用すると、ツリーの子ノードの一部を選択できます。

  1. 必要であれば、OneWorld モジュールを展開して、サブオブジェクトのリストを表示します。
  2. 使用する OneWorld オブジェクトを選択します。
  3. 「次へ」をクリックします。

オブジェクト選択の確認

ビジネス・オブジェクト・ウィザード - ステップ 4/6 - ビジネス・オブジェクト定義のソース・ノードの確認」画面が表示されます。この画面には、選択したオブジェクトが表示されます。

ODA を用いて生成したビジネス・オブジェクトについては、ビジネス・オブジェクトを保管する前に、Business Object Designer Express 内でキー・フィールドに手動でマークを付ける必要があります。ODA は、属性をキー・フィールドとしてマーク付けすることはありません。あるビジネス・オブジェクトから別のビジネス・オブジェクトに値をマップすることを計画している場合は、外部キーにマークを付ける必要があります。ビジネス・オブジェクトの属性が、すでに処理済みのほかのビジネス・オブジェクトの値を必要とする場合は、ASI タグ use_attribute_value を属性 ASI に手動で追加する必要があります。

図 8. 「ソース・ノードの確認」画面

変更するには「戻る」をクリックし、リストが正しいことを確認するには「次へ」をクリックします。

ビジネス・オブジェクト・ウィザード - ステップ 5/6 - ビジネス・オブジェクトの生成中...」画面が表示され、そこに、ウィザードがビジネス・オブジェクトを生成していることを示すメッセージが表示されます。

ソース・ノードの選択

ビジネス関数ビジネス・オブジェクトと XML リスト・ビジネス・オブジェクトの両方を、ODA の 1 回の実行で生成できます。両方の種類のビジネス・オブジェクトの並列生成がサポートされます。

ビジネス関数

ビジネス関数ビジネス・オブジェクトを生成する場合、ODA では、選択されたすべてのクラスをロードしてイントロスペクトすることにより、OneWorld オブジェクト用のビジネス・オブジェクトを生成します。ODA は「BO プロパティー」ウィンドウを使用して、各 OneWorld オブジェクト用のユーザーの構成情報を取得します。

インターフェース・クラスにマップされるビジネス・オブジェクトのためのビジネス・オブジェクト・プロパティーのウィンドウは 2 種類あります。最初の「取り込み中 (Capturing)」ウィンドウでは、選択されたすべての OneWorld オブジェクトに対してサポートされる動詞を取り込みます。2 番目の「動詞 ASI のメソッド・シーケンスを取り込み中 (Capturing Method sequence for Verb ASI)」ウィンドウでは、各ビジネス・オブジェクトのそれぞれの動詞ごとにメソッド・シーケンスを取り込みます。データ構造ビジネス・オブジェクトの場合は、1 つのデフォルトの動詞 Execute が作成されますが、この動詞には ASI はありません。

OneWorld オブジェクトは、属性およびメソッドを持つことができます。ビジネス・オブジェクト定義の名前は、OneWorld オブジェクト名から派生し、これにビジネス・オブジェクト・プレフィックスが付加されます。同じデータ構造クラスを使用するビジネス関数が 2 つある場合、ODA では、ビジネス・オブジェクト ASI 内のビジネス関数名を除いては同じ構造を持つ複数の定義を生成します。ビジネス・オブジェクトの名前は、_1、_2... というように増分します。例えば、2 つの関数が D0100033 という名前を使用している場合、生成されるビジネス・オブジェクトは D0100033D0100033_1 です。

get/set メソッド

OneWorld データ構造オブジェクトの場合、get/set メソッドには対応するビジネス・オブジェクト属性があります。属性のタイプは type=<type> として ASI に保管され、属性の実際の名前は name=<name> として ASI に保管されます。1 つの get/set の組み合わせに対して、1 つの属性のみが生成されます。例えば、属性名が ID の場合、メソッドは getID() および setID() です。この場合、ビジネス・オブジェクトは、ID という名前で ASI が getter=getID();setter=setID() (type=int、name=ID) の 1 つの属性を持ちます。

ビジネス関数の属性

OneWorld のインターフェース Java クラスに定義されているそれぞれのビジネス関数ごとに、1 つの属性が作成されます。ビジネス関数呼び出しを適切に表現するため、この属性のタイプは、ビジネス関数呼び出しの入力パラメーターを表現する属性を含む子ビジネス・オブジェクトになります。属性の名前はビジネス・オブジェクトの名前になり、タイプはデータ構造ビジネス・オブジェクトの名前になります。属性は、タグ bfn_name= を使用してビジネス関数の名前を保持する ASI を持っています。

ビジネス関数のパラメーター

ビジネス関数の入力パラメーターは、属性として表現されます。あるパラメーターのデータ型が、WebSphere Business Integration フォーマットでサポートされないデータ型である場合、その型は「String」として表現されます。基本的に、パラメーターはデータ構造クラスに定義されている変数です。パラメーターの ASI には、元のデータ型の値と名前が保管されます。サポートされるパラメーターのリストについては、ビジネス・オブジェクト属性のタイプを参照してください。

OneWorld のオブジェクト・タイプ

GenJava を使用して生成される OneWorld の jar には、次の 2 種類の Java クラスがあります。

インターフェース・クラスにマップされるビジネス・オブジェクト

インターフェース・クラスにマップされるビジネス・オブジェクトのビジネス・オブジェクト情報を指定できます。ビジネス・オブジェクトの作成後に、そのオブジェクトで有効な動詞、オブジェクトでの指定された動詞のメソッド・シーケンス、ビジネス・オブジェクト・レベル ASI、および属性レベル ASI を指定することができます。このセクションでは、ODA を Business Object Designer Express とともに使用して、この情報を指定する方法を説明します。これらの情報のカテゴリーと、JD Edwards OneWorld コネクター内のビジネス・オブジェクト構造での役割の詳細については、ビジネス・オブジェクトの理解を参照してください。

動詞の選択

選択されたビジネス・オブジェクトが OneWorld のインターフェース・オブジェクトにマップされている場合、Business Object Designer Express で、ビジネス・オブジェクトの作成完了後に別個のウィンドウでそのビジネス・オブジェクトを開いたときに最初に表示される画面は、「BO プロパティー - コンポーネントの動詞を選択してください」画面です。図 9 は、AddressBook ビジネス・オブジェクトに対応するこの画面を示します。XML リストのビジネス関数にマップされるビジネス・オブジェクトの場合、単一の動詞 execute が作成されます。

図 9. 「コンポーネントの動詞を選択してください」画面

この画面では、ビジネス・オブジェクトがサポートする動詞を指定できます。動詞の名前を入力してそれらを「;」で区切ると、特定のビジネス・オブジェクトに必要な動詞を指定できます。動詞の名前は「ビジネス・オブジェクト開発ガイド」で指定されている命名規則に合っている必要があります。

WebSphere Business Integration で使用される標準の動詞は、CreateRetrieveDelete、および Update です。OneWorld コネクター用のビジネス・オブジェクト動詞 ASI の詳細については、動詞 ASIを参照してください。

動詞 ASI の指定

選択した動詞ごとに、ビジネス関数が動詞を実行する指定の順序で、個別のウィンドウが表示されます。

図 10 は、図 7 および 図 8 で作成した、「ビジネス関数 (Business Functions)」の下の AddressBook ビジネス・オブジェクトの Retrieve 動詞の画面を示しています。

図 10. 動詞メソッド・シーケンスの設定

MethodSequence プロパティーの「値」リストから、その動詞に関してビジネス・オブジェクトに最初に実行させたいメソッドを選択できます。図 10 では、メソッド・シーケンスは以下のようになっています。

動詞のビジネス関数シーケンスを指定すると、その動詞に関連付けられた動詞 ASI が作成されます。必要な場合、この動詞 ASI は後から変更することができます。

XML ビジネス・オブジェクト

図 8 に示したソース・ノードの確認の画面で選択したそれぞれのテーブルごとに、追加情報を取り込むための後続のプロパティー・ウィンドウが表示されます。

XML ビジネス・オブジェクトの場合は、次の 3 種類のビジネス・オブジェクト・プロパティーのウィンドウが表示されます。

テーブル・タイプ

ビジネス・オブジェクト・プロパティーのウィンドウには、プロパティー名とプロパティー値が表示されます。それぞれのテーブルごとに、テーブル・タイプを選択できます。ドロップダウン・メニューを使用して、単一カーディナリティーを選択できます。

次のプロパティー値から選択できます。

図 11. 「選択されたテーブルのテーブル・タイプを選択してください (Select the table type for selected tables)」画面

テーブル・タイプを選択すると、ODA により、それぞれのテーブルごとに GetTemplate API が呼び出されます。ODA は、GetTemplate 呼び出しの XML 文書を作成し、これを OneWorld に渡します。応答 XML 文書により、テーブルに存在する列のリストが渡されます。生成されたビジネス・オブジェクトは、表示されたすべての列を、ビジネス・オブジェクトの属性として持っています。

データの選択

図 12 に示すように、この「BO プロパティー」ウィンドウでは、各テーブルの列の where 文節のプロパティーを取り込みます。このウィンドウは、それぞれのテーブルごとに表示されます。プロパティー名は、テーブルの列名です。プロパティー値は、列に使用する必要のある where 文節のパラメーターを表します。where 文節の一部を構成する列についてのみ、データが取り込まれます。値は、次の形式でなければなりません。

clause type=<ClauseType>;

clause_seq=<Clause Sequence>;

operator_type=<Operator Type>;

<Clause Type> は、WHERE、AND、または OR です。<Clause Seq> は、where 文節において列を追加する順序を表す数値です。<Operator Type> には、次のいずれかの値を指定できます。

図 12. 「テーブルの where 文節の作成 (Prepare the where clause for table)」画面

データの順序付け

図 13 に示すデータの順序付けの画面では、プロパティー名が表示され、特定の列の順序付けを昇順 (ASCD) にするか降順 (DSCD) にするかをドロップダウン・メニューから選択できます。

順序付けのタイプのほかに、アダプターでは、ASI タグ sort_order を使用して、順序付け文節の作成時に属性の順序を設定します。ODA は、このプロパティーを追加しません。このプロパティーは、ソート・プロパティーの選択時、ユーザーが手動で属性 ASI に追加する必要があります。

図 13. 「データの順序付けの作成 (Prepare data sequencing)」画面

別のウィンドウでビジネス・オブジェクトを開く

ビジネス・オブジェクト・ウィザード - ステップ 6/6 - ビジネス・オブジェクトの保管」画面が表示され、そこに、別ファイルにビジネス・オブジェクトのコピーを保管するオプション、別ウィンドウで新規ビジネス・オブジェクトを開くオプション、および OneWorld ODA をシャットダウンするオプションが示されます。別ウィンドウで新規ビジネス・オブジェクトを開くオプションを選択したときに、Business Object Designer Express が表示するウィンドウの中で、それらのビジネス・オブジェクトの属性を変更できます。

図 14. 「ビジネス・オブジェクトの保管」画面

個別のウィンドウでビジネス・オブジェクトを開くには、次の手順を実行します。

  1. 「別のウィンドウで新規ビジネス・オブジェクトを開く」を選択します。ダイアログ・ボックスが表示されます。
  2. 「完了」をクリックします。それぞれのビジネス・オブジェクトが別々のウィンドウに表示されます。そのウィンドウで、作成したばかりのビジネス・オブジェクトおよびビジネス・オブジェクト動詞の ASI 情報を表示し、設定することができます。詳細については、インターフェース・クラスにマップされるビジネス・オブジェクトを参照してください。

ビジネス・オブジェクトをファイルに保管するには、次の操作を実行します (親レベルのビジネス・オブジェクト用のキーを指定しておく必要があります)。

  1. 「ビジネス・オブジェクトのコピーを個別のファイルに保管する」を選択します。ダイアログ・ボックスが表示されます。
  2. 保管する新規ビジネス・オブジェクト定義のコピーを格納する場所を入力します。

Business Object Designer Express は、ファイルを指定された場所に保管します。

ODA での作業を完了後、「ODA JD Edwards OneWorld ODA をシャットダウン (Shutdown ODA JD Edwards OneWorld ODA)」チェック・ボックスを選択してから「完了」をクリックすることによって ODA をシャットダウンできます。

ODA の停止

Windows での ODA の停止

ODA での作業を完了した後、「ODA JD Edwards OneWorld ODA をシャットダウン (Shutdown ODA JD Edwards OneWorld ODA)」チェック・ボックスを選択してから「完了」をクリックすることによって、ODA をシャットダウンできます。

i5/OS での ODA の停止

ODA の停止は、始動するのに使用した方法により異なります。

i5/OS での ODA の始動のステップ 1 または 2 で説明した方法のいずれかを使用して始動した場合は、以下を実行します。

  1. CL コマンド WRKACTJOB SBS(QWBISVR43) を実行します。画面にサブシステムで実行中のすべてのジョブが表示されます。
  2. リストをスクロールして、ODA のジョブ記述と一致するジョブ名のジョブを見つけます。ODAName JD Edwards OneWorld ODA の場合は、QWBIJDEODA です。
  3. オプション 4 を選択して F4 キーを押し、ENDJOB コマンドのプロンプトを表示して、OPTION パラメーターの *IMMED コマンドを指定します。
  4. Enter キーを押します。

i5/OS での ODA の始動のステップ 3 を使用して ODA を始動した場合は、start_ODAName.sh スクリプトを実行した F3 キーを押します。

Copyright IBM Corp. 2004, 2005