그리드에 새 컬럼을 마지막에 추가하는 API이다. 그리드 칼럼을 추가한 이후에, 추가된 칼럼에 대해서 setcolumn~으로 시작되는 함수를 이용하여 칼럼의 속성을 지정할 수 있다. 특정 위치에 칼럼을 추가하기 위해서는 insertcolumn 함수를 사용해야 한다.
| Parameters | Type | Description | 
|---|---|---|
| bRefresh | BOOL | [옵션] 그리드 리프레쉬 여부(true/false), 기본값 true | 
| Type | Description | 
|---|---|
| short | 추가된 컬럼의 인덱스 | 
파라미터 값이 값이 유효하지 않는 경우, -1이 리턴된다.
bRefresh 값이 false인 경우, 변경된 내용을 표시하기 위해서는 refreshcolumn 함수를 호출해야 한다
// 그리드의 이름이 grdNormal이고 
// 화면의 테스트 버튼(이름: btnTestAddColumn)을 클릭하면
// 그리드에 칼럼을 추가하고, 칼럼 정보를 설정한다.
// 칼럼 추가 테스트 버튼 클릭 이벤트 처리
function btnTestAddColumn_on_mouseup(objInst)
{
    var nColumnWidth = 200;
    var strHeaderText = "추가된 칼럼";
    var bEditable = true;
    var nDataType = 2; // 한글
    var nColumnIndex;
    // 칼럼을 추가하고, 추가된 칼럼 속성을 설정
    nColumnIndex = addColumn(grdNormal, strHeaderText, nColumnWidth, bEditable, nDataType);
    if(nColumnIndex < 0) {
        screen.alert("칼럼 추가 실패");
    }
    return;
}
/**
 * 칼럼을 추가하고 추가된 칼럼에 대한 속성을 지정한다.
 * @param objGrid 그리드 오브젝트
 * @param strHeaderText 추가된 칼럼의 헤더 문자열
 * @param nColumnWidth 추가된 칼럼의 넓이 (단위: pixel)
 * @param bEditable 추가된 칼럼의 편집 가능 여부
 * @param nDataType 데이터 타입 (0 : 숫자, 1 : 영문, 2 : 한글)
 * @return 
 *    nColumnIndex 추가된 칼럼 인덱스, 오류인 경우 -1
 */
function addColumn(objGrid, strHeaderText, nColumnWidth, bEditable, nDataType)
{
    var nColumnIndex;
    nColumnIndex = objGrid.addcolumn();
    if(nColumnIndex < 0) {
        return nColumnIndex;
    }
    // 칼럼 너비 설정
    objGrid.setcolumnwidth(nColumnIndex, nColumnWidth);
	
    // 칼럼 편집 여부 속성 설정
    objGrid.setcolumneditable(nColumnIndex, bEditable);
    // 칼럼 헤더 텍스트 설정
    objGrid.setheadertext(0, nColumnIndex, strHeaderText);
		
    // 칼럼의 데이터 타입 변경
    objGrid.setcolumndatatype(nColumnIndex, nDataType);
    return nColumnIndex;
}