Release Notes - SMART datagrid




v 1.4.7.2- 2023/05/31

    신규

  • date picker에서 달력의 시작 요일을 제어하는 firstDayOfWeek 속성 추가
  • 	var columns = [{
    		"name": "OrderDate",
    		"fieldName": "order_date",
    		"width": "90",
    		"styles": {
    			datetimeFormat: "yyyy-MM-dd",
    			textAlignment: "center"
    		},
    		"header": {
    			"text": strings["OrderDate"]
    		},
    		"editor": {
    			"type": "date",
    			"firstDayOfWeek" : 1
    		}
    	}
    	...
    	]
    	grid.setColumns(columns);
    
  • 다중 선택이 가능한 드롭다운 리스트의 editor type 추가
    데이터 편집 셀 목록
    관련 예제 참조.
  • 그리드에서 선택된 cell(selections)에 대한 통계값을 반환하는 getSelectionVal 함수 추가
    callback 함수 selectionValCallback 설정을 통해 사용자가 custom하게 반환값을 설정할 수 있습니다.
    관련 예제 참조.
  • 엑셀 다운로드 시 열, 행 틀 고정 기능(freezePane 속성) 추가
    관련 예제 참조.
    	$('#btnSave').click(function () {
    		DataLudi.exportToExcle(grid, {
    			target: 'local',
    			fileName: 'dlgrid.xlsx',
    			freezePane: true
    		});
    	});
    
  • 우측 컬럼 틀고정 기능(rightFixedColumnCount 속성) 추가
    관련 예제 참조.
    	grid.setDisplayOptions({
    		rightFixedColumnCount: 3
    	});
    
  • 개선

  • footer 및 groupFooter 영역에 cursor를 지정할수 있는 groupFooterCursorCallback, footerCursorCallback 이벤트 추가
    	grid.setOptions({
            display: {
                footerCursorCallback: function (index) {
                    if (index.column.name() == 'country') {
                        if (index.rowIndex % 2) {
                            return "pointer";
                        } else {
                            return "not-allowed";
                        }
                    }
                },
    			groupFooterCursorCallback: function (index) {
    				...
    			}
            }
        });
    
  • 수정 불가능한 cell에 대해서도 붙여넣기 시 onPasted 함수가 실행되도록 수정
  • check cell에서 체크 마크(v) 이미지 표시를 제어하는 hideUncheckedMark 속성 추가
        grid.setColumns([{
            name: "Shipping",
            fieldName: "Shipping",
            renderer: {
                type: "check",
                editable: true,
                editOnClick: true,
                spaceKey: true,
                displayBox: true,
    			hideUncheckedMark: true
            }
        },
        ...
        ]);
    
  • check cell 에서 empty string("")을 유효한 값으로 인식하도록 수정
  • radio 타입의 check bar에서 체크 시 radio 버튼 전체가 채워지도록 스타일 radioCircleFill 속성 추가
  • date picker에서 holidays 설정 시 해당 일자를 선택 가능하도록 holidaySelectable 속성 추가
        var columns = [{
    		name: "FirstDate",
    		fieldName: "first_date",
    		width: "120",
    		styles: {
    		    datetimeFormat: "yyyy-MM-dd",
    		    textAlignment: "center"
    		},
    		editor: {
    		    type: "date",
    		    holidays: [{
    		        type: "day",
    		        days: ["일"],
    		        color: "#ff0000",
    		        description: "휴일"
    		    }, {
    		        type:"date",
    		        dates:["2016/05/05", "2016/05/14"],
    		        color: "#00ff00",
    		    }],
    			holidaySelectable: true
    		}
    	},
    	...
    	]
    	grid.setColumns(columns);
    
  • 오류

  • 그룹 컬럼의 정렬 초기화가 정상적으로 수행되지 않는 현상 수정
  • 모바일 환경에서 cell이 포커싱되었을 경우 나타나는 불필요한 스타일 수정

