メソッド タイルデザインインターフェース - OnSort

親リストでSortメソッドが起動されると実行されます。

タイルデザインインターフェース (PRIM_TILE.ITileDesign) のメンバ

パラメータ

名前タイプデータタイプ記述
Result*Result列挙2つの値を比較した結果-Less(小さい)、Equal(等しい)またはGreater(大きい)
TileItem*InputPRIM_TILE.TileItem現在のデザインインスタンス用のリストアイテムへの参照
CompareTo*InputPRIM_TILE.TileItem比較対象のリストアイテムへの参照
Key*InputPRIM_VAR必要となるソートの種類

詳細

OnItemSort メソッドは、項目が含まれている Tile で実行中のソートでアイテムが参照されるたびに実行されます。
 
ソートは完全にユーザー定義されているため、ソート・ルーチンに Key (ソートされている 'value' ) と  Order を指定する必要があります。 そして、この情報は OnSort メソッドで使用されます。

デザインの再利用可能部分のメソッドを再定義する。
 
この例では、 3 つの異なるソートをサポートしています。それは、 EMPNO 、 SURNAME および GIVENAME になります。これらの Key 値は完全に任意ですが、簡単にするために、特定のフィールド名と一致します。ここでの並べ替えは昇順のみです。
 
それぞれの場合、局所変数値は、この場合は設計インスタンスのプロパティとして公開された同等の変数値と比較され、各値が他の値よりも小さいか等しいか、または大きいかどうかが判定されます。
 
ソートプロセスが各項目を評価するときに、各項目に対して OnSort メソッドが何度も呼び出されることがあります。
Mthroutine Name(OnSort) Options(*Redefine)
 
   Case (#Key)
   When (= EMPNO)
      #Result := #Empno.Compare( (#CompareTo.Design *As #EmployeePart).Empno )
 
   When (= GIVENAME)
      #Result := #Givename.Compare( (#CompareTo.Design *As #EmployeePart).Givename )
 
   When (= SURNAME)
      #Result := #Surname.Compare( (#CompareTo.Design *As #EmployeePart).Surname )
 
 Endcase
 
 Endroutine

参照

すべてのコンポーネント クラス

テクニカルリファレンス

EPC150060 - December 2023