JCL_lst_Sort_Append

リストボックスのJCL_lst_Sortで実行してほしいソート順をソート履歴(列名と昇順・降順の配列)に追加。

使い方
JCL_lst_Sort_Append (“vA04BU_lstBU”;->vA04BU_lstBU_HeaderNames;->vA04BU_lstBU_SortOrders;5;2)  // 降順

引数
$1: リストボックスのオブジェクト名
$2: ヘッダー名の配列へのポインタ ->(ARRAY TEXT)
$3: 並び順(昇順:1、降順:2)の配列へのポインタ ->(ARRAY LONGINT)
$4: ソート対象の列番号
$5: ソート方向(昇順:1、降順:2)

  //JCL_lst_Sort_Append
  //20160503 wat yabe
  //リストボックスのソート順を、配列に追加
  // OnLoadで呼び出す
  // デフォルトの並び順を指定、配列にプッシュしておく
  // 関連メソッド:xx_frmOnLoad, xx_frmDefInit, xx_lstXX_OnAfgterSort, xx_lstXX_make

C_TEXT($1;$lstboxName)
$lstboxName:=$1
C_POINTER($2;$aryHeaderNamesPtr)
$aryHeaderNamesPtr:=$2
C_POINTER($3;$arySortOrdersPtr)
$arySortOrdersPtr:=$3
C_LONGINT($4;$nr)
$nr:=$4
C_LONGINT($5;$order)
$order:=$5
C_TEXT($headerName)

  //デフォルト指定があれば
$headerName:=JCL_lst_Sort_HeaderName ($lstboxName;$nr)
  // ユーザ操作によって列番号が変化する可能性があるため、列番号ではなく名前を配列に保持
If ($headerName#"")
	APPEND TO ARRAY($aryHeaderNamesPtr->;$headerName)
	APPEND TO ARRAY($arySortOrdersPtr->;$order)
	
End if 

リストボックスが配置されたフォームのOnLoadで実行。デフォルトの並び順を指定、配列にプッシュしておく。

関連して修正するメソッド:xx_frmOnLoad, xx_frmDefInit, xx_lstXX_OnAfgterSort, xx_lstXX_make

関連メソッド:JCL_lst_Sort_Append, JCL_lst_Sort_AppendCurrent