このセクションでは、Business Object Designer Express 内で JD Edwards OneWorld ODA を使用してビジネス・オブジェクト定義を生成する方法を説明します。Business Object Designer Express の起動および使用については、「ビジネス・オブジェクト開発ガイド」を参照してください。
ODA は、Windows の start_OneWorld0DA.bat で、メタデータ・リポジトリー (すなわち、IDL ファイル) が存在するファイル・システムを マウント可能な任意のマシンから実行できます。この始動ファイルには、必要な OneWorld .jar ファイルおよび Connector .jar ファイルへのパスなどの始動パラメーターが記述されています。
OneWorld 対応の ODA のデフォルト名は、OneWorldODA です。この名前は、始動スクリプト (start_OneWorldODA.bat) 内の AGENTNAME を変更することによって変更できます。
ODA を始動するには、次のコマンドを実行します。
start_OneWorldODA
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 では、ODA を使用してビジネス・オブジェクト定義を生成するステップをユーザーに示すウィザードを提供しています。以下に示すステップがあります。
「次へ」をクリックすると、「ビジネス・オブジェクト・ウィザード - ステップ 2/6 - エージェントの構成」画面が表示されます。図 6 では、この画面をサンプル値とともに示しています。
この画面で設定するプロパティーを、表 3 で説明します。この画面で入力したすべての値をプロファイルに保管することができます。次回 ODA を実行するときに、プロパティー・データを再入力しなくても、ドロップダウン・メニューからプロファイルを選択するだけで、保管された値を再利用できます。それぞれ指定された値の組み合わせが異なる複数のプロファイルを保管することも可能です。
プロパティー名 | デフォルト値 | タイプ | 説明 |
---|---|---|---|
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 への接続に使用するユーザー名。 |
図 7 に示すように、「ビジネス・オブジェクト・ウィザード - ステップ 3/6 - ソースの選択」画面が表示されます。
生成するオブジェクトの選択に関連する規則を以下にリストします。
この画面にリストされる OneWorld オブジェクトの中で、上位オブジェクトの子オブジェクトであるものを判別するには、オリジナルの GenJava ファイルを参照してください。また、この画面にリストされるすべての OneWorld オブジェクトを選択して、それぞれに対応するオブジェクトを生成することもできます。生成されたビジネス・オブジェクトは、親子関係を反映します。
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 ファイルからオブジェクトを選択できます。オブジェクトを選択するには、「代わりにこのオブジェクトを使用」ボタンを使用します。標準のフィルター機能を使用すると、ツリーの子ノードの一部を選択できます。
「ビジネス・オブジェクト・ウィザード - ステップ 4/6 - ビジネス・オブジェクト定義のソース・ノードの確認」画面が表示されます。この画面には、選択したオブジェクトが表示されます。
ODA を用いて生成したビジネス・オブジェクトについては、ビジネス・オブジェクトを保管する前に、Business Object Designer Express 内でキー・フィールドに手動でマークを付ける必要があります。ODA は、属性をキー・フィールドとしてマーク付けすることはありません。あるビジネス・オブジェクトから別のビジネス・オブジェクトに値をマップすることを計画している場合は、外部キーにマークを付ける必要があります。ビジネス・オブジェクトの属性が、すでに処理済みのほかのビジネス・オブジェクトの値を必要とする場合は、ASI タグ use_attribute_value を属性 ASI に手動で追加する必要があります。
変更するには「戻る」をクリックし、リストが正しいことを確認するには「次へ」をクリックします。
「ビジネス・オブジェクト・ウィザード - ステップ 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 という名前を使用している場合、生成されるビジネス・オブジェクトは D0100033、D0100033_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 クラスがあります。
インターフェース・クラス・ファイルはライブラリーにマップされ、インターフェースの組み合わせは iJDEScript ファイルに定義されています。このファイルには、すべてのビジネス関数および指定されたインターフェースにインポートされたビジネス関数の create<businessfunction>ParameterSet メソッドのシグニチャーが格納されています。
ファイルの内容が以下のとおりであるとします。
login library JDEAddressBook interface AddressBook import B0100031 import B0100019 import B0100032 import B0100002 import B0100033 build logout
この場合、AddressBook.class のクラス・ファイルは、B0100031 のメソッドおよび Create<B0100031>ParameterSet を持つことになります。ここで、<B0100031> はビジネス関数の英語のテキスト名です。
データ構造クラス・ファイルは、特定のビジネス関数の入力として必要なすべてのパラメーターの get メソッドと set メソッドを保持します。
インターフェース・クラスにマップされるビジネス・オブジェクトのビジネス・オブジェクト情報を指定できます。ビジネス・オブジェクトの作成後に、そのオブジェクトで有効な動詞、オブジェクトでの指定された動詞のメソッド・シーケンス、ビジネス・オブジェクト・レベル ASI、および属性レベル ASI を指定することができます。このセクションでは、ODA を Business Object Designer Express とともに使用して、この情報を指定する方法を説明します。これらの情報のカテゴリーと、JD Edwards OneWorld コネクター内のビジネス・オブジェクト構造での役割の詳細については、ビジネス・オブジェクトの理解を参照してください。
動詞の選択
選択されたビジネス・オブジェクトが OneWorld のインターフェース・オブジェクトにマップされている場合、Business Object Designer Express で、ビジネス・オブジェクトの作成完了後に別個のウィンドウでそのビジネス・オブジェクトを開いたときに最初に表示される画面は、「BO プロパティー - コンポーネントの動詞を選択してください」画面です。図 9 は、AddressBook ビジネス・オブジェクトに対応するこの画面を示します。XML リストのビジネス関数にマップされるビジネス・オブジェクトの場合、単一の動詞 execute が作成されます。
この画面では、ビジネス・オブジェクトがサポートする動詞を指定できます。動詞の名前を入力してそれらを「;」で区切ると、特定のビジネス・オブジェクトに必要な動詞を指定できます。動詞の名前は「ビジネス・オブジェクト開発ガイド」で指定されている命名規則に合っている必要があります。
WebSphere Business Integration で使用される標準の動詞は、Create、Retrieve、Delete、および Update です。OneWorld コネクター用のビジネス・オブジェクト動詞 ASI の詳細については、動詞 ASIを参照してください。
動詞 ASI の指定
選択した動詞ごとに、ビジネス関数が動詞を実行する指定の順序で、個別のウィンドウが表示されます。
図 10 は、図 7 および 図 8 で作成した、「ビジネス関数 (Business Functions)」の下の AddressBook ビジネス・オブジェクトの Retrieve 動詞の画面を示しています。
MethodSequence プロパティーの「値」リストから、その動詞に関してビジネス・オブジェクトに最初に実行させたいメソッドを選択できます。図 10 では、メソッド・シーケンスは以下のようになっています。
動詞のビジネス関数シーケンスを指定すると、その動詞に関連付けられた動詞 ASI が作成されます。必要な場合、この動詞 ASI は後から変更することができます。
図 8 に示したソース・ノードの確認の画面で選択したそれぞれのテーブルごとに、追加情報を取り込むための後続のプロパティー・ウィンドウが表示されます。
XML ビジネス・オブジェクトの場合は、次の 3 種類のビジネス・オブジェクト・プロパティーのウィンドウが表示されます。
テーブル・タイプ
ビジネス・オブジェクト・プロパティーのウィンドウには、プロパティー名とプロパティー値が表示されます。それぞれのテーブルごとに、テーブル・タイプを選択できます。ドロップダウン・メニューを使用して、単一カーディナリティーを選択できます。
次のプロパティー値から選択できます。
テーブル・タイプを選択すると、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> には、次のいずれかの値を指定できます。
データの順序付け
図 13 に示すデータの順序付けの画面では、プロパティー名が表示され、特定の列の順序付けを昇順 (ASCD) にするか降順 (DSCD) にするかをドロップダウン・メニューから選択できます。
順序付けのタイプのほかに、アダプターでは、ASI タグ sort_order を使用して、順序付け文節の作成時に属性の順序を設定します。ODA は、このプロパティーを追加しません。このプロパティーは、ソート・プロパティーの選択時、ユーザーが手動で属性 ASI に追加する必要があります。
「ビジネス・オブジェクト・ウィザード - ステップ 6/6 - ビジネス・オブジェクトの保管」画面が表示され、そこに、別ファイルにビジネス・オブジェクトのコピーを保管するオプション、別ウィンドウで新規ビジネス・オブジェクトを開くオプション、および OneWorld ODA をシャットダウンするオプションが示されます。別ウィンドウで新規ビジネス・オブジェクトを開くオプションを選択したときに、Business Object Designer Express が表示するウィンドウの中で、それらのビジネス・オブジェクトの属性を変更できます。
個別のウィンドウでビジネス・オブジェクトを開くには、次の手順を実行します。
ビジネス・オブジェクトをファイルに保管するには、次の操作を実行します (親レベルのビジネス・オブジェクト用のキーを指定しておく必要があります)。
Business Object Designer Express は、ファイルを指定された場所に保管します。
ODA での作業を完了後、「ODA JD Edwards OneWorld ODA をシャットダウン (Shutdown ODA JD Edwards OneWorld ODA)」チェック・ボックスを選択してから「完了」をクリックすることによって ODA をシャットダウンできます。
ODA での作業を完了した後、「ODA JD Edwards OneWorld ODA をシャットダウン (Shutdown ODA JD Edwards OneWorld ODA)」チェック・ボックスを選択してから「完了」をクリックすることによって、ODA をシャットダウンできます。
ODA の停止は、始動するのに使用した方法により異なります。
i5/OS での ODA の始動のステップ 1 または 2 で説明した方法のいずれかを使用して始動した場合は、以下を実行します。
i5/OS での ODA の始動のステップ 3 を使用して ODA を始動した場合は、start_ODAName.sh スクリプトを実行した F3 キーを押します。