HeaderSortMode (cfg)

헤더를 클릭시 소팅하는 순서를 변경합니다.
별다른 설정이 없는 경우 시트는 MaxSort 설정에 따라 클릭하는 헤더의 순서대로, 대분류, 중분류, 소분류로 소팅을 합니다.
가령 MaxSort:3 이고 A, B, C 컬럼의 헤더를 순서대로 클릭하였다면 대분류:A, 중분류:B, 소분류:C의 순서대로 소팅이 이루어지고 이렇게 3개 컬럼이 결정되고 난 이후에는 다른 컬럼은 클릭하여도 소팅이 되지 않습니다.
그런데 이러한 방식 대신에 마지막으로 클릭한 컬럼을 대분류로 하고, 소팅 컬럼이 결정된 이후에 새롭게 클릭하는 헤더를 계속적으로 대분류로 변경하여 소팅하고자 하실때는 이 속성을 1로 설정하시면 됩니다.
만약 기존에 소팅된 내용을 clear하려면 헤더를 Shift + 클릭 하시면 됩니다.

Type

number

Options

Value Description
0 클릭한 순서대로 대분류/중분류/소분류가 되며, MaxSort에서 지정한 개수까지만 소팅하고 MaxSort 초과의 컬럼은 소팅이 되지 않음. (default)
1 클릭한 순서의 역순으로 대분류/중분류/소분류가 되며, 마지막으로 클릭하는 헤더가 대분류가 됨. MaxSort 초과 시 기존의 소분류였던 컬럼은 소팅 취소됨.
2 클릭한 헤더의 소팅 아이콘만 변경되고 실제 소팅이 되지 않음.
단, 헤더 클릭 시점의 정렬만 막을 뿐, 데이터를 다시 조회하면 헤더에 걸린 Sort 기준으로 자동 재정렬됨.
3 클릭한 헤더의 소팅 아이콘만 변경되고 실제 소팅이 되지 않음. 추가적으로 doSort 이용한 정렬이나 조회 시 자동 재정렬도 되지 않음.
IBSheet 자체 정렬 대신 서버(DB) 정렬을 사용해 조회된 순서를 그대로 표시할 때 이 모드를 사용.
4 클릭한 순서대로 대분류/중분류/소분류가 되며, 마지막으로 클릭하는 헤더가 소분류가 됨. MaxSort 초과 시 기존의 대분류였던 컬럼은 소팅 취소됨.

MaxSort:3(우선순위 슬롯 3칸)에서 헤더를 ABCD 순서로 클릭하면, 모드별로 슬롯이 다음과 같이 채워지고 밀려납니다.

우선순위 슬롯: [1순위][2순위][3순위]

mode 0 : 순서대로 채우고, 꽉 차면 새 클릭 무시
  A →  [A][ ][ ]
  B →  [A][B][ ]
  C →  [A][B][C]
  D →  [A][B][C]   ← 꽉 참, D 무시

mode 1 : 새 클릭을 항상 1순위로 넣고 나머지를 밀어냄
  A →  [A][ ][ ]
  B →  [B][A][ ]
  C →  [C][B][A]
  D →  [D][C][B]   ← 넘친 A 탈락

mode 4 : 순서대로 채우다 꽉 차면 1순위를 버리고 새 클릭을 꼴찌로
  A →  [A][ ][ ]
  B →  [A][B][ ]
  C →  [A][B][C]
  D →  [B][C][D]   ← A 탈락, D가 3순위

Example

options = {
    Cfg :{
        HeaderSortMode: 1,
        ...
    }
};

Read More

Since

product version desc
core 8.0.0.4 기능 추가
core 8.0.0.8 HeaderSortMode: 2,3 추가
core 8.3.0.43 HeaderSortMode: 4 추가