階層ビジネス・オブジェクトをトラバースする必要があるコードを作成している場合、子ビジネス・オブジェクト配列のエレメントで属性を指定できる構文を使用する必要があります。その子ビジネス・オブジェクト配列は、子ビジネス・オブジェクト配列、および他のそのような複雑性のエレメントです。 この章では、使用する構文を指定します。
属性の仕様は、以下のとおりです。
[[attributeName [index ].]...]attributeName
この構文は、以下の形式のいずれかに拡張されます。
attributeName attributeName [index ].attributeName attributeName [index ]... .attributeName
次の例では、busObj.get() メソッドを使用して、ビジネス・オブジェクト orderObj から OrderID という名前の基本型属性を検索します。
orderObj.get("OrderID");
次の例では、orderObj は階層ビジネス・オブジェクトであることを前提としています。オブジェクトの属性の 1 つは CustomerInfo で、単一カーディナリティーの子ビジネス・オブジェクトです。例では、CustomerInfo の CustomerName 属性から顧客名を検索します。
orderObj.get("CustomerInfo.CustomerName");
CustomerInfo が orderObj の子で、AddressInfo が CustomerInfo の子である子ビジネス・オブジェクトのチェーンがある場合、以下のように、AddressInfo から市区町村の情報を検索できます。
orderObj.get("CustomerInfo.AddressInfo.City");
配列でインデックスを指定することで、配列の子ビジネス・オブジェクトを参照することもできます。配列の最初のエレメントは常にゼロで始まります。例えば、次の例では、配列の 3 番目の子ビジネス・オブジェクトから Quantity 属性の値を検索します。
orderObj.get("LineItem[2].Quantity");