RealGrid2 가이드
CRUD
행/셀 데이터 가져오기

그리드의 값 가져오기

GridView, DataProvider의 여러 함수를 통해 데이터 셀 및 행들의 값을 가져올 수 있습니다.
그리드가 편집중이 아니라면 기본적으로 같은 값을 반환합니다.

특별한 경우가 아니라면 dataProvider에서 값을 가져와서 사용합니다.

dataProvider에서 사용하는 index는 dataRow, GridView에서 사용하는 index는 itemIndex 입니다.
이 두 index는 처음 데이터 로드시 차이가 없으나 소트, 필터링, 그룹핑시에는 차이가 발생 합니다.
dataRow는 처음 데이터가 로드된 이후 행 삽입, 삭제가 없는 경우 변경되지 않습니다. (소트시 화면에 보이는 순서와 차이가 발생)
itemIndex는 사용자 눈에 보이는 순서 입니다.

dataProvider에서 값 가져오기

현재 포커스 위치의 dataRowfield값에 해당하는 value 값을 가져올 수 있습니다.
getJsonRow(), getOutputRow()에서 날짜 데이터가 어떻게 반환되는지 확인해보세요.

아래 그리드는 이름으로 정렬되어 있습니다.

getValue

var current = gridView.getCurrent();
var value = dataProvider.getValue(current.dataRow, current.fieldName);
alert("dataRow: " + current.dataRow +  ", " + "field: " + current.fieldName + ", " + "value: " + value);

getValues

한 행의 필드값들이 순서대로 들어있는 Array로 가져올 수 있습니다.

var current = gridView.getCurrent();
alert("dataRow: " + current.dataRow + ", " + dataProvider.getValues(current.dataRow));

getJsonRow

한 행의 값을 Json객체로 가져올 수 있습니다.

var current = gridView.getCurrent();
var jsonData = dataProvider.getJsonRow(current.dataRow);
alert("dataRow: " + current.dataRow + ", " + JSON.stringify(JsonData));

getOutputRow

설정된 옵션에 맞는 한 행의 값을 Object로 가져올 수 있습니다.
options는 데이터를 반환내는 방식 설정 입니다.

var options = { datetimeFormat: "yyyy-MM-dd" };
var current = gridView.getCurrent();
var outputRowData = dataProvider.getOutputRow(options, current.dataRow);
alert("dataRow: " + current.dataRow + ", " + JSON.stringify(outputRowData))

getRows

여러 행의 데이터를 Array의 Array로 가져올 수 있습니다.
startRow는 기본 0이며 0보다 작으면 첫번째 행부터 가져옵니다.
endRow는 기본 -1이며 -1이면 마지막 행 까지 가져옵니다.

alert(dataProvider.getRows(0, -1));

getJsonRows

여러 행의 데이터를 Json객체의 Array로 가져올 수 있습니다.
startRow는 기본 0이며 0보다 작으면 첫번째 행부터 가져옵니다.
endRow는 기본 -1이며 -1이면 마지막 행 까지 가져옵니다.

alert(JSON.stringify(dataProvider.getJsonRows(0, -1)));

getOutputRows

설정된 옵션에 맞는 여러 행의 데이터를 Object로 가져올 수 있습니다.
options는 데이터를 반환내는 방식 설정 입니다.
startRow는 기본 0이며 0보다 작으면 첫번째 행부터 가져옵니다.
endRow는 기본 -1이며 -1이면 마지막 행 까지 가져옵니다.

var options = { datetimeFormat: "yyyy-MM-dd" };
alert(JSON.stringify(dataProvider.getOutputRows(options, 0, -1)))

getFieldValues

현재 포커스 위치의 한 필드 값들을 지정한 행 범위만큼 Array로 가져올 수 있습니다.

var current = gridView.getCurrent();
alert("field: " + current.fieldName + ", " + "fieldValues: " + dataProvider.getFieldValues(current.fieldName, 0, -1));

GridView에서 값 가져오기

현재 포커스 위치의 itemIndexfield값에 해당하는 value 값을 가져올 수 있습니다. getValues(), getDisplayValues(), getDisplayValuesOfRow()에서 날짜, 숫자 데이터가 어떻게 반환되는지 확인해보세요.

아래 그리드는 이름으로 정렬되어 있습니다.

getValue

  var current = gridView.getCurrent();
  var value = gridView.getValue(current.itemIndex, current.fieldName);
  alert(
    "itemIndex: " +
      current.itemIndex +
      ", " +
      "field: " +
      current.fieldName +
      ", " +
      "value: " +
      value
  );

getValues

  var current = gridView.getCurrent();
  alert(
    "itemIndex: " + current.itemIndex + ", " + JSON.stringify(gridView.getValues(current.itemIndex))
  );

getJsonRows

  alert(JSON.stringify(gridView.getJsonRows()));

getDisplayValues

실제값이 아닌 화면에 표시되고 있는 값을 itemIndex를 사용하여 그대로 가져옵니다.

  var current = gridView.getCurrent();
  var jsonData = gridView.getDisplayValues(current.itemIndex);
  alert("itemIndex: " + current.itemIndex + ", " + JSON.stringify(jsonData));

getDisplayValuesOfRow

실제값이 아닌 화면에 표시되고 있는 값을 dataRow를 사용하여 그대로 가져옵니다.

  var current = gridView.getCurrent();
  var jsonData = gridView.getDisplayValuesOfRow(current.dataRow);
  alert("dataRow: " + current.dataRow + ", " + JSON.stringify(jsonData));