SMART datagrid v1.4 > Classes > GridDataSet
매개변수 where로 지정한 조건에 맞는 데이터행의 값들을 newValues로 전달된 값들로 수정한다.
where는 수식 문자열이거나, 콜백함수일 수 있다. newValues는 변경하고픈 필드들이 포함된 json 객체다. 각 필드의 값에는 필드값을 리턴하는 콜백함수가 지정될 수 있다.
checkDiff가 true이면 newValues의 값과 기존 필드 값을 비교해서 하나 이상의 필드 값이 다른 경우에만 행을 수정한다. strictDiff가 true이면 DataField.equalValues로 비교하고, sameValues로 비교한다. noState가 true면 데이터행들의 상태를 변경하지 않는다.
변수 | 설명 |
---|---|
'row' | 데이터행 인덱스. |
'values' | 필드 값. 'values[field]'. field는 드 필드인덱스나 필드명으로 지정할 수 있다. |
'state' | 데이터행 상태. CREATED는 'c', UPDATED는 'u', DELETED는 'd' CREATE_AND_DELETED는 'x'. |
// where에 판정식을 넘긴다.
dataset.updateValues(
"values['flow'] == 'import'", // where
{ amount: 100, active: false }, // newValues
false, false, false);
}
// where에 callback을 지정한다.
dataset.updateValues(
function (ds, row, values) { // where
retrun values[0] == 'import';
},
{ amount: 100, active: false }, // newValues
false, false, false);
}
// 필드 값에 판정식을 넘긴다.
dataset.updateValues(
"values['flow'] == 'import'", // where
{ // newValues
amount: 100,
active: function (ds, row, field) {
if (ds.getValue(row, 0) == 'import') {
return true;
}
return false;
}
},
false, false, false);
}