본문 바로가기
Xplatform/기초

XPLATFORM - 자주사용하는 메서드

by 개발 이야기 2021. 8. 30.

오늘은 XPLATFORM에서 실무에서 자주 사용하는 메서드들에 대해서 알아보려고 합니다.

이 내용을 이해하기 위해 먼저 알아야 하는 배경

  • Dataset: XPLATFORM에서 데이터를 저장하고 처리하는 객체 (DB 테이블처럼 행과 열로 구성)
  • Grid: Dataset을 UI로 보여주는 컨트롤 (HTML의 테이블과 유사)
  • Row/Column 인덱스: 모두 0부터 시작하며, JavaScript와 유사한 방식으로 다룸

주요 특징 및 메서드 정리

1. getColumn

  • 역할: 특정 행(Row)과 열(Column) 위치의 값을 가져옵니다.
  • 구문:
  • javascript
    복사편집
    Dataset.getColumn(Row, ColumnIndex); Dataset.getColumn(Row, ColumnID);
  • 예시:
  • javascript
    복사편집
    var value = Dataset00.getColumn(0, 1); // 0번째 행의 1번째 열 var name = Dataset00.getColumn(1, "name"); // 1번째 행의 name 컬럼
  • 결과: 값 반환. 지정한 열이 없으면 undefined 반환.

2. setColumn

  • 역할: 특정 셀의 값을 수정합니다.
  • 구문:
  • javascript
    복사편집
    Dataset.setColumn(Row, ColumnIndex, Value); Dataset.setColumn(Row, ColumnID, Value);
  • 예시:
  • javascript
    복사편집
    Dataset00.setColumn(0, 0, "1234"); Dataset00.setColumn(0, "name", "홍길동");
  • 결과: 성공 시 true, 실패 시 false 반환
  • 주의할 점:
    • 지정된 행과 열이 존재해야 합니다.
    • 새로운 행을 추가하려면 addRow() 또는 insertRow() 사용 필요

3. rowcount

  • 역할: Grid에 바인딩된 Dataset의 전체 행 개수를 반환합니다.
  • 구문:
  • javascript
    복사편집
    Grid.rowcount
  • 결과: 데이터가 없으면 0

4. saveXML

  • 역할: Dataset의 데이터를 XML 문자열로 직렬화합니다.
  • 구문:
  • javascript
    복사편집
    Dataset.saveXML([strID[, strSaveType]]);
  • 매개변수 설명:
    • strID: 저장 시 사용할 데이터셋 이름 (생략 가능)
    • strSaveType: 저장할 행의 종류 지정
      • "normal": 기본값. Insert/Update된 행만 저장
      • "all": 모든 행 저장
      • "update": 변경된 행만 저장
      • "view": 그리드 뷰에 보이는 것만 저장
  • 예시:
  • javascript
    복사편집
    Dataset00.saveXML();
  • 실무 팁:
  • 서버와 연동하거나 디버깅할 때 saveXML() 결과를 Hoo WinTail 등의 로그 뷰어에서 보면, 실제 어떤 값이 서버로 전송되고 있는지 확인할 수 있어 매우 유용합니다.

실제 사용하는 사례

  • 사용 중인 기관: 공공기관(정부 행정시스템), 금융사(은행 내부 포털), 대기업의 ERP 화면 등
  • 실무에서는 화면에 보이는 데이터를 수정하거나, 서버와 통신 전 saveXML()로 로그를 남겨 디버깅합니다.

마무리 요약

메서드기능 요약
getColumn Dataset에서 특정 셀의 값 가져오기
setColumn Dataset의 특정 셀 값 설정
rowcount Grid에 표시된 행 개수 확인
saveXML Dataset 내용을 XML로 직렬화