APIからのソート指定について

GetReportDataByConditionsAPIやItemListAPIでソートフィールドを複数したい場合はどのように指定すればよろしいでしょうか。
また、ソートフィールド毎に昇順、降順を指定することはできるでしょうか。

1 Like

@k-koniship はい、可能です。

https://github.com/b-eee/linker-api-doc/blob/develop/api/items/ItemList.md
こちらのドキュメント内のリクエストパラメーター

sort_fields

について参照ねがいます。

以下のように、複数キーとソート順を指定可能です。
配列に指定された順番でソート項目が優先適用されます。

  "sort_fields": [
        {"id": "Status", "order": "desc"},  // 第1ソートキー id:は画面Dを指定
        {"id": "Category", "order": "asc"} // 第2ソートキー ascの場合,orderは省略できます
 ],

(補足)
sort_field_id は、単一ソートの際に利用しますが、上記 sort_fields が指定されていた場合は、sort_fieldsが優先され、sort_field_idの指定は無視されます。

承知致しました。
早急な回答ありがとうございます。

2 Likes

GetReportDataByConditionsAPIで同じデータレポートに対して以下のソート指定①~③を切り替えて実行しているのですが、度々ソートされない場合があります。
(連続で同じソート指定でAPIを実行した場合もソートされる場合とされない場合があるようです。)
ご確認頂けないでしょうか。

ソート指定①
“sort_fields”: [
{“id”: “no”, “order”: “desc”}
]

ソート指定②
“sort_fields”: [
{“id”: “order_date”, “order”: “desc”},
{“id”: “order_time”, “order”: “desc”},
{“id”: “no”, “order”: “desc”}
]

ソート指定③
“sort_fields”: [
{“id”: “delivery_date”, “order”: “desc”},
{“id”: “delivery_time”, “order”: “desc”},
{“id”: “no”, “order”: “desc”}
]

Talend API Testerを利用して再現
URLとパラメータを貼り付けてください。