18.4.8.7 リージョン内の親と子のデータに関する操作

リージョン内の親と子のデータの操作について学習します。

BOSSビジネス・オブジェクトは、構成要素である子オブジェクトのコレクション1つ以上に関連付けることができます。たとえば、Order (注文)オブジェクトは、関連する、OrderLine (注文明細)子ビジネス・オブジェクトのコレクションからなるものにできます。親オブジェクト(たとえば、Order)は複数の子コレクションからなるものにでき、その各コレクションは複数のビジネス・オブジェクトからなるものにでき、そのオブジェクトも複数のコレクションからなるというように、順々に続くことができます。たとえば、Orderに含まれている各OrderLineビジネス・オブジェクトに、OrderLineFulfillment子ビジネス・オブジェクトからなるコレクションを含めることができます。

構成要素として子コレクションがある、ルート・ビジネス・オブジェクト(たとえば、Order)を操作するときは、クライアント(たとえば、APEX)により、特定の親オブジェクトのリソース・キーを含むネストしたリソース名を使用して子オブジェクトの読取りと書込みを実行できます。たとえば、注文12345についてOrderLine子オブジェクトをリストするには、RESTエンドポイントが次のパスで終わるようにします:

/orders/12345/orderLines

前述の例では、12345は特定の注文のリソース・キーであり、orderLinesは、object-collectionタイプのOrderオブジェクトのアクセッサ属性の名前です。

リソース・キーが12345である特定のOrderにある、リソース・キーが67890である特定のOrderLineの子オブジェクトを操作するには、RESTエンドポイントURLの末尾を次のようにします:

/orders/12345/orderLines/67890/orderLineFulfillments

このorderLineFulfillmentsは、object-collectionタイプのOrderLineオブジェクトのアクセッサ属性の名前です。

注文明細の場合は次のようにURLパス内で名前付きパラメータを使用して、ネストしたリソースに対してRESTデータ・ソースを定義できます:

/orders/:orderId/orderLines

第2レベルの子にアクセスするには、RESTデータ・ソースのエンドポイントURLに複数のURLパス・パラメータを含めます。次に例を示します:

/orders/:orderId/orderLines/:orderLineId/orderLineFulfillments

このようなパラメータ化されたRESTデータ・ソースをページ上のリージョンで使用している場合は、その後、そのリージョンの「レンダリング」タブ内の「パラメータ」ノードでそのRESTデータ・ソースのURLパス・パラメータの値をバインドして適切なページ・アイテムを使用できます。