롤백
loadData() 함수 등으로 데이터셋을 처음 가져올 때나 혹은 데이터셋이 변경된 후 특정 시점(savePoint)에, DataProvider에 저장되어 있는 데이터셋의 전체 복사본을 별도로 저장해 두고 이 후에 이 값들로 DataProvider를 복원(rollback) 시킬 수 있습니다.
pivot, grid, 피벗, 필터, filter
pivot, export
pivot, style, callback, styleCallback
pivot, value, getCellValue
pivot, pivotFields, getPivotFields
rollback함수는 savePoint로 저장한 데이터복사본을 이용하여 DataProvider를 복원합니다.
지정된 savePoint로 데이터를 복원하면 이후의 DataProvider savePoint들은 삭제됩니다.
최초복제된 데이터셋은 rollBack을 이용해서 복원은 할수 있지만 삭제를 할수 없기 때문에 DataProvider clearSavePoints 를 이용하여 삭제합니다.
savePoint를 지정하지 않으면 최초복제로 복원됩니다.
1
2
3
4
5
6
//savePoint 생성
dataProvider.savePoint(true);
//롤백
dataProvider.rollback(savePoint);
//savePoint 초기화
dataProvider.clearSavePoints();
현재 row의 RowState를 함께 저장합니다.
복원시점 만들기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//복원시점 만들기
$('#btnSavePoint').click(function() {
gridView.cancel();
dataProvider.savePoint($("#chkStates").is(":checked"));
refreshPoints();
});
//데이터 복원하기
$('#btnRollBack').click(function() {
var point = $("#listPoints").val();
gridView.cancel();
dataProvider.rollback(point); // point를 생략하면 최초 복제로 복원
refreshPoints();
});
//savePoint 초기화
$('#btnClearPoints').click(function() {
dataProvider.clearSavePoints();
refreshPoints();
});
function refreshPoints() {
var points = dataProvider.getSavePoints();
var list = $("#listPoints");
list.empty();
$.map(points, function (c) {
$("<option />", { value: c, text: "savePoint_" + c }).appendTo(list);
});
}