v 1.4.6.104- 2021/08/27

    신규

  • 그룹컬럼이 특정컬럼의 소팅상태와 상호 동기화가 가능하도록 개선 sortBindColumnName
  • grid 헤더에도 celltip을 적용가능하도록 개선
    CelltipLocation프로퍼티 및 관련 예제 참조.
  • contextMenu 스타일 지정기능 추가
    contextMenu는 html로 구성되어있기 때문에 그리드 스타일개요룰을 따르지 않고 html css를 적용해야한다
        grid.setDisplayOptions({
           contextMenuStyles:{
                background : "rgb(247, 247, 247)",
                color: "#111",  //font
                separatorColor : "#777",
                hoveredColor: "#fff", //font
                hoveredBackground : "#555",
                inactiveColor: "#aaa",  //font
                fontFamily: "Tahoma", //font
                fontWeight: "normal", //font
                fontStyle: "normal"  //font
            }       
        });
    
  • 개선

  • 그룹컬럼 resize시 자식컬럼의 마지막컬럼만 resize되는 기능 추가 (onlyResizeLastChild)
        var columns = {
            type: "group",
            name: "group1",
            onlyResizeLastChild: true,
            columns:[...]
        };
        grid.setColumns(columns);
    
        var group = grid.columnByName('group1');
        group.setOnlyResizeLastChild(true);
    
  • asyncPaste 셀 붙여넣기 시 비동기로 붙여넣기가 가능하도록 개선
        grid.setOptions({
            edit: {
                asyncPaste: true
            }
        });
    
  • grid onPaste 이벤트 다중 셀 붙여넣기 시 붙여넣기되는 rows들을 인자값으로 넘기도록 개선
  • 엑셀다운로드 XLS 공격방지 개선 (시트에서 = 문자열로 시작되는 시트가 있을경우 = 문자열 제거) preventXLSAttack
  • checkbar에 showAll 옵션을 false로 변경 시 text가 있는 경우 text는 보여지도록 개선
  • 체크박스 컬럼 displayBox true 설정 시 나오는 box 색상을 설정할 수 있도록 개선
  • OS 텍스트,앱 배율을 크게 늘릴경우 그리드가 확대되어 표현되는 현상 개선
  • enterToTab 옵션 적용시 다음 row로 건너뛰는 기능 및 마지막 셀에서 최초 셀로 돌아오는 기능추가crossHomeWhenExitLast 옵션이 추가됨.
        grid.setOptions({
            edit: {
                crossHomeWhenExitLast: true
            }
        });
    
  • 컬럼의 ImageList를 동적으로 변경했을때 이미지객체를 즉시 적용하도록 개선
  • ListCellEditor를 가진컬럼에서 값을 keyin 으로 입력 후 list 요소 선택 시 선택이 되도록 개선
  • 엑셀 다운로드 시 셀에 들어가는 문자열들에 대한 가공 callback 추가
  • 그리드 붙여넣기 직전 붙여넣는문자열에 대한 가공 callback 제공 개선
  • 가로스크롤 이동 범위 변경 옵션추가
  • editor 옵션에 placeholder 추가
  • 오류

  • 그리드 엑셀 다운로드 시 Number Type형태의 컬럼에서 빈값인 셀이 존재할경우 오류 수정
  • 컬럼의 stylecallback에서 리턴한 borderstyle이 일부 적용되지 않는 오류 수정
  • dom버전 사용시 setStateWidth 를 0으로 사용할경우 오류발생 해결
  • groupby사용시 그룹된 데이터를 수정하면 그룹핑이 정상적으로 되지 않는 현상 해결
  • EditOptions의 erasable사용시 편집중에 delete키로 셀 데이터 전체가 삭제되는 현상 해결
  • 2depth 이상의 그룹 컬럼이 존재할때 마지막에 위치한 row 삭제 시 오류 발생 해결
  • charColumn이 포함된 그리드 엑셀 export시 오류 발생 해결
  • groupBy 사용 시 onEditCellUpdated 시점에 grid의 commit 호출 시 특정로우가 흰색으로 보이지 않는현상 해결
  • 2레벨 이상의 그룹컬럼에 merge가 존재하며 merge 컬럼이 위치가 두번째이상 위치에 있을경우 merge 셀 위치가 틀어지는문제 해결
  • 그리드 엑셀 다운로드 시 셀에 특수 화살표()가 포함돼있으면 오류 해결
  • onPaste 이벤트 리스너에서 false 리턴 시 에도 onEditRowPasted 이벤트가 발생하는 문제 개선
  • IE에서 컬럼의 크기가 그리드보다 큰경우 에디팅 시 에디터가 보이지 않는문제 해결
  • 그리드 엑셀 다운로드 시 컬럼이 856개가 넘어갈경우 엑셀이 정상적으로 다운로드 되지 않는현상 해결
  • Grid Block Selection과 컬럼영역이 겹쳐지는 문제 해결

