# onBeforeExport (event)

> 시트의 내용을 `Excel, Text, Pdf` 등으로 다운로드하는 함수(exportData, down2Excel, down2Text, down2Pdf) 호출시, 시트의 데이터를 서버로 데이터 전송 전에 발생합니다.
> 위와 같은 함수를 호출하면, 시트의 내용을 하나의 문자열로 묶어, `input 객체`에 담고, 지정한 `jsp(혹은 aspx)파일`로 `submit`을 합니다.
> `onBeforeExport` 이벤트는 `submit`을 할 `form객체`를 인자로 제공함으로, `form객체` 안에 내용을 확인하여 필요시 다운로드를 중단시킬 수 있습니다.
> exportData 는 `form객체`를 인자로 제공하지 않음으로 객체 안에는 `null` 값을 반환한다.
> 해당 이벤트에서 `1(true)`를 리턴하면 다운로드를 중단할 수 있습니다.

### Syntax

        onBeforeExport : function(paramObject) {

        }
    or
        sheet.bind("onBeforeExport" , function(paramObject) {});

### Parameters

Name | Type | Description
--- | --- | ---
sheet | `object` | 시트 객체
type | `string` | exportData, down2Excel, down2Text, down2Pdf 함수 호출에 따라 `EXCEL, TEXT, PDF`
formElem | `form` | 서버로 전송할 데이터를 담고 있는 `form객체` (전송할 문자열에 대한 확인은 `evtParam.formElem.Data.value` 로 가능, `exportData에서는 확인 불가`)

### Return

boolean

### Example

    options.Events = {
        onBeforeExport:function(evtParam){
            // 사용자 등급에 따라 다운로드시 경고를 보여주거나 중단시킨다.
            if(userLvl < 3){
                alert("민감한 데이터를 포함하고 있습니다.\n사용에 주의해 주세요.");
            }else{
                alert("다운로드 권한이 없습니다.");
                evtParam.sheet.hideMessage();
                return true;
            }
        }
    }

### Read More

- exportData method
- down2Excel method
- down2Text method
- onExportFinish event

### Since

product | version | desc
--- | --- | ---
excel | 0.0.0 | 기능 추가