본문 바로가기
Nexacro

[Nexacro] 데이터셋(Dataset) '복사' 관련 메소드 정리

by bjgu97 2021. 11. 18.
반응형

copyData : 현재 데이터셋에 지정한 데이터셋의 데이터(Row)를 복사하는 메소드.

createFormat : 그리드와 바인딩된 데이터셋의 칼럼 정보를 기준으로 새로운 포맷을 생성하는 메소드

this.dataset2.copyData(this.dataset1);
this.grid2.creatFormat();

 

 

 

필터링된 데이터만 복사하기

this.dataset2.copyData(this.dataset1, true); // 필터 된 데이터만 복사

 

 

입력, 수정, 삭제한 정보 복사하기

assign : '현재 데이터셋'에 '지정한 데이터셋'의 row, column 정보와 모든 데이터를 부여하는 메소드

this.dataset2.assign(this.dataset1); // dataset2에 dataset1의 모든 정보와 데이터 부여
this.grid2.createFormat(); // 그리드를 새로운 포맷으로 생성

 

cf) copyData VS assign
copyData : 데이터만 복사
assign : 행 타입부터 열 정보까지 모두 다 복사

 

특정 조건의 row만 복사하기

findRow : 특정 칼럼값이 전달된 값과 일치하는 첫 번째 row의 인덱스를 반환하는 메소드.

              findRow(COL_ID, VAL)

copyRow : 현재 데이터셋의 특정 데이터(row)를 '지정한 데이터셋'의 데이터(row)로 갱신하는 메소드

               copyRow(N_TO_ROW, DATASET, N_FROM_ROW, [STR_COL_INFO])

var nFromRow = this.dataset1.findRow("CO_ID", "K040"); // 회사번호가 K040인 첫 번째 row의 인덱스
var nToRow = this.dataset2.addRow();
this.dataset2.copyRow(nToRow, this.dataset1, nFromRow); // nFromRow 인덱스의 데이터를 dataset2로 복사

 

 

특정 칼럼만 복사하기

copyRow의 네 번째 인자인 STR_COL_INFO : 매칭시키는 칼럼 정보 설정;

형식: 'TO_COLUMN_ID1=FROM_COLUMN_ID1, TO_COLUMN_ID2=FROM_COLUMN_ID2"

var sCol = "EMPL_ID=EMPL_ID, FULL_NAME=FULL_NAME";
this.dataset2.copyRow(nToRow, this.dataset1, nFromRow, sCol); // 4번째 인자로 설정한 칼럼 정보

댓글