v 1.4.5.16441- 2020/01/03

    신규

  • 엑셀출력시 시트명을 지정할수 있는sheetName 옵션이 추가됨.
        DataLudi.exportToExcel(grdMain, {
            taregt:  "local",
            fileName: "smart-datagrid.xlsx",
            sheetName: "시트명"
        });
    
    샘플 참조: ExcelExporting
  • 엑셀 출력시 제외시킬 컬럼이름을 배열형태로 지정하여 출력할수있는excludeColumns 옵션이 추가됨.
            DataLudi.exportToExcel(grdMain, {
                taregt:  "local",
                fileName: "smart-datagrid.xlsx",
                excludeColumns: ["col1","col2"]
            });
    
    샘플 참조: ExcelExportColumns
  • 숨겨진 컬럼을 모두 포함하여 엑셀내보내기를 할수있는 allColumns 옵션이 추가됨.
            DataLudi.exportToExcel(grdMain, {
                taregt:  "local",
                fileName: "smart-datagrid.xlsx",
                allColumns: true
            });
    
    샘플 참조: ExcelExportColumns
  • 서버로 전달되는 form태그가 iframe내에서 생성되어 전달되게 할수있는remoteActionIframe 옵션이 추가됨.
            DataLudi.exportToExcel(grdMain, {
                target:  "remote",
                url: 'excelDownload.do',
                fileName: "smart-datagrid.xlsx",
                remoteActionIframe: true
            });   
    
  • 하나의 엑셀파일에 여러개의 그리드를 시트별로 다운받을수있는multiExportToExcel 함수가 추가됨.
            new DataLudi.multiExportToExcel({
                target: "local",
                fileName: "multi-export.xlsx",
                targetGrids:[
                    {sheetName: '시트1', targetGrid: grdMain1},
                    {sheetName: '시트2', targetGrid: grdMain2}
                ] 
            });
    
    샘플 참조: ExcelMultiExport
  • 엑셀출력시 그룹푸터의 값을 변경할수있는groupFooterCallback 옵션이 추가됨.
            new DataLudi.GridExcelExporter().export(grdMain, {
                target: "local",
                fileName: "dataludi.xlsx",
                groupFooterCallback: function(rowGroupFooter, column, value){
                    if(value == null){
                        return "";
                    }else{
                        return "$" + value;
                    }
                }
            });
    
  • 엑셀출력시 서버측으로 전달할 파라미터를 Object로 구성하여 전달한다 remoteParams 옵션이 추가됨.
        new DataLudi.GridExcelExporter().export(grdMain,{
            target: "local",
            fileName: "smart-datagrid.xlsx",
            remoteParams: {
                _csrf : 'xxxxxxxxxxxxxx',
                param1: 'xxxxx'
            }
        });
    
    샘플 참조: ExcelExporting
  • 엑셀출력시 페이징을 사용하는 경우 화면상에 보이지 않는 데이터도 함께 내보기할수있는pagingAllItems 옵션이 추가됨.
    new DataLudi.GridExcelExporter().export(grdMain,{
        target: "remote",
        url: 'excelDownload.do',
        fileName: "smart-datagrid.xlsx",
        pagingAllItems: true
    });
    
    샘플 참조: ExcelExporting
  • 단일 데이터를 복사하여 붙여넣기 할때 블럭지정이 되어있으면 블럭지정된된 영역에 복사한 데이터가 모두 붙여넣기가 되는 pasteToSelection 옵션이 추가됨.
        grdMain.setEditOptions({
            pasteToSelection: true
        });
    
    샘플 참조: ClipboardPaste
  • CheckBar가 마우스 좌클릭을 통해서만 동작할수있는 checkedOnlyLeftClick 옵션이 추가됨.
        
    
    샘플 참조: CheckBar
  • 초기화 기능(데이터목록, 체크컬럼헤더, 체크바 헤더, 컬럼소팅, 필터) 추가됨. (initializeReuse)
            grdMain.initializeReuse();
    
  • lookupDisplay를 사용하는 컬럼에서 라벨값을 붙여넣기 할경우 value값으로 변경하여 값이 지정되는 labelToValueWhenPaste 옵션이 추가됨.
            grdMain.setEditOptions({
                labelToValueWhenPaste: true
            });
            //혹은
            grdMain.setOptions({
                edit:{
                   labelToValueWhenPaste: true
               }
            });
    
  • 멀티푸터 기능이 추가됨.(footer count)
    사용방법은 아래의 샘플을 참고한다.
    샘플 참조: ColumnFooter-Multi
  • onScrollToBottom 이벤트가 발생했을때 이를 구분할수있는 파라미터 추가.(onScrollToBottom)
    샘플 참조: LazyLoadData
  • canvasContext공유를 통한 메모리 개선 기능 (setCanvasContextShared)
    모든 그리드의 canvasContext를 공유해서 메모리 개선효과를 볼수있다. (자세한 내용은 문서 참고)
        DataLudi.setCanvasContextShared(true);
    
        var grdMain1 = DataLudi.createGridView("container");
        var grdMain2 = DataLudi.createGridView("container2");
    
  • 개선

  • cell스타일적용시 fixed셀에 color만 적용되지 않는 현상 개선.
        grdMain.body().setCellStyles({
            color:"#58d817", 
            background: "#ff00ffff"
        });
    
  • ColumnHeader에 말줄임 기능을 표현할수있는 기능이 개선됨.
    style의 textWrap에 "ellipsis" 를 설정하여 사용가능.
        var columns = [{
                "name": "Country",
                "fieldName": "Country",
                "width": "90",
                   "header": {
                             "text": "Country가나다라마바사ABCDEFG",
                             "styles":{
                                     "textWrap": "ellipsis"
                             }
                }
        }];
    
  • 단일 Row의 높이가 그리드보다 높은경우가 생기지 않도록 개선.
    현재 SMARTdatagrid는 스크롤의 최소 이동 단위가 한개row인데 만약 row자체가 그리드의 body영역보다 클경우 스크롤을 더 내릴수 없어
    단일 RowHeight가 그리드의 body영역보다 크면 body영역크기만큼으로 제한하도록 기능 추가
  • 편집 불가능한 셀에서 붙여넣기 할 경우 onpaste 이벤트가 동작하게 개선.
  • AutoFill 더블클릭시 셀 아래의 모든행들에 같은 값을 채워지게 하는 기능 추가.
  • appendRows 성능개선.
    데이터 10만건을 기준으로 속도가 Chrome: 2420ms -> 276 ms, IE: 8159 ms -> 369 ms으로 개선되었음.
  • 엑셀출력시 numberFormat이 GridFooter,GroupFooter에도 적용될수 있도록 개선.
  • 오류

  • 선택된 영역의 값들을 undefined로 초기화 해주는 eraseSelection 오류수정
    소팅,필터가 적용되어있는 상태에서 초기화될때 오류가 발생하는 현상 수정.
  • 단일셀에 붙여넣기시 수정불가능 상태에서 붙여넣기가 되는 현상을 되지 않도록 수정.
  • 그룹핑이 되어있는 상태에서 appendRows 시 그룹행의 카운트표시가 한개더 표시됬던 부분 수정.
  • DateCellEditor에서 datetimeFormatmask 동시에 사용시 값이 정상적으로 나오지 않는 현상 수정.
  • 컬럼 타입이 group이고 layout이 vertical인 경우 그리드의 fitRowHeight 호출 시 하단에 위치한 row가 height가 최소높이보다 작아지는 현상이 수정됨.
  • lookupItemsCallback사용시 키입력후 콤보박스의 값을 방향키로 이동후 선택할때 다른값이 선택되는 현상 수정.
    (마우스로 드랍리스트의 목록에서 직접선택할 경우에는 정상 동작)

