Pivot 최신버전 1.0.3

Pivot 최신 버전 이력

1.0.3 (2019년 2월)


기능 개선

  1. Focus 가이드 표시
    • DisplayOptions의 showFocusGuide 속성이 추가되었습니다. showFocus와 showFocusGuide가 true이면 선택된 셀의 가로와 세로에 배경색을 표시할 수 있습니다.
    • 다음과 같이 setDisplayOptions() 함수를 통해 사용 할 수 있습니다.
      1
      2
      3
      4
      
      pivot.setDisplayOptions({
        showFocus: true,
        showFocusGuide: true
      });
      
    • CSS realpivot-focus-guide class가 추가되었습니다.
  2. 메모리 최적화
    • 컬럼과 행의 수가 대량일 때 Memory Overflow로 동작이 멈추는 현상이 있어 메모리 사용량을 최적화 하였습니다.
  3. 값필드 가로 맞춤 설정
    • 이전 버전까지 expression이 “distinct”인 경우 중앙, 그 외의 경우 우측으로 가로 정렬로 고정되어 있었는데, 값 필드 별로 정렬 방식을 지정할 수 있게 하였습니다.
    • PivotField.valueAlignment 속성을 “near”, “center”, “far”로 지정하여 맞춤 설정 할 수 있습니다.
    • 설정 화면에서 값 설정의 맞춤 방식 선택 박스가 추가 되었습니다.
    • CSS realpivot-cell 하위의 span.near, span.center class가 추가되었습니다.
  4. 커스텀 날짜 표현
    • 필드의 dateType을 “custom”으로 설정 하면 PivotField.dateFormat에 맞추어 표시합니다.
    • 포맷에 사용하는 문자열은 Data Provider와 동일합니다.
  5. 스크롤 UI 개선
    • 스크롤 버튼을 누르고 있는 동안 계속적으로 스크롤되도록 개선하였습니다.
    • 스크롤 바를 드래그해서 이동하는 중에 마우스 포인터가 Pivot을 벗어나도 가능하도록 개선하였습니다.
  6. 공백을  로 치환
    • Pivot은 HTML Dom방식이라 앞뒤 공백이나 연속되는 공백이 화면상에 표시 되지 않았습니다.
    • DisplayOptions의 keepLabelSpace 속성이 true이면 라벨상의 모든 공백을  로 치환하여 표시합니다.
  7. 라벨 prefix/suffix
    • 필드의 displayFormat, summaryFormat에 사용되는 문자열이 특정 웹서버에서 예약어로 사용되어 사용하기 어려운 경우가 있었습니다.
    • PivotField.labelPrefix, PivotField.labelSuffix를 사용 해 displayFormat과 유사한 동작을 하도록 하였습니다.
    • 요약을 위한 PivotField.summaryPrefix, PivotField.summarySuffix도 추가하였습니다.
    • [format 사용예]
      1
      2
      3
      4
      5
      6
      
       pivot.setFieldMapping([{
       ...
       displayFormat: "${value}년도",
       summaryFormat: "${value}년도 합",
       ...
       }]);
      
    • [prefix/suffix 사용예]
      1
      2
      3
      4
      5
      6
      
       pivot.setFieldMapping([{
       ...
       labelSuffix:"년도",
       summarySuffix:"년도 합",
       ...
       }]);
      

오류 수정

  1. form 태그
    • form 태그 안에 피벗 컨테이너가 있는 경우 설정화면의 버튼이 커밋 버튼으로 오동작하는 문제를 수정하였습니다.
    • CSS button class가 input type=”button” 으로 변경 되었습니다.
  2. 필드 정렬
    • 필드의 sortDir 속성을 기본 정의하지 않았을 때 제대로 정렬되지 않는 문제를 수정하였습니다.
  3. 컬럼 필드가 없을때 설정 화면 오류
    • 컬럼 필드가 없을때 설정화면에서 값 필드의 정렬 방식 선택 UI에서 오류 가 발생하는 문제를 수정하였습니다.

1.0.2 (2018년 10월)


