멀티라인그리드 » Api

savecsvex

Description

그리드의 내역을 csv 파일로 저장하는데 추가로 옵션을 주어서 저장할 수 있는 API이다.

Parameters

Parameters Type Description
strFileName STRING 파일 이름
bIncludePattern BOOL 패턴 저장 여부(true, false)
bIncludeHeader BOOL 헤더 저장 여부(true, false)
bAfterCloseSaveWnd BOOL 다이얼로그 창 닫기 여부(true, false)
bAfterOpenExcel BOOL 저장 후 엑셀 열기에 대한 여부(true, false)
bPromptOverWrite BOOL 파일이 존재할 경우 사용자에게 덮어쓸 것인지 묻는 창을 띄울지 여부(true, false)
bShowSaveWnd BOOL 다이얼로그 창을 보일지 여부(true, false)
strDataDelimiter STRING [옵션] 데이터 구분자
bCheckData BOOL [옵션] CSV 저장 데이터 검사 여부(기본값: true)
bIncludeStatData BOOL [옵션] 통계 데이터 포함 여부 (기본값: true)
bSaveOneRow BOOL [옵션] 멀티라인그리드 한줄로 저장 여부 (기본값: false)
bSaveFile BOOL [옵션] 파일로 저장 여부 (기본값: true)
strSaveCallback STRING [옵션] bSaveFile, bShowSaveWnd 파라미터가 false인 경우, 호출될 콜백 함수 이름 (기본값: null)
bIncludeMasking BOOL [옵션] 데이터 마스킹 포함 여부 (기본값: true)
bCheckRowOnly BOOL [옵션] 체크된 행만 저장 여부 (기본값: false)
strCharSet STRING [옵션] 저장할 캐릭터셋 지정 (기본값: "UTF8")
bIncludeBOM BOOL [옵션] BOM 정보를 포함할지 여부 (기본값: true)
bIncludeQuot BOOL [옵션] 큰따옴표 포함할지 여부 (기본값: true)

Return Value

Type Description
BOOL 정상 처리 여부 또는 데이터

Remark

bAfterCloseSaveWnd, bAfterOpenExcel, bPromptOverWrite 파라미터는 전용 브라우저 환경에서만 동작한다.

strDataDelimiter 파라미터에 "tab"을 지정하는 경우, 내부적으로 탭('\t') 키값을 기준으로 처리된다.

bCheckData 파라미터가 true인 경우, CSV 저장시 저장 데이터에 큰 따옴표가 있는지, 개행 문자가 있는지 검사하는 작업을 수행한다.

bSaveFile 파라미터가 false인 경우, bShowSaveWnd 파라미터가 false인 경우에는 함수 리턴값 및 strSaveCallback 파라미터에 지정된 함수로 데이터가 전달되고, bShowSaveWnd 파라미터가 true인 경우, strSaveCallback 파라미터에 지정된 함수로 데이터가 전달된다.

strSaveCallback 파라미터에 전달될 함수 프로토타입은 샘플소스를 참조한다.

use_checkrow 속성이 false인 경우에는 bCheckRowOnly 파라미터가 무시된다.

아래 strCharSet, bIncludeBOM 파라미터는 전용 브라우저 환경 또는 GRID_CSVDOWNLOAD_METHODTYPE 실행 파라미터가 2인 경우만 동작한다.

** strCharSet 파라미터
저장할 캐릭터셋으로 아래값 입력 가능, 값을 주지 않을경우 UTF8로 기록
"UTF8"        : utf8로 기록
"UTF16/UCS-2" : utf16 으로 기록
"ANSI"        : ANSI(EUC-KR)로 기록

** bIncludeBOM 파라미터
파일의 처음에 아래와 같은 Byte정보가 기록. 
UTF16/UCS-2 : 0xFF, 0xFE (2byte)
UTF8        : 0xEF, 0xBB, 0xBF (3byte)

Example

function btn_grid_on_mouseup() { var file_name, is_include_pattern, is_include_header, is_after_close_wnd, is_after_open_file, is_prompt_overwrite, is_show_option, data_delimiter, is_check_data, is_include_statdata, is_save_onerow, is_save_file, save_callbakc_func, is_include_masking; file_name = "download.csv"; is_include_pattern = true; is_include_header = true; is_after_close_wnd = true; is_after_open_file = false; is_prompt_overwrite = true; is_show_option = true; data_delimiter = ","; is_check_data = true; is_include_statdata = true; is_save_onerow = false; is_save_file = true; save_callbakc_func = null; is_include_masking = false; grd.savecsvex(file_name, is_include_pattern, is_include_header, is_after_close_wnd, is_after_open_file, is_prompt_overwrite, is_show_option, data_delimiter, is_check_data, is_include_statdata, is_save_onerow, is_save_file, save_callbakc_func, is_include_masking); } // 파일 저장용 데이터를 구함 function btnSaveData_on_mouseup(objInst) { var bSaveFile, bShowSaveWnd, ret; bSaveFile = false; // bShowSaveWnd 파라미터를 false로 지정하여, 함수 리턴값으로 데이터를 구함 bShowSaveWnd = false; ret = grd.savetxtex("", true, true, true, true, true, bShowSaveWnd, ",", true, true, false, bSaveFile, ""); factory.consoleprint("savetxtex> Data Length = " + ret.length); // bShowSaveWnd 파라미터를 true로 지정하고, 콜백함수를 지정하여, // 콜백 함수를 통해 데이터를 구함 bShowSaveWnd = true; ret = grd.savetxtex("", true, true, true, true, true, bShowSaveWnd, ",", true, true, false, bSaveFile, "CallbackSaveData"); factory.consoleprint("savetxtex> Return Value = " + ret); } /** * savetxtex, savecsvex 함수의 bSaveFile 파라미터가 false이고, * bShowSaveWnd 파라미터가 true일 때, * 파일 저장 데이터를 전달받을 콜백 함수이다. * * @param objScreen 화면 오브젝트 * @param objGrid 그리드 컴포넌트 * @param strData 파일 저장 데이터 */ function CallbackSaveData(objScreen, objGrid, strData) { factory.consoleprint("CallbackSaveData> Screen URL = " + objScreen.getscreenurl()); factory.consoleprint("CallbackSaveData> Grid Name = " + objGrid.getname()); factory.consoleprint("CallbackSaveData> Data Length = " + strData.length); }

See Also

savecsv
readcsv

Viewer Ver.

9.1.1.1

Update Date

20230913