SMART datagrid v1.4 > Classes > GridDataSet

[ grids ver.1.3.8]   Back  Forward

DataLudi.GridDataSet.filterRows  method

filter 매개변수에 지정한 수식이나 콜백함수에 일치하는 데이터행들의 인덱스를 배열로 리턴한다. 

콜백으로 지정하는 경우 아래와 같은 매개변수가 전달되고, 결과에 포함되는 행일 경우 true를 리턴해야 한다. 

function (ds:GridDataSet, row, count): Boolean;

row는 현재 검토하는 데이터행 번호, count는 현재까지 추가된 행 수이다. 

수식에서 사용할 수 있는 변수 목록은 아래 테이블에 나열되어 있다. 

function filterRows (filter: String|Function, maxCount: Integer): [Integer];
Returns
[Integer]
Parameters
filter - String|Function. required.
maxCount - Integer. 기본값은 -1.
리턴되는 배열에 포함될 최대 행 개수. 지정하지 않거나 0보다 작은 값이면 해당되는 모든 행을 리턴한다.
Table-1  expression 변수들
변수설명
'values각 필드의 값을 필드명이나 인덱스로 가져온다.
'row'계산 중인 데이터행 인덱스.
Code -1
    // 회사명이 'a'로 시작하고, 수량이 100 보다 큰 행들
    var rows = ds.filterRows(function (ds, row, count) {
        return ds.getValue(row, 'country').indexOf('a') == 0 && ds.getValue(row, 'qty') > 100;
    });
    rows = grid.getRowsOfDataIndices(rows);
    grid.checkAll(false);
    grid.checkRows(rows);
Code -2
    // 수량이 100 보다 큰 행들을 최대 10개 가져온다.
    var rows = ds.filterRows("values['qty'] > 100", 10);
    rows = grid.getRowsOfDataIndices(rows);
    grid.checkAll(false);
    grid.checkRows(rows);
See Also
findRows
findRow
Examples
GridDataSet Rows