【SAPIUI5】SuccessFactors連携時のOdata注意点
SuccessFactors等の拡張機能として、SAP BTP上でFioriのアプリを構築し、
OdataAPIを通じてSuccessFactorsと連携する場合の考慮点
アプリごとに使用するEntityを絞る
manifest.jsonに記載のdatasourceの内容
特に考慮しない場合
"mainService": {
"uri": "https://api10preview.sapsf.com/odata/v2",
"type": "OData",
"settings": {
"odataVersion": "2.0",
"localUri": "localService/metadata.xml"
}
}
例)Userのデータに絞る場合
"mainService": {
"uri": "https://api10preview.sapsf.com/odata/v2/User",
"type": "OData",
"settings": {
"odataVersion": "2.0",
"localUri": "localService/metadata.xml"
}
}
例)複数のEntityを参照する場合
"mainService": {
"uri": "https://api10preview.sapsf.com/odata/v2/User,EmpJob",
"type": "OData",
"settings": {
"odataVersion": "2.0",
"localUri": "localService/metadata.xml"
}
}
となります。
Controllerにてアクセスする場合は
oDataModel.read("/User");
等でアクセスが可能になります。
実際のURLは
https://api10preview.sapsf.com/odata/v2/User,EmpJob/User
へアクセスされますが、問題なくデータが取得できます。
注意点
- 参照するEntityはかならず記載する
- $expand等で子階層のデータを参照する時も必ず子階層のEntity情報を記載する
SuccessFactorsの標準Entity等により、metadaのサイズが大きくなりがちかと思います。
多くのEntityを参照するアプリでも必ず指定するようにしましょう。
基本は1,000件のレスポンス
フィルター条件等を指定しても、最大1,000のレスポンスとなります。
\$top,\$skipを使用してPagingの考慮を行いましょう。
また、1001件以上データが存在する場合は、__nextのデータが存在します
__nextに記載されたURLへアクセスすると1001件目~のデータ取得できます。
こちらを使用してページング処理を行う場合はURLのパラメータとして
paging=snapshotを指定するようにしましょう
その他
- bathでまとめてリクエス可能件数は180リクエスト
- upsertの可能件数は1000件
等
CDSビュー等で構築したoDataとは異なる独自の制限があることに注意しましょう
Author And Source
この問題について(【SAPIUI5】SuccessFactors連携時のOdata注意点), 我々は、より多くの情報をここで見つけました https://qiita.com/kojirousan/items/f05e0eb1cfbe45a2b36d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .