お世話になっております。
一覧画面でのパラメータでの並び順指定について質問があります。
処理の中で、並び順を指定した一覧画面に遷移させるため、一覧画面のURLの後に
?query=[ (項目A=○○ order by 項目B asc)をURLエンコードした文字列 ]
を付けてリダイレクトする様にしました。
しかし、「項目A=○○」の指定はされているのですが、「order by 項目B asc」の指定は
無視されてしまっています。
項目Bのフィールドは、文字列です。
並び順の指定を行いたいのですが、書き方が間違っている等ありますでしょうか。
大変初歩的な質問になってしまい申し訳有りません。
ご存知の方がいらっしゃいましたら、ご教示頂きたくお願い致します。
?query=[ (項目A=○○ order by 項目B asc)をURLエンコードした文字列 ]
↑「[ ]」は実際には付いていません。
紛らわしくなってしまい申し訳有りません。
s.higuchiさん
cstapの瀧ヶ平です
レコードの一覧のクエリは ?q&view=viewId#sort_0=フィールド固有のID&order_0=DESC のようになっていて単純なクエリ文字列の表記ではないようです。
そのため、やるとすれば実際に一覧を作成してみて、そのクエリを解析して実装するような形になってしまうのではないでしょうか?
瀧ヶ平様
ご回答ありがとうございます。
レコード一覧では、order byでなく別の記述をする必要があるのですね。
瀧ヶ平様のご回答を参考に考えてみたいと思います。
ありがとうございました。
s.higuchiさん
すいません、私の認識が間違っていました。
こちらにあるとおり、レコード一括取得のクエリで出来るようですね。
クエリ自体は間違っていなさそうなので、フィールドコード部分をダブルクォートで囲って実行してもダメでしょうか?
また、JavaScriptの文字コードはUTF-8になっていますでしょうか?
瀧ヶ平様
ご回答ありがとうございます。
ご回答にあった通り、フィールドコードをダブルクォートで囲ってみたのですが、
以下のエラーページに飛んでしまいました。
エラーが発生しました。query:クエリ記法が間違っています。
- Code: CB_AC01
- ID: 1505999166-1035590823
また、JavaScriptの文字コードもUTF-8であることを確認しました。
リファレンスの内容的には出来そうな気がするのですが、難しそうですね。
s.higuchiさん
こちらの環境で再度試してみたところ、REST API上ではレコードの順序が正しく取得できますが一覧画面のクエリではやはり並び順の指定は無視されてしまうようです。
なので、必要に応じて一覧画面を作成しておくか、カスタマイズビューを利用し表示はREST APIでのレコードの一括取得を利用して行う方法で対応するほかなさそうです
system
(system)
クローズされました:
8
このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。