v 1.4.4.16327 - 2019/01/31

    신규

  • 엑셀파일 내보내기시 지정한 컬럼만 다운로드 할수있는 exportColumns 옵션이 추가됨.
    다운로드 받을 컬럼의 이름을 배열형태로 지정하거나 columnLayout을 이용하여 컬럼의 배치를 일괄로 변경하여 다운로드가 가능하다.
        DataLudi.exportToExcel(grdMain,{
            target: "local",
            fileName:'grid.xlsx',
            exportColumns: ["OrderID" ,"CustomerID","Quantity","OrderDate"]
        });
    
    샘플 참조: ExcelExportColumns
  • 엑셀파일 내보내기시 타이틀을 지정할수 있는 workbookTitle,workbookSubTitle 옵션이 추가됨.
    workbookTitle,workbookSubTitle 각각의 속성은 ExcelWorkbookTitle class를 통해 생성된다.
        DataLudi.exportToExcel(grdMain,{
            target: "local",
            fileName:'grid.xlsx',
            workbookTitle:{
                titleText:"대출 현황 조회",
                height: 50,
                styles:{
                    fontBold: true,
                    fontSize: 30,
                    background: "#cdbebe"
                }
            }
        });
    
    샘플 참조: ExcelTitleExporting
  • CheckBar header에 텍스트를 넣을수 있는 headerText옵션이 추가되었다.
        grdMain.setOptions({
            checkBar: {
                headerText: "선택",
                width: 60
            }
        });
    
    샘플 참조: CheckBar
  • ColumnFilter에 필터 여부를 결정 지을수 있는 callback 옵션이 추가되었다.
  • ButtonVisibility에 수정가능상태에 따라 버튼을 표시할수있는 'editable' 상수 추가 추가됨.
  • 년-월을 선택할수있는 MonthCellEditor가 신규 추가됨.
        var columns = {
            name: "OrderDate",
            fieldName: "OrderDate",
            width: "130",
            editor: {
                type: "month",
                datetimeFormat :"yyyy/MM",
                dropDownPosition: "editor",
                minDate: new Date(1984,5)
            },
            styles: {
                    "datetimeFormat": "yyyy/MM"  
                }  
        },
        ...
        ];
        grdMain.setColumns(columns);
    
    샘플 참조: MonthEditor
  • TreeView에서 아이콘 클릭시 발생되는 onTreeIconClicked 이벤트가 추가됨.
  • ListCellEditor 에서 domainOnly true일 때 빈값을 허용할 수 있는 domainOnlyEmptyValueAllow 옵션이 추가됨.
  • fitRowHeight가 실행되더라도 즉시 화면을 그리지 않는 noRedraw 파라미터 추가.
  • CheckBar에 표현되는 셀의 모양을 이미지를 등록하여 표현할수있는 기능 추가.
    checkBoxImageList를 통해 이미지목록을 등록하고 인덱스를 지정하여 사용할수 있다.
        grdMain.registerImageList({
            name: "checkbar",  //아래의  checkBoxImageList에서 사용할 임의의 이름 등록
            rootUrl: "/repo/grid/resource/images/",
            items: [
                "default-checkbox.png",            //0
                "check-checkbox.png",              //1 
                "default-inactive-checkbox.png",   //2
                "check-inactive-checkbox.png",     //3
            ]
        });
        grdMain.setOptions({
            checkBar: {
                checkBoxImageList:'checkbar',
                defaultIconIndex :0,               //기본상태
                checkedIconIndex :1,               //체크된 상태
                defaultInactiveIconIndex :2,       //비활성화 기본상태
                checkedInactiveIconIndex :3,       //비활성화 체크상태
            }
        });
    
    샘플 참조: CheckBar
  • 화면에 보여지는 로우의 높이가 자동으로 최적화 될수있는 기능이 추가되었다. fitRowHeightWhenDisplay
    내부적으로 fitRowHeight 가 실행되면서 로우높이를 계산하여 처리한다.
    샘플 참조: RowHeights
  • RowIndicator의 셀상태를 이미지를 통해 표현 할수있는 기능 추가.
    indicatorImageList를 통해 이미지목록을 등록하고 인덱스를 지정하여 사용할수 있다.
        grdMain.registerImageList({
            name: 'indicatorIcons',
            rootUrl: "/repo/grid/resource/images/",
            items: [
                'rd_inserting.png',
                'rd_editing.png',
                'rd_focused.png'
            ]
        }); 
        grdMain.setOptions({
            edit:{
                insertable: true
            },
            rowIndicator: {
                indicatorImageList: 'indicatorIcons',
                insertingIconIndex: '0',  //insert키를 이용하여 행추할때
                updatingIconIndex: '1',  //cell데이터 편집시.
                focusedIconIndex:  '2',  //cell에 포커스가 변경됬을때
            }
        });
    
    샘플 참조: RowIndicator
  • CustomButton에 버튼의 enable,disable상태를 리턴하는 enabledCallback 기능이 추가됨.
  • 모바일 환경에서 셀편집시 근처에 보여지는 편집완료/취소를 할수있는 버튼을 숨길수있는 옵션이 추가됬다. showMobileEditCommand , showMobileEditCommandBar
        grid.setEditOptions({
            showMobileEditCommandBar: false,
            showMobileEditCommand: false
        });
    
  • 개선

  • 그룹컬럼이 여러개(약 90개) 있을경우 스크롤이 느려지는 현상이 개선됨.
  • 마우스 아래 있는 데이터행을 구분하는 mask를 설정하는 rowHoverMask 를 사용시 그리드에서 마우스가 빠졌을때 사라지게 개선됨.
  • ColumnHeader 우측에서 더블클릭시 컬럼너비가 조정되는데 이때
    onColumnResized 이벤트가 발생하도록 개선함.
  • ColumnHeaderSummary,ColumnFooter에서 텍스트의 수직 정렬 상태를 지정하는 lineAlignment 가 동작 가능하게 개선됨.
  • ColumnSeries 에서 차트 라벨에 표현되는 값을 numberFormat이 가능하게 개선됨.
  • Chrome 브라우저에서 스크롤이 있는 화면에서 그리드가 하단에 있을때 그리드의 특정 cell을 클릭하면 스크롤이 맨위로 올라가는 현상이 수정됨.
  • 데이터 붙여넣기시 문자에 " 가 포함되어 있을경우 개행이 정상적으로 되지 않는 현상 수정.
    엑셀상에서 아래와같이 두행으로 표현되어있을때 붙여넣기 할경우
    |a"|
    |b"|
    그리드상에
    |a" b"| 형태로 붙여넣기가 되는 문제 수정.
  • ColumnGroup_layout 이 vertical로 되어있을때 로우높이를 변경하는
    api가( setRowHeight, setRowHeight) 동작하지 않도록 구현되어 있었으나 vertical로 정렬되어있는 셀들의 높이를 고려하여 로우높이가 조절되게 개선됨.
  • CheckBar 선택 기능이 shift키를 이용하여 시작/끝영역을 선택/해제할수 있게 개선됨.(기본기능)
  • ImageCellRenderer에서 이미지가 뿌옇게 나오는 현상을 개선함.
  • Internet explorer 브라우저에서 셀편집완료시 렌더러에 편집전데이터가 잠시 보이는 현상 개선.
  • 오류

  • treeView에서 fitRowHeight 실행시 트리의 depth가 들여쓰기 된 부분만큼 너비가 계산되지 않아 로우 높이가 정상적으로 되지 않는 현상 수정.
  • TextWrap을 normal로 사용시 빈공백의 개행이 있을경우 줄 나눔이 되지 않는 현상 수정.
  • DataColumngroupLevel 이 2 이상일때 셀병합을 할 경우 셀이깨지고 정상적으로 그려지지 않는 현상 수정.
  • 그리드의 사이즈가 고정적이지 않을때 Internet explorer 브라우저에서 라사이즈시 그리드를 안보이게 줄였을경우 오류가 발생하는 현상 수정.
    Canvas의 drawImage함수에 전달되는 파라미터가 마이너이스인 경우에 Internet explorer 브라우저에서 오류가 발생되는 부분이 수정됨.
  • 컬럼리사이즈 오류.
    fixedColumnCount을 지정하고 GridFitStyle을 fill로 지정한 상태에서 리사이즈시 다른컬럼의 너비가 변경되는 현상을 수정함.
  • rowFocusMask 사용시 가로스크롤 이동으로 선택된 셀이 보이지 않을경우 사라지는 현상 수정
  • MaskCellEditor에서 한글 입력시 커서가 뒤로 가는 현상 수정.
  • erasable 사용중 편집중에 delete키를 누르면 오류나는 현상 수정.
    내부적으로 존재하지 않는 옵션인 erasableWhenEdit 을 호출해서 오류가 발생함.
    erasableWhenEdit이 추가되고 기능이 구현되었다.
  • DateCellEditor의 minDate,maxDate 지정시 범위에 벗어난 값을 달력에서 선택할수있게 오동작 하고있는 부분이 수정됨.
  • excel export 시 오류가 발생하는 현상 수정.
    createFooterCallback를 사용하고 첫번째 컬럼의 style에 textAlignment가 center인 경우에만 발생함.
  • excel export 시 오류가 발생하는 현상 수정.

    ColumnGroup을 사용시 ColumnSummaryspanNext, spanPrev 속성으로 ColumnSummary영역을 머지 시켰을 경우 오류나는 현상이 수정됨.
  • selectStyle 이 'single_row','rows','columns','single_column' 일경우 마지막 로우의 마지막셀에서 편집완료가 되지 않는 현상 수정.
  • Mac os의 safari 브라우저에서 DateCellEditor,NumberCellEditor 의 셀값이 복사가 안되는 현상 수정.
  • checked 상태의 행들의 index를 배열로 리턴하는 getCheckedRowIndices를 셀편집중인 상태에서 호출시 같은 index가 두개 나오는 현상 수정.

