ORDAのエンティティセレクションには,ordered(順序あり)とunordered(順序なし)が存在します。前者は従来の命名セレクションに,後者は従来のセットに似ています。
デスクトップ版,あるいはサーバー側でORDAのquery()
を使用した場合,データストアds
はローカルなので,デフォルトでunordered(順序なし)のエンティティセレクションが返されます。ordered(順序あり)のエンティティセレクションが必要であれば,newSelection()
にdk keep ordered
オプションを渡すことができます。
クライアント側でORDAのquery()
を使用した場合,データストアds
はリモートなので,常にordered(順序あり)のエンティティセレクションが返されます。つまり,クライアント側でORDAを実行した場合,entitySelection.isOrdered()
は常にTrue
を返しますが,同じコードをデスクトップ版で実行した場合,False
が返されるかもしれません。これは仕様です。