SMART datagrid v.1 > 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);
}