v 1.4.3.16201 - 2018/05/31

    개선

  • rowFocusMask 포커스(선택)된 셀의 데이터행을 구분하는 mask를 설정하는 기능추가.
    선택된 셀의 로우 스타일을 지정할수 있다.
    샘플 참조
  • CheckCellRenderer ctrl키를 누른상태에서 space를 누르면 동작하지 않게 개선.
  • 모바일환경에서 CheckCellRenderer의 checkbox가 체크되지 않는 현상 수정.
  • DateCellEditormask editor 기능 추가.
    DateCellEditor가 MaskCellEditor를 상속받게 변경.
    샘플 참조: DateEditor
  • 그리드 포커스 아웃 기능 추가. EditOptions - focusoutToTab
    샘플 참조: EditKeys
  • keyCombinationToClicked옵션을 통해 ctrl + space 키조합으로 onDataCellClicked 이벤트가 발생하게 기능 추가
  • NumberCellEditor 한글입력 방지 기능 개선.
  • dataType이 text일 경우 정렬을 결정할수있는 compareTextCallback 기능 추가.
  • mergeCallback 성능 개선.
    필요 이상으로 많이 호출되는 부분을 데이터 개수와 머지된 컬럼수 만큼 발생되게 개선되었습니다.
  • IE에서 엑셀 다운로드시 열기버튼이 활성화 되지 않는 현상 개선됨.
  • onDataCellClicked 마지막 셀 클릭에 대한 기능개선.
    그리드 최하단의 셀의 일부가 보이는 경우 해당 셀을 클릭하면 셀전체가 보이도록 스크롤이 움직이며 이때 onDataCellClick가 호출되지 않는 현상을 개선.
  • 편집중인 editor에서 커서가 벗어났을경우 commit처리되고 editor를 숨기는 기능.commitWhenBlur으로 제공된다.
  • 오류

  • unregisterCellStyle 사용시 오류 발생 수정.
  • 엑셀데이터를 두개이상의 로우에 붙여넣기시 onEditRowPasted이벤트에 newValues가 정상적으로 담겨지 있지 않는 현상 수정.
  • CheckBar draggable사용시 checkableCallback에서 false를 리턴해도 체크되는 현상 수정.
  • group컬럼이 중첩으로 존재하는 컬럼(3레벨 이상)에 대해서 merge 기능이 정상적으로 동작 하지 않는 현상 수정.
  • 하나의 컬럼에 엑셀의 빈값 붙여넣기시 빈값이 적용되지 않는 현상 수정.
  • 모바일환경에서 컬럼 헤더 클릭시 onColumnHeaderClicked 이벤트가 발생하지 않는 현상 수정.
  • grid fitstyle을 "evenFill"로 하고 컬럼 너비를 줄일 경우 컬럼이 사라지는 현상 수정.
  • 정렬 후 Autofill 실행 시 오류 발생하는 부분 수정.
  • header의 summaryCallback 함수에서 문자열을 리턴 시 값이 표시되지 않는 현상 수정.
  • GridExportOptionsshowProgress 옵션 true, async 옵션 true 지정 시 행이 없는 그리드의 경우 progress bar가 사라지지 않는 현상 수정.
  • 데이터가 화면에 모두 보여진 상태에서 데이터 셋팅을 두번이상 할경우 onScrollToBottom 이벤트 발생하는 현상 수정.
  • RowGroup 지정 시 appendRows하게 되면 오류 발생하는 부분 수정.
  • summary의 소계, 합계의 특정숫자가 포메팅이 정상적으로 되지 않는 현상 수정.
    (10.00과 같은 데이터의 numberFormatter가 사지는 현상)
  • IE브라우저의 NumberCellEditor 에서 커서를 중간에 두고 셀 편집을 할 경우 포커스가 마지막으로 이동하는 현상 수정.
  • maskEditor 문자일경우 공백 허용시 공백문자가 undefined로 나오는 현상 수정.
    maskEditor를 "aa-{aa}" 와 같이 공백 포함,패스워드 방식 형식으로 지정했을때 입력되지 않은 커서의 위치의 값이 undefined로 되는 현상.
  • MaskEditor의 패스워드 문자(*)로 표현시 undefined로 변경되는 현상 수정.
  • MergedGrouping시 그룹 헤더에 그룹을 펼치고 닫는 아이콘 버튼을 클릭 오류나는 현상 수정.(expander)
  • fillLookupRows의 value로 지정되는 값이 숫자일경우 소팅되는 현상 수정.<
  • CheckBar의 속성중 exclusive 를 true로(라디오 버튼모양) 사용시 화면에 보이는 로우만 선택/해제되는 현상 수정.
    exclusive 는 하나의 로우만 선택되게 하는 옵션이나 선택이 되어있는 상태에서 필터에의해 숨겨질 경우 다른 로우를 선택했을때
    이전에 선택되어있던 로우의 체크상태가 풀려야 하는데 화면에 보이지 않는 로우가 해제되지 않으면서
    필터를 초기화했을떄 두개가 선택되는 현상 수정.