기능 개선

  1. Expand/Collapse
    • GroupOptions의 columnExpand, rowExpand 속성으로 컬럼과 행의 그룹을 기본으로 특정 레벨까지 펼치도록 지정할 수 있게 되었습니다.
    • 다음과 같이 setGroupOptions() 함수를 통해 사용 할 수 있게 되었습니다.
      1
      2
      3
      4
      
      pivot.setGroupOptions({
        columnExpand: 1,
        rowExpand: -1
      });
      
    • 피벗이 표시 된 후 다음의 함수를 통해 특정 레벨 또는 특정 라벨을 펼치고 닫을 수 있게 되었습니다.
      레벨단위: expandColumnLevel(), expandRowLevel()
      라벨단위: expandColumn(), expandRow(), collapseColumn(), collapseRow()
    • Ctrl + Alt + 방향키로 컬럼과 행의 그룹을 접고 펼 수 있게 되었습니다.
  2. 피벗 값 가져오기
  3. 라벨 필드 정렬 별도 지정
    • 라벨 필드의 정렬 방식을 외부에서 직접 지정할 수 있게 되었습니다.
      PivotField.sortCallback에 compare함수를 지정하여 함수에서 정렬방법을 -1, 0, 1의 결과값으로 조정할 수 있습니다.
  4. 그리드 모드 헤더
    • HeaderOptions.formType속성이 추가되었습니다.
      이 속성을 “grid”로 지정하면 헤더 영역을 그리드와 같이 표시하도록 하였습니다.
      이 헤더에서는 설정버튼이 제공되지 않으므로 필요시 showSetupView() 함수를 이용해야 합니다.
  5. 필드별 넓이 지정
    • PivotField.width속성으로 필드의 개별 넓이를 지정할 수 있도록 하였습니다.
    • 컬럼의 상위 필드는 하위에 의하여 자동 결정되기 때문에 width 속성이 무시됩니다.

오류 수정

  1. 접힌 상태에서 요약 라벨의 크기를 변경하고 다시 펼쳤을 때 위치가 일치하지 않는 문제를 수정하였습니다.

  2. 피벗 영역을 키운 후 resetSize 호출 후 늘어난 부분 클릭 시 화면이 깜빡거리는 현상을 수정하였습니다.

  3. 행 라벨 리사이즈 후 바디 영역 우측에 빈 공간이 생기는 현상을 수정하였습니다.

1.0.1 (2018년 8월)


기능 개선

  1. 포커스
    • DisplayOptions.showFocus 속성으로 포커스를 표시하고 키보드로 이동할 수 있습니다.
    • 다음과 같이 setDisplayOptions() 함수를 통해 포커스를 활성화할 수 있습니다.
      1
      2
      3
      
      pivot.setDisplayOptions({
       showFocus: true
      });
      
    • 포커스가 이동될때 onCurrentChanged() 콜백이 발생합니다. 

    • CSS realpivot-focus class가 추가되었습니다.
  2. 셀 복사
    • 선택된 셀의 값을 Ctrl+C 단축키를 통해 클립보드로 복사할 수 있게 되었습니다.
    • CopyOptions.copyDisplayText 속성이이 true이면 표시된 텍스트가 복사되고, false이면 원시 데이터가 복사됩니다.
  3. 컨텍스트 메뉴
    • 마우스 우측 버튼 클릭시 표시되는 컨텍스트 메뉴를 setContextMenu() 를 통해 대체할 수 있습니다.
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      
      pivot.setContextMenu([{
       text: "menu1",
       callback: function () { alert("menu1 click"); }
      }, {
       text: "menu2",
       callback: function () { alert("menu2 click"); }
      }, {
       text: "-"
      }, {
       text: "menu3",
       callback: function () { alert("menu3 click"); }
      }]);
      
    • getContextMenu() 를 호출하여 설정된 컨텍스트 메뉴를 가져올 수 있습니다.
    • 상단 Menu Icon을 통해 표시되는 메뉴에 관한 기능은 setGlobalContextMenu(), getGlobalContextMenu()로 이름이 변경되었습니다.
  4. Setup UI
    • Setup 화면 타이틀 부분을 드래그하여 이동할 수 있도록 개선하였습니다.
    • 컬럼, 행 간 필드 이동이 가능하도록 개선하였습니다.
  5. 기타 UI 개선
    • 필드 헤더와 값 헤더 사이의 경계선을 이동하도록 개선하였습니다.
    • 컬럼 헤더, 행 헤더, 값 헤더의 내용이 줄바꿈되도록 수정하였습니다.

오류 수정

  1. 고유 값 처리
    • 값 필드의 표현식이 고유(distinct)일 때 표시되지 않는 오류가 수정되었습니다.
    • 고유 값일때 가운데 정렬하도록 개선하였습니다.
    • CSS span.distinct class가 추가되었습니다.

1.0.0 (2018년 6월 15일)

  • 데이터 수집 속도가 개선되었습니다.
  • 전반적인 Pivot Rendering 속도가 개선되었습니다.
  • Setup에서 드래그 UI가 개선되어 Firefox, IE 9등의 브라우저에서 사용할 수 있도록 하였습니다.
  • Setup에서 필드 제거 버튼을 추가하였습니다.
  • DisplayOptions.rowHeight의 기본값이 25로 변경되었습니다.
  • rowHeight크기에 맞춰 스크롤 되도록 개선되었습니다.
  • 많은 오류가 수정되었습니다.

0.8.0 (2018년 2월 28일)

initial version