2016-12-05 2 views
0

Prenons le service Northwind odata à titre d'exemple. Pour obtenir tous les produits d'un fournisseur '1' j'utiliserais le URL suivant et dans SAPUI5 il est égal à: oModel.read("/Suppliers(1)/Products");Comment lire l'association OData pour plusieurs enregistrements

Mais que faire si j'ai 10 fournisseurs différents et voudrait obtenir tous les produits appartenant à ces fournisseurs. Quelle est la bonne façon de faire cela? Dois-je boucler au oModel.read("/Suppliers(X)/Products"); où X est le numéro du fournisseur? Ou devrais-je utiliser des filtres sur l'ensemble d'entités Products?

Répondre

1

Vous pouvez filtrer les fournisseurs et utiliser l'attribut de requête $ expand pour inclure les produits correspondants dans le résultat. Ce URL retournera les Fournisseurs avec un identifiant inférieur à 5 et leurs Produits. Comme un fournisseur peut avoir beaucoup de produits, il peut être préférable de le faire dans l'autre sens, de filtrer les produits et d'élargir le fournisseur correspondant. Ce URL retournera les produits dont l'identifiant et l'identifiant du fournisseur sont inférieurs à 5. Dans un scénario réel, vous appliqueriez différents filtres, mais l'idée devrait être claire.