v 1.4.2.16136 - 2017/12/08

  • 크롬 63.0.3239.84 버전부터 removeEventListener관련 오류가 발생함.
    주로 ListEditor를 닫았을때 발생하며 해당 내용을 긴급패치함.

v 1.4.2.16122 - 2017/11/16

  • 셀 Editor 활성 화 시 버튼 hover 상태가 비 정상적으로 작동되는 현상 수정
  • TextWrap에 ellipsis 속성 추가
  • TextWrap이 normal 상태일 때 줄바꿈이 잘못되는 현상 수정
  • 헤더의 TextWrap이 explicit일때 텍스트가 정렬, 필터 핸들러를 가리는 현상 수정
  • 중요한 셀을 표시하는 celltip기능 추가
  • MultiLineCellEditor의 데이터가 없을 때 컬럼사이즈보다 크게 활성화 되는 현상 수정
  • fitRowHeight가 자동으로 실행되는 fitRowHeightWhenUpdated 설정 추가
  • MultiLineCellEditor value설정 시 해당 컬럼에 데이터가 없을경우 잘못 merge되는 현상 수정
  • 트리그리드에 exportToCsv 기능 추가
  • ButtonCellRenderer에 위치를 조정 할 수있는 imageVerticalAlign, imageHorizontalAlign속성 추가
  • 파이차트에서 라벨 텍스트를 변경할 수 있는 labelTextCallback 콜백 함수 추가
  • 셀 붙여넣기 시 checkDiff속성이 작동하지 않는 현상 수정
  • 셀 상태가 normal인 경우 Enter키를 이용해 commit이 작동하지 않는 현상 수정

v 1.4.1.16081 - 2017/09/11

  • 셀 Editor 활성 화 시 버튼 hover 상태가 비 정상적으로 작동되는 현상 수정
  • Mask Editor에서 한글입력 시 ctrl+v, ctrl+z 에러 수정
  • Mask Editor에서 한글입력 시 쉬프트 + 우클릭시 잘못된 문자열이 입력되는 현상 수정
  • Mask Editor에서 한글입력 시 키를 여러개를 동시에 입력할때 커서가 움직이고, 이때 Ctrl+A를 입력하면 데이타가 사라지는 현상 수정
  • Mask Editor에서 키패드(+, -)로 입력 시 잘못된 문자열이 입력되는 현상 수정
  • 셀 수정 중 header를 클릭했을 경우 sorting 처리가 안되는 현상을 위해 commitWhenSort속성 추가
  • tree그리드의 excel 출력 시 피벗 방향 이 아래로 향하도록 수정
  • chrome 61버전에서 엑셀 출력 안되는 현상 수정
  • Fixed row count가 0보다 클 때 onScrollToBottom 이벤트 발생하지 않는 현상 수정
  • VMWare 등 가상 머신 win7 ie 에서 동작하지 않는 문제 수정
  • 메모리 해제 할 수있도록 윈도우의 eventListeners를 remove 할 수 있는 함수 추가
  • 체크 셀 수정 시updateByCell속성으로 셀단위 커밋이 안되는 현상 수정

v 1.4.0.16004 - 2017/05/29

v 1.3.9.15191 - 2017/02/01

  • 컬럼 Auto 필터 관련 에러들 개선.
    Datetime 필드의 필터 scale을 0으로 지정하면 필터 항목 구성 중 예외 발생.
    Number 필드의 필터에 undefined 값이 존재하면 두번째 항목 사라짐.
    Datetime 필드의 필터에 undefined 값이 존재하면 항목 구성 중 예외 발생.
    동일 필드에 연결된 복수 컬럼에 별도의 auto filter가 선택되고 한 쪽 필터 이상에서 모두 선택되지 않은 경우 필터링 잘못됨.
    관련 예제 참조.
  • TreeDataSet.getJsonRows에서 parent 매개변수가 null(root)이 아니고 level 매개변수가 1 이상일 때 에러 발생 문제 개선.
  • Group by 상태에서 필터링 적용 후, GridBase.onDescendantRowCountChanged 이벤트가 발생하지 않는 문제 개선.
  • 빈 그리드에서 문자 키들을 입력하면 에러 발생.
  • RowFilter.expression에서 "values" 변수 작동하지 않는 문제 개선.
  • GridBase.onPaste, GridBase.onCopy 이벤트 추가.
  • GridBase.onEditCanceled 이벤트에 edited 매개변수 추가.
  • GridBase.getVisibleColumns, GridBase.getHiddenColumns 메소드 추가.
  • 이미 동일한 이름의 컬럼 필터가 존재할 때 발생하는 에러의 "Column filter already exists" 에러 문자열 localization.

v 1.3.8.15169 - 2017/01/17

v 1.3.7.14909 - 2016/12/22

v 1.3.6.14818 - 2016/12/05

  • 각 예제 페이지 아래쪽 소스보기 옆에 추가되는 JSP 링크를 클릭하면 Jsp로 작성된 예제 창 표시됨.
  • DLBase.assign 메소드 개선. source 매개 변수를 Json 객체로 지정할 때, 값이 undefined인 속성들도 반영되도록 변경.

    데이터필드 및 컬럼 설정 등에서 값을 undefined 로 지정한 경우, (기존에는 무시됐지만) undefined 값으로 속성값이 변경되므로 기존 설정들에 대한 검토가 필요.

    특히, Types 목록에 있는 열거형 상수를 사용하는 코드에서 존재하지 않는 상수값을 사용한 경우 undefined 값이 되므로 에러 없이 무시되지만, 이 버전 이후에는 "Invalid 상수 value: undefined" 예외가 발생할 수 있음.

  • MaskCellEditormask를 지정하지 않으면 에러 발생하는 문제 개선. mask를 지정하지 않으면 기본 text 편집기처럼 동작하도록 함.
  • 트리뷰 행이나 그룹행이 펼쳐지지 않은 상태에서 applyDynamicStylestrue로 지정하고 excel 내보내기를 할 때 발생하는 문제 개선.
  • DataField.baseYear를 지정하지 않은 상태에서 시간값만 저장하면 잘못된 값으로 저장되는 문제 개선. baseYear를 지정하지 않으면 2000으로 설정되도록 함.
  • Excel 2007 버전에서 트리뷰나 행 그룹 내보내기 시 에러 발생하는 문제 개선.
    출력 옵션의 legacy 속성을 true로 설정한다.
  • 엑셀 비동기 출력시 행그룹과 트리 레벨이 구분되지 않고 출력되는 문제 개선.
  • DisplayOptions.hideDeletedRows 설정 변경 후 GridBase.onRowCountChanged 이벤트가 발생하지 않는 문제 개선.
  • GridBase.autoFill.enabledtrue일 때, 데이터행이 존재하는 상태에서 GridDataSet.clearRows 호출 시 에러가 발생하는 문제 개선.
  • DisplayOptions.showTooltip이 true(기본값)일 때만 컬럼 커서가 적용되는 문제 개선.
  • GridBase.maxRowCount가 행 추가/삭제/붙여넣기 등 데이터 변경 후 적용되지 않는 문제 개선.
  • Mac OS Safari에서 그리드 크기 변경 중 깜빡거림 개선.
  • Mac OS 시에라 버전 safari에서 마우스 드래깅되지 않는 문제 개선.
  • 그리드 footer 및 summary 셀 클릭 시 선택 상태가 변경되는 문제 개선.
  • DOM 버전 병합셀에서 일정 위치 아래에서 셀버튼 및 편집기 버튼들이 표시되지 않는 문제 개선.
  • 그리드body 스타일background가 지정된 경우 선택 셀의 반투명 배경이 잘못 그려지는 문제 개선.
  • DataLudi.setDebug(true)를 호출하는 시점에 데이타루디 모듈 로드 시간 로그를 출력하도록 함.
  • DisplayOptions.selectDisplay 속성 추가. SelectionDisplay.CELL로 지정하면 선택 영역을 마스크로 표시하는 대신, 각 데이터셀을 GridStyles.selectedBackground, GridStyles.selectedColor, GridStyles.shapeSelectedColor 등을 이용해서 표시한다. 관련 예제 참조.
  • SparkLineRenderer 개선 및 변경. lineColor 기본값을 '#808080'으로 변경하고, *null*이나 *undefined*로 지정하면 컬럼 스타일의 line 속성을 사용하도록 함.
    selectedLineColor 속성 추가.
  • GridBody.styleCallack 속성 추가.
  • 특정 데이터셀 위에서 표시되는 커서 모양을 리턴하는 DisplayOptions.cursorCallback 속성 추가.
  • DataField.readCallback 속성 추가 (잘못 공개된 기능으로 폐기됨. 사용 불가.)
  • 그리드뷰에서 개별 그리드행을 감출 수 있도록 함.
    GridView.setHidden, GridView.setHiddenRows, GridView.isHidden, GridView.getHiddenRows, GridView.unhideAllRows 메소드들 추가.
    GridView.hiddenRowCount 속성 추가. 관련 예제 참조.
  • DisplayOptions.mergedSelection 속성 추가. true면 병합셀 단위로 선택 영역이 지정됨.
  • DisplayOptions.showSingleSelection 속성 추가. 단일 셀 선택 시에도 선택 mask 등 선택 상태가 표시될 수 있도록 함.
  • RowGroup.createFooterCallback 속성 추가. 행 그룹 시 그룹행별로 footer 생성 여부를 지정할 수 있도록 함.
  • RowHoverMaskExtent.CELL 추가. 관련 예제 참조.
  • 컬럼 이동 후 발생하는 GridBase.onColumnParentChanged, GridBase.onColumnMoved 이벤트 추가.
  • Ctrl(Cmd)+Up/Down 키로 포커스셀 위치 변경 없이 한 행씩 상하 스크롤되도록 함.
  • Alt+Up/Down 키 입력시 병합셀 단위로 상하 이동하도록 함.

v 1.3.5.14627 - 2016/11/07

v 1.3.4.13705 - 2016/09/28

v 1.3.3.13553 - 2016/09/19

v 1.3.2.13215 - 2016/09/05

v 1.3.1.12834 - 2016/08/23

v 1.3.0.12768 - 2016/08/16

v 1.2.9.12416 - 2016/07/06

v 1.2.8.11839 - 2016/06/20

  • 수평 스크롤된 상태에서 컬럼 정렬 후 포커스가 있는 컬럼 표시를 위해 자동 스크롤되는 문제 개선.
  • Mac Multilie 편집기에서 엔터키 입력 시 빈 줄이 추가되는 문제 개선.
  • Series 및 Label 컬럼의 텍스트가 Clipboard Copy에 포함되도록 개선.
  • 자식 컬럼이 둘 이상인 수직 컬럼그룹이 포함되지 않는 제한된 조건에서 데이터행 별로 별도의 높이를 가질 수 있도록 함. 예제 참조. DisplayOptions.variableRowHeight 속성 추가. GridBase.fitRowHeight 메소드 추가.
  • Number 편집기에 minValue, maxValue 속성 추가. 예제 참조.
  • RowHoverMaskExtent에 RowIndicator 영역을 포함하는 상수 추가. 예제 참조.

v 1.2.7.11661 - 2016/06/12

  • 텍스트 렌더러가 아닌 렌더러 셀에서 더블클릭 등으로 컬럼 너비 자동 계산할 때 발생하는 오류 개선.
  • 스크롤바의 시작 위치, 바 너비, 버튼 위치 및 색상 등을 설정할 수 있도록 함. ScrollBar 클래스와 예제 참조.
  • Row hover mask 추가. 예제 참조.
  • 이미지 렌더러 예제 추가.

v 1.2.7.11601 - 2016/06/10

v 1.2.6.10905 - 2016/05/19

  • GridDataSet.exportToJson, exportToCsv 메소드 추가.
  • EditOptions.crossWhenExitLast와 반대 방향으로 동작하는 EditOptions.crossWhenExitFirst 속성 추가.
  • 날짜 편집기 달력에서 선택 불가능한 영역을 Holidy 객체들로 지정할 수 있도록 함.
  • EditOptions.alwaysSorting 속성 추가. false로 지정하면 정렬 상태와 관련없는 데이터셀 값이 변경되는 경우 내부 정렬을 실행하지 않는다.
  • 한 행의 복수 셀에 붙여넣기 할 때 마지막 셀에만 값이 전달되는 버그 개선.

v 1.2.5.10721 - 2016/05/02

v 1.2.4.10470 - 2016/04/19

v 1.2.3.10273 - 2016/04/11

  • 동적 스타일 Excel 내보내기 구현. 새로 추가된 GridExportOptions.applyDynamicStyles 를 true로 지정하면 각 셀들에 적용된 모든 동적 스타일이 엑셀에 반영된다.
  • 계산 컬럼셀에서 onDataCellClicked, onDataCellDblClicked 이벤트 발생하지 않는 문제 해결.
  • Header cell의 기본 스타일 중 paddingBottom을 2에서 3으로 변경. 기존 그리드에서 명시적으로 높이를 지정하지 않은 경우 Header의 높이가 1 증가한다.
  • TreeView에서 계산 컬럼, 시리즈 컬럼 cached 속성 버그 해결.
  • 크롬 브라우저에서 ListCellEditor 가 최초 열릴 때 리스트 너비가 잘못 되는 문제 해결.

v 1.2.2.10093 - 2016/04/03

  • 그리드 상단의 Row Grouping 패널 메뉴에 그룹 필드를 추가/삭제할 수 있는 메뉴 표시.
  • ColumnGroup의 footer나 summary가 표시될 때 text 속성 값이 표시되도록 개선.
  • 수직 스크롤바가 없을 때 Wheel 이동이 수평 스크롤이 되도록 함. DisplayOptions.horzWheelDelta 속성 추가.
  • 병합모드 Row Grouping 에서 top 이 스크롤된 상태의 그룹행을 collapse할 때 collapse된 그룹행이 표시되도록 개선.
  • LabelColumn이 excel exporting 되지 않는 문제 해결.
  • GridDataSet.clearRowStates에 states 매개변수 지정하는 경우 버그 해결.

v 1.2.1.9791 - 2016/03/07

  • 대표(위임) 컬럼 속성 추가. 헤더, 푸터, 그룹 푸터 등에서 컬럼 그룹의 모든 자식 컬럼 셀들을 표시하는 대신 대표 컬럼 하나만 표시되도록 한다. ColumnGroup.headerDelegate, ColumnGroup.footerrDelegate 등 Api 참조. 대표 컬럼 예제 참조.
  • 유도(계산) 필드 추가. 다른 일반 필드들의 값들로 연산되어 저장되는 필드. DerivedField계산 필드 예제 참조.
  • 그리드 헤더 바로 아래 HeaderSummary 영역에 컬럼 푸터와 마찬가지로 컬럼별 합계 등을 표시할 수 있다. Column Header Summary 예제 참조.
  • 시그널바 렌더러가 연속 값을 표시할 수 있도록 개선. SignalBarCellRenderer.detailed 속성 참조.
  • 사용자가 check all을 클릭할 때, check할 행들을 지정할 수 있는 CheckBar.checkAllCallback 속성 참조.

v 1.2.0.9349 - 2016/02/15

  • RowGroup.mergedWhenUpdating 속성 추가.
  • Ctrl or Shift + insert 로 트리 행 추가시 최초 편집기가 한 행 위에 표시되는 버그 해결.

v 1.1.13.9129 - 2016/02/01

  • 계산 컬럼 추가.
    컬럼의 valueType 속성으로 자료형이 결정.
    cached: 값을 보관. 기본 false.
    filtering, sorting, grouping, summary 할 수 없음. (operating 필요하면 계산 필드(예정) 사용)
    병합, 합계 계산을 할 수 없으며 cellStyle을 지정할 수 없음.
    컬럼 생성 정보 type을 "calced"로 지정.
  • Label 컬럼 추가.
    변하지 않는 text를 표시하는 컬럼으로 다른 컬럼의 label로 사용 가능.
  • DisplayOptions.focusable 속성 추가. false면 마우스로 셀 선택 안 됨. 기본값은 true.
  • SeriesTextCellRenderer 가 텍스트를 표현하지 못하는 버그 해결.
    SeriesColumn.cached 가 true일 때 값을 표현하지 못하는 버그 해결.

v 1.1.12.8693 - 2016/01/22

  • GridBase.setCellStylesRows 메소드 이름을 loadCellStyleRows로 변경.
  • ColumnGroup.hiddenChildHeaders -> childHeadersVisible
    ColumnGroup.hiddenChildHeaderSummaries -> childSummariesVisible
    ColumnGroup.hiddenChildFooters -> childFootersVisible
    로 각각 속성 이름 변경.
  • OperateOptions.triStateSorting 속성 추가. false면 두 상태 정렬. true면 정렬하지 않는 상태를 포함. 기본값은 true.
  • IconCellRenderer의 iconLocation 속성이 잘못 적용되는 문제 해결.
  • DOM 버전에서 선택 완료 후 선택 영역 경계선이 그려지지 않는 문제 해결.

v 1.1.11.8603 - 2016/01/05

  • TextWrapMode 상수를 TextWrap 으로 이름 변경.
  • ColumnHeader.sortOrderVisible 속성을 sortOrderVisibility로 이름 변경.
  • AutoFill 드래깅 중 영역 밖으로 그려지는 문제 해결.

v 1.1.9.8422 - 2015/12/16

v 1.1.8.8387 - 2015/12/14

v 1.1.7.8238 - 2015/12/11