클립리포트 4.0
개발자 매뉴얼
(주) 클립소프트
* 클립리포트는 REXPERT(렉스퍼트)의 새로운 이름입니다..
목차
가. HTML(Client)에서 java로 OOF 작성하여 리포트서버를 호출 하는 방법
나. JSP(Server)에서 OOF 사용하여 리포트서버를 호출 하는 방법
다. UserConfig.JS 의 ReportEventHandler 함수 설명
OOF 는 클립리포트에서 보고서 생성에 필요한 정보를 기술하는 문서 포맷입니다. 아래의 내용은 기본 구조를 나타내는 Format 입니다.
<!--? version="1.0" encoding="UTF-8"?--> <oof> <document></document> <connection-list></connection-list> 1. <connection></connection>
<field-list></field-list> 2. <field></field>
<file-list></file-list> 3. <file></file> <connection-list></connection-list> 1. <connection></connection>
<field-list></field-list> 2. <field></field>
<field></field>
|
1번 부분은 보고서에서 사용할 연결 정보를 서술합니다. 웹에서 데이터를 가져올 것인지 아니면 로컬 파일 아니면 메모리에 있는 데이터를 사용할 것인지 결정하며 데이터의 타입이 /CSV 인지도 설정합니다.
2번 부분은 보고서로 넘길 매개 변수의 값을 설정합니다.
3번 부분은 보고서 파일 정보를 설정합니다. 보고서 파일은 동시에 여러 개를 오픈 할 수 있습니다. 파일 내부에 선언된 connection 과 field는 파일 밖에 connection, field 보다 우선순위가 더 높습니다.
대표적인 OOF 사용 예제 입니다. 더 자세한 OOF 문서작성을 위해서는 부록에 있는 3. 1) OOF Document 설명을 참조하시기 바랍니다.
별도 서버에 리포트 파일과 데이터가 존재할 때 사용하는 방식입니다. 파일부분 URL 주소 사용, Connection 의 type 을 http로 설정하여 가져오는 방식이며 데이터의 형태는 csv(구분자) 사용하는 예제입니다. |
<!--? version='1.0' encoding='utf-8'?> <oof> <document title='report'> <file-list> <file type='reb' path='http://demo.clipsoft.co.kr/ClipReport/rebfiles/demo/post_number.crf'> <connection-list> <connection type='http' namespace='*'> <config-param-list> <config-param name='path'>http://demo.clipsoft.co.kr/ClipReport/rebfiles/demo/post_number.csv<!--config-param> <config-param name='method'>post<!--config-param> <!--config-param-list> <content content-type='csv'> <content-param name='col-delim'>,<!--content-param> <content-param name='row-delim'>|#|<!--content-param> <content-param name='dataset-delim'>|@|<!--content-param> <content-param name='encoding'>euc-kr<!--content-param> <!--content> <!--connection> <!--connection-list> <!--file> <!--file-list> <!--document> <!--oof><i></i> |
위의 OOF는 리포트 파일을 “http://demo.clipsoft.co.kr/ClipReport/rebfiles/demo/post_number.cr f”에서 가져오고 “http://demo.clipsoft.co.kr/ClipReport/rebfiles/demo/post_number.csv”에 있는 CSV 파일을 가져와서 리포트를 생성하도록 설정되었습니다.
|
설치된 서버 안에 리포트 파일과 데이터가 존재 할 때 사용하는 방식입니다. 파일부분 로컬 파일 주소 사용, Connection의 type 을 file로 설정하여 가져오는 방식이며 데이터의 형태는 사용하는 예제입니다. 만약 file 의 type을 reb.root 사용한다면 %root%의 위치는 서버설치 시 사용되는 clipreport4.properties 파일의 위치를 기준으로 합니다. |
<!--? version='1.0' encoding='utf-8'?> <oof> <document title='report'> <file-list> <file type='reb' path='/home/clipreport/reb/post_number.crf'> <!-- <file type='reb.root' path='%root%/report/crf/post_number.reb'> --> <connection-list> <connection type='file' namespace='*'> <config-param-list> <config-param name='path'>/home/clipreport/data/post_number.<!--config-param> <!--config-param-list> <content content-type=''> <content-param name='root'>{%dataset..root%}<!--content-param> <!--content> <!--connection> <!--connection-list> <!--file> <!--file-list> <!--document> <!--oof> |
위의 OOF는 내부 경로를 사용하여 리포트(/home/clipreport/reb/post_number.crf)와 데이터(/home/clipreport/data/post_number.)를 호출하였습니다. 위와 같이 시스템 내부의 리포트 파일이나 데이터를 가져올 경우에는 내부 경로를 사용할 수 있습니다.
|
클라이언트에서 리포트의 데이터를 받아서 처리 할 때 자주 사용하는 방식입니다. 파일부분 로컬 파일 주소 사용, Connection 의 type 을 memo로 설정하여 OOF 안에 있는 데이터를 사용합니다. 데이터의 형태는 csv(구분자) 사용하는 예제입니다. |
<!--? version='1.0' encoding='utf-8'?> <oof> <document title='report'> <file-list> <file type='reb' path=’/home/clipreport/reb/post_number.crf’ > <connection-list> <connection type='memo' namespace='*'> <config-param-list> <config-param name='data'><!--[CDATA[data1,data2,data3|#|file1,file2,file3]]><!--config-param> <!--config-param-list> <content content-type='csv'> <content-param name='col-delim'>,<!--content-param> <content-param name='row-delim'>|#|<!--content-param> <content-param name='dataset-delim'>|@|<!--content-param> <content-param name='encoding'>euc-kr<!--content-param> <!--content> <!--connection> <!--connection-list> <!--file> <!--file-list> <!--document> <!--oof> |
위와 같이 “Memo” 타입의 커넥션을 사용하면 OOF내의 데이터를 포함할 수 있습니다.
Jdbc 사용하여 리포트를 만드는 첫 번째 방식입니다. 파일부분 로컬 파일 주소 사용, Connection 의 type 을 jdbc로 설정하여 DB에 연결합니다. 리포트 파일에서 사용한 sql 문을 이용하여 데이터를 사용합니다. |
<!--? version='1.0' encoding='utf-8'?> <oof> <document title='report'> <file-list> <file type='reb' path='/home/clipreport/reb/post_number.crf'> <connection-list> <connection type='jdbc' namespace='*'> <config-param-list> <config-param name='dbname'>Oracle1<!--config-param> <config-param name='classname'>oracle.jdbc.driver.OracleDriver<!--config-param> <config-param name='url'>jdbc:oracle:thin:@192.168.0.216:1521:orcl<!--config-param> <config-param name='user'>clipsoft<!--config-param> <config-param name='password'>password<!--config-param> <!--config-param-list> <!--connection> <!--connection-list> <!--file> <!--file-list> <!--document> <!--oof> |
위의 OOF는 JDBC 연결에 필요한 모든 정보를 포함하고 있습니다. 이렇게 OOF가 작성되면 리포트 엔진은 이 정보만으로 데이터베이스에 연결하여 데이터를 가져옵니다.
Jdbc 사용하여 리포트를 만드는 두 번째 방식입니다. 서버설치 시 DataConnection.properties에 설정한 jdbc 사용하는 방법입니다. 파일부분 로컬 파일 주소 사용, Connection 의 type 을 data로 설정하여 DataConnection.properties 안에 지정된 DB에 연결합니다. 리포트 파일에서 사용한 sql 문을 이용하여 데이터를 사용합니다. |
<!--? version='1.0' encoding='utf-8'?> <oof> <document title='report'> <file-list> <file type='reb' path=’/home/clipreport/reb/post_number.crf’ > <connection-list> <connection type='data' namespace='*'> <config-param-list> <config-param name='dbname'>MYSQL1<!--config-param> <!--config-param-list> <!--connection> <!--connection-list> <!--file> <!--file-list> <!--document> <!--oof> |
“data” 타입의 커넥션을 사용하면 리포트 서버에 설정된 커넥션을 사용할 수 있습니다. 리포트 서버는 관리자 페이지에서 설정하거나 “DataConnection.properties” 파일을 직접 수정하여 커넥션 정보를 설정할 수 있습니다. 위에 예제에서 dbname(=”MYSQL1”) 항목은 리포트 서버에 설정된 커넥션의 이름입니다.
매개변수 사용 예제 입니다. 아래의 field-list에 field 지정하여 사용하실 수 있습니다. |
<!--? version='1.0' encoding='utf-8'?> <oof> <document title='report'> <file-list> <file type='reb' path=’/home/clipreport/reb/post_number.crf’ > <connection-list> <connection type='data' namespace='*'> <config-param-list> <config-param name='dbname'>MYSQL1<!--config-param> <!--config-param-list> <!--connection> <!--connection-list> <field-list></field-list> <field <="" span="">name=’지역’>구로구</field> <field <="" span="">name=’우편번호’>142-222</field>
<!--file> <!--file-list> <!--document> <!--oof><i></i> |
위와 같이 <field-list> </field-list>안쪽 부분을 설정하면 “post_number.crf” 리포트에 포함된 “지역” 매개변수필드에는 “구로구”라는 값이, “우편번호” 매개변수 필드에는 “142-222” 값이 입력됩니다.
클립리포트 4.0은 html 뷰어 방식을 사용하기 때문에 기본적인 java, css , html Tag DOM를 사용하여 구동됩니다. 지정한
|
아래 4개의 파일은 뷰어 html 를 만들기 위한 링크되어야 할 4가지 파일입니다.
파일명 |
설명 |
Clipreport.js |
클립리포트 뷰어 엔진 입니다. Js 파일안에 정의된 함수를 이용하여 설치된 리포트서버와 통신하며 완료된 리포트를 웹브라우져에 보여주는 역할을 합니다. 또한 뷰어와 관련된 여러 옵션들을 설정할 수 있습니다. |
Jquery-1.11.1.js |
모바일 쪽 뷰어 및 페이지 슬라이더 옵션에 들어가는 라이브러리 입니다. 사용중인 jquery 가 있으시다면 링크를 안 하셔도 됩니다. |
UserConfig.js |
서버와 통신 및 리포트 생성에 문제가 발생할 경우 개발자 또는 사용자가 이벤트를 핸들링 할 수 있도록 제공하는 함수입니다. |
Clipreport.css |
뷰어의 기본 디자인을 명시한 css 파일입니다. |
아래와 같이 웹서버 또는 was 서버에 올라가 있는 파일을 링크해주시면 됩니다.
|
아래는 기본으로 제공되는 test.html 의 내용 입니다.
|
위와 같이 createReport() 함수를 통하여 리포트 뷰어 객체를 생성하여 보여 줄 수 있습니다.
createReport() 함수에 대한 설명은 다음과 같습니다.
Clipreport.js |
||
createReport() 함수 |
파라미터 |
설명 |
reportPath (String) |
Was에 설치된 Clip.JSP 의 위치를 지정합니다. |
|
OOF (String) |
String 형태로 된 OOF 문서를 지정합니다. |
|
targetTag(DOM) |
리포트가 생성될 DIV or Body DOM 지정합니다. |
|
Return |
||
Report |
리포트를 실행하기 위한 객체 |
이 방법은 JSP 에서 리포트서버 엔진을 실행한 후 화면을 구성하는 방법입니다. 아래 그림은 기본으로 제공되는 test.JSP 의 내용입니다.
|
JSP에서 OOF를 만들어서 리포트를 생성하려면 “ReportUtil.createReport()” 메소드를 사용하여야 합니다. “ReportUtil.createReport()” 메소드를 호출하여 결과 키(“resultKey”)를 얻은 후, 이 키를 Java에 createImportJSPReport() 함수의 파라메터로 넘겨야 합니다.
Java의 ReportUtil.createReport 메서드에 대한 설명은 다음과 같습니다.
Com.clipsoft.clipreport.server.service.ReportUtil |
||
ReportUtil.createReport 메서드 |
파라미터 |
설명 |
Request(Object) |
서블릿의 request |
|
OOF(String) |
String 형태로 된 OOF 문서를 지정합니다. |
|
isBigData(String) |
대용량 데이터 옵션 (default : false) |
|
isMemoryDump(String) |
메모리를 사용한 리포트 생성 옵션 (default : false) |
|
username(String) |
유저 이름 |
|
propertyPath (String) |
리포트 서버의 설정 파일 위치 (서버 설치 가이드 참조) |
|
Return (String) |
||
reportKey |
리포트 실행 명령 후 결과물 |
java에서 생성한 리포트 결과물을 위에 화살표처럼 자바스크립트 변수로 받아 처리합니다.
클라이언트에서 동작하는 java CreateImportJSPReport() 함수에 대한 설명은 다음과 같습니다.
Clipreport.js |
||
CreateImportJSPReport() 함수 |
파라미터 |
설명 |
reportPath (String) |
Was에 설치된 Clip.JSP 의 위치를 지정합니다. |
|
reportkey (String) |
리포트 실행명령 후 결과물 |
|
targetTag(DOM) |
리포트가 생성될 DIV or Body DOM 지정합니다. |
|
Return |
||
report |
리포트를 실해하기 위한 객체 |
위에 2가지 방법으로 생성된 리포트 뷰어 객체(”report”)을 이용하여 리포트 뷰어의 여러 옵션을 설정할 수 있습니다. 아래의 함수는 대표적으로 많이 사용되는 함수 입니다. 그 밖에 함수에 관련 내용은 부록 3-2 과 최신 API(배포용 파일 또는 기술지원 사이트 API)를 참조하시기 바랍니다.
옵션 |
설명 |
report.setSlidePage(true); |
다음 페이지로 이동할 때 슬라이드 옵션을 추가합니다. |
report.setDefaultRatio(“PageWidth”) |
리포트의 크기를 DIV의 width크기로 설정합니다. |
옵션을 설정한 후 report.view() 실행하면 리포트 뷰어가 동작합니다.
아래의 함수는 리포트에 관련된 이벤트가 발생하였을 때 호출하는 함수입니다. 기본적으로 발생한 event의 내용을 표시되어 있습니다. 사이트 상황에 맞게 함수를 변경하셔서 사용하시거나 UserConfig.js 파일 대신 다른 js 파일에 선언하여 사용 가능합니다.
|
clipreport.css 파일은 리포트 뷰어의 UI 요소에 대한 style sheet가 설정된 파일입니다.
각 요소는 다음과 같은 css 클래스를 지정 받았습니다.
UI 요소 |
CSS 클래스 |
메뉴 배경 |
report_menu_div |
배경 |
report_paint_div |
메뉴 버튼 공통 클래스 |
report_menu_button report_menu_button:hover |
저장버튼 |
report_menu_save_button report_menu_save_button:hover report_menu_save_button_svg report_menu_save_button_svg:hover report_menu_save_button_png report_menu_save_button_png:hover |
인쇄버튼 |
report_menu_print_button report_menu_print_button:hover report_menu_print_button_svg report_menu_print_button_svg:hover report_menu_print_button_png report_menu_print_button_png:hover |
첫 페이지 버튼 |
report_menu_leftEnd_button report_menu_leftEnd_button:hover report_menu_leftEnd_button_svg report_menu_leftEnd_button_svg:hover report_menu_leftEnd_button_png report_menu_leftEnd_button_png:hover |
이전 페이지 버튼 |
report_menu_left_button report_menu_left_button:hover report_menu_left_button_svg report_menu_left_button_svg:hover report_menu_left_button_png report_menu_left_button_png:hover |
다음 페이지 버튼 |
report_menu_right_button report_menu_right_button:hover report_menu_right_button_svg report_menu_right_button_svg:hover report_menu_right_button_png report_menu_right_button_png:hover |
마지막 페이지 버튼 |
report_menu_rightEnd_button report_menu_rightEnd_button:hover report_menu_rightEnd_button_svg report_menu_rightEnd_button_svg:hover report_menu_rightEnd_button_png report_menu_rightEnd_button_png:hover |
pdf 다운로드 버튼 |
report_menu_pdf_button report_menu_pdf_button:hover report_menu_pdf_button_svg report_menu_pdf_button_svg:hover report_menu_pdf_button_png report_menu_pdf_button_png:hover |
엑셀 다운로드 버튼 |
report_menu_excel_button report_menu_excel_button:hover report_menu_excel_button_svg report_menu_excel_button_svg:hover report_menu_excel_button_png report_menu_excel_button_png:hover |
한글 다운로드 버튼 |
report_menu_hwp_button report_menu_hwp_button:hover report_menu_hwp_button_svg report_menu_hwp_button_svg:hover report_menu_hwp_button_png report_menu_hwp_button_png:hover |
등록정보 버튼 |
report_menu_reportInfo_button report_menu_reportInfo_button:hover report_menu_reportInfo_button_svg report_menu_reportInfo_button_svg:hover report_menu_reportInfo_button_png report_menu_reportInfo_button_png:hover |
닫기 버튼 |
report_menu_close_button report_menu_close_button:hover report_menu_close_button_svg report_menu_close_button_svg:hover report_menu_close_button_png report_menu_close_button_png:hover |
화면 크기 조절 선택박스 |
report_menu_zoom_combo |
현재 페이지 창 |
report_menu_pageCount_input |
전체 페이지 창 |
report_menu_pageCount_span |
저장 화면 |
공통 : report_view_box report_save_view_position
|
저장 옵션 (해당 저장방식에 따라 클래스가 다릅니다) |
공통 : report_view_box
엑셀 : report_saveExcel_view_position 한글 : report_saveHWP_view_position RTF : report_saveRTF_view_position HTML : report_saveHtml_view_position PDF : report_savePDF_view_position |
popup 화면 관련 모든 버튼 |
report_view_button |
oof
<i><oof version="4.0"></i> <i> <document title="report"></document></i> <i> <file-list></file-list></i> <i> <file type="reb" path="MiraeAsset2.reb"></file></i> <i> </i> <i> </i> <i> <connection-list></connection-list></i> <i> <connection type="file" namespace="*"></connection></i> <i> </i> <i> </i> <i> <field-list></field-list></i> <i> </i> <i> </i> <i></i> |
속성 |
설명 |
version |
리포트 버전 |
노드 |
설명 |
document |
리포트 실행 정보를 포함하고 있습니다. |
document
<i><oof version="3.0"></i> <i> <document title="report"></document></i> <i> <file-list></file-list></i> <i> <file type="reb" path="MiraeAsset2.reb"></file></i> <i> </i> <i> </i> <i> <connection-list></connection-list></i> <i> <connection type="file" namespace="*"></connection></i> <i> </i> <i> </i> <i> <field-list></field-list></i> <i> </i> <i> </i> <i></i> |
속성 |
설명 |
title |
리포트의 제목을 표시합니다. |
노드 |
설명 |
file-list |
file노드의 리스트를 가지고 있습니다. |
connection-list |
connection노드의 리스트를 가지고 있습니다. |
field-list |
field노드의 리스트를 가지고 있습니다. |
file-list
<i><file-list></file-list></i> <i> <file type="reb" path="MiraeAsset2.reb"></file></i> <i> </i> <i></i> |
노드 |
설명 |
file |
오픈할 리포트의 파일 정보를 가지고 있습니다. |
하나 이상의 file 정보를 포함하고 있으며 여러 개의 file을 설정할 경우 하나의 리포트처럼 순서대로 연속하여 출력됩니다.
connection-list
<i><connection-list></connection-list></i> <i> <connection type="file" namespace="*"></connection></i> <i> <config-param-list></config-param-list></i> <i> <config-param name="path">data.</config-param></i> <i> </i> <i> </i> <i></i> |
노드 |
설명 |
connection |
리포트에서 사용할 데이터 연결정보를 가지고 있습니다. |
connection-list는 oof/document/connection-list와 oof/document/file-list/file/connection-list에 위치하고 있으며 oof/document/file-list/file/connection-list에 있는 connection-list는 해당 file에서만 적용됩니다.
링크된 connection을 찾을 때 oof/document/file-list/file/connection-list가 우선 적용되고 해당 connection이 없을 경우 oof/document/connection-list에서 찾습니다.
field-list
<i><field-list></field-list></i> <i> <field name="”</field></i><i>부서명”>개발팀</i> <i> <field name="”</field></i><i>직위명”>과장</i> <i></i> |
노드 |
설명 |
field |
리포트로 전달할 파라미터의 정보를 가지고 있습니다. |
field-list는 oof/document/field-list와 oof/document/file-list/file/field-list에 위치하고 있으며 oof/document/file-list/file/field-list에 있는 field-list는 해당 file에서만 적용됩니다.
매개변수값을 설정할 때 oof/document/file-list/file/field-list의 설정값을 우선하여 사용하고 oof/document/file-list/file/field-list에 값이 설정되지 않았을 경우 oof/document/field-list의 값을 사용합니다.
file
<i><file type="reb" communicationtype="local" path="report.reb"></file></i> <i> <connection-list></connection-list></i> <i> <connection type="file" namespace="*"></connection></i> <i> <config-param-list></config-param-list></i> <i> <config-param name="path">data.</config-param></i> <i> </i> <i> </i> <i> </i> <i> <field-list></field-list></i> <i> </i> <i></i> |
속성 |
설명 |
type |
리포트 파일의 타입을 표시합니다 - reb.base64 - 리포트 파일이 base64형태로 oof안에 포합됩니다. - reb.root - %root%를 기준으로 한 리포트 파일의 위치를 표시합니다. |
path |
리포트 파일의 위치를 표시합니다. type이 reb.base64일 경우 base64로 표현된 리포트 파일이 들어갑니다. type이 reb.root일
경우 %root%로 시작되는 파일 경로가 들어갑니다. %root%는
clipreport4.properties 파일 위치를 기준으로 합니다. |
노드 |
설명 |
connection-list |
connection노드의 리스트를 가지고 있습니다. document노드 아래의 connection-list보다 우선 적용됩니다. |
field-list |
field노드의 리스트를 가지고 있습니다. document노드 아래의 field-list보다 우선 적용됩니다. |
connection
<i><connection type="file" namespace="*"></connection></i> <i> <config-param-list></config-param-list></i> <i> <config-param name="path">SuHyup1.</config-param></i> <i> </i> <i> <content content-type=""></content></i> <i> <content-param name="root">{%dataset..root%}</content-param> </i> <i> </i> <i></i> |
속성 |
설명 |
type |
데이터 연결 방식을 표시합니다.
data - 서버에 설정된 커넥션으로 연결합니다. jdbc - jdbc로 db에 직접 연결합니다. file - 데이터가 로컬 파일로 저장되어 있을 때 사용합니다. http - 웹서버에서 데이터를 받을 때 사용합니다. memo - oof내에 포함된 데이터를 사용합니다. |
namespace |
커넥션 이름 |
노드 |
설명 |
config-param-list |
데이터 연결의 세부 정보를 표시합니다. |
content |
데이터 타입에 따른 정보를 표시합니다 |
리포트 파일에서 설정한 데이터셋의 커넥션 이름과 같은 namespace를 가진 connection을 찾아서 연결합니다.
해당 이름의 namespace를 가진 connection이 없을 경우 '*'로 설정한 connection을 사용합니다.
config-param-list
<i><connection type="file" namespace="*"></connection></i> <i> <config-param-list></config-param-list></i> <i> <config-param name="path">SuHyup1.</config-param></i> <i> </i> <i> <content content-type=""></content></i> <i> <content-param name="root">{%dataset..root%}</content-param> </i> <i> </i> <i></i> |
노드 |
설명 |
config-param |
데이터 연결 방식에 따른 세부 속성을 설정합니다. |
config-param
<i><connection type="file" namespace="*"></connection></i> <i> <config-param-list></config-param-list></i> <i> <config-param name="path">SuHyup1.</config-param></i> <i> </i> <i> <content content-type=""></content></i> <i> <content-param name="root">{%dataset..root%}</content-param> </i> <i> </i> <i></i> |
속성 |
설명 |
name |
속성의 이름을 표시합니다. |
text |
속성의 값을 표시합니다. |
connection의 type에 따른 속성을 설정합니다.
connection type=file
name |
설명 |
path |
데이터 파일의 로컬 경로를 표시합니다. |
connection type=http
name |
설명 |
path |
데이터 파일의 웹 경로를 표시합니다. |
method |
데이터 전송 방식을 표시합니다. -get -post |
connection type=memo
name |
설명 |
data |
csv,,json 형태의 데이터를 설정합니다. |
connection type=data
name |
설명 |
dbname |
리포트 서버에서 설정한 dbconnection의 이름을 표시합니다. |
connection type=jdbc
name |
설명 |
classname |
db종류에 따른 jdbc driver 클래스명을 설정합니다. 기본값으로 ' oracle.jdbc.driver.OracleDriver'가 설정되어 있습니다. |
url |
jdbc 연결 문자열을 입력합니다. |
user |
db 사용자 ID를 입력합니다. |
password |
db 사용자 패스워드를 입력합니다. |
data 또는 jdbc로 연결하였을 경우, 디자이너에서 설정한 쿼리로 실행됩니다.
http-param-list
<i><connection type="http" namespace="*"> <i> <config-param name="path">http://localhost/rexpert3.0/rexserver.jsp</config-param></i> <i> <config-param name="method">post</config-param></i> <i> </i> <i> <http-param-list></http-param-list></i> <i> <http-param name="sql">{%auto%}</http-param></i> <i> <http-param name="code"></http-param></i><i>안녕하세요</i> <i> </i> <i></i> |
노드 |
설명 |
http-param |
웹서버로 전송할 파라미터를 설정합니다. |
http-param-list는 connetion type이 http일 경우에만 사용되며 웹서버로 전송할 파라미터를 설정합니다.
http-param
<i><connection type="http" namespace="*"></connection></i> <i> <config-param-list></config-param-list></i> <i> <config-param name="path">http://localhost/rexpert3.0/rexserver.jsp</config-param></i> <i> <config-param name="method">post</config-param></i> <i> </i> <i> <http-param-list></http-param-list></i> <i> <http-param name="sql">{%auto%}</http-param></i> <i> <http-param name="code"></http-param></i><i>안녕하세요</i> <i> </i> <i></i> |
속성 |
설명 |
name |
파라미터의 이름을 표시합니다. |
text |
파라미터의 값을 표시합니다. |
파라미터의 name이 "sql"일 경우 text를 "{%auto%}"로 설정하면 디자이너에서 설정한 쿼리가 sql의 파라미터값으로 전달됩니다.
content
<i><connection type="file" namespace="*"></connection></i> <i> <config-param-list></config-param-list></i> <i> <config-param name="path">SuHyup1.</config-param></i> <i> </i> <i> <content content-type=""></content></i> <i> <content-param name="root">{%dataset..root%}</content-param> </i> <i> </i> <i></i> |
속성 |
설명 |
content-type |
데이터 타입을 표시합니다 - json - csv |
namespace |
Content의 이름을 표시합니다. |
노드 |
설명 |
content-param |
데이터 타입에 따른 세부정보를 설정합니다.. |
하나의 connection안에서 여러 개의 content를 사용할 경우 namespace를 사용하여 구분합니다.
(하나의 파일내에서 root경로를 달리하여 데이터를 연결하는 경우 등)
content가 여러 개 일 경우 리포트 파일에서 설정한 데이터셋의 이름을 가진 content를 적용하여 사용합니다. 해당 이름의 namespace를 가진 content가 없을 경우 첫 번째 content를 적용합니다.
일반적으로 content가 하나일 경우 namespace는 생략 가능합니다.
content-param
<i><connection type="file" namespace="*"></connection></i> <i> <config-param-list></config-param-list></i> <i> <config-param name="path">SuHyup1.</config-param></i> <i> </i> <i> <content content-type=""></content></i> <i> <content-param name="root">{%dataset..root%}</content-param> </i> <i> </i> <i></i> |
속성 |
설명 |
name |
속성의 이름을 표시합니다. |
text |
속성의 값을 표시합니다. |
content의 type에 따른 속성을 설정합니다.
content-type=
name |
설명 |
root |
의 root경로를
설정합니다. |
encoding |
데이터의 encoding타입을 설정합니다. |
content-type=json
name |
설명 |
root |
json의 root경로를
설정합니다. |
encoding |
데이터의 encoding타입을 설정합니다. |
content-type=csv
name |
설명 |
col-delim |
csv 데이터의 열 구분자를 설정합니다. |
row-delim |
csv 데이터의 행 구분자를 설정합니다. 공백일 경우 디자인된 필드 개수에 따라 행이 구분됩니다. |
dataset-delim |
csv 데이터의 데이터셋 구분자를 설정합니다. |
encoding |
csv 데이터의 encoding 타입을 설정합니다. |
dataset-index |
데이터셋 구분자로 구분된 데이터셋 인덱스(1부터 시작) {%dataset.index%}일 경우 디자인된 데이터셋의 인덱스로 사용합니다. |
field
<i><field-list></field-list></i> <i> <field name="”</field></i><i>부서명”>개발팀</i> <i> <field name="”</field></i><i>직위명”>과장</i> <i></i> |
속성 |
설명 |
name |
리포트 파일에서 설정한 매개변수 필드의 이름을 설정합니다. |
text |
매개변수 필드로 전달할 값을 설정합니다. |
- 리포트 뷰어를 호출하기 전에 설정하는 함수
setCloseReportEvent(closeFunction) 리포트 뷰어의 Close 버튼을 클릭하거나 CloseReport()함수를 호출했을 때 발생하는 이벤트 처리 함수 report.setCloseReportEvent(function(){ alert("끝"); }); Parameters: closeFunction {Function} 실행시킬 함수 |
setDefaultRatio(value) default 화면 비율을 지정하는 합수 (설정하지 않을 경우 deafault 설정으로 100% 지정합니다.) report.setDefaultRatio("75%"); Parameters: value {String} 50% , 75%, 100%, 125%, 150%, 200%,300%,400%, PageWidth, WholePage |
setDirectPrint(isDirectPrint) 리포트의 뷰어를 사용하지 않고 바로 프린트를 호출하는 함수 target이 되는 div(또는
body) 설정하여야 하며 속성값 셋팅 후 report.view() 함수를 호출하여야 동작합니다. report.setDirectPrint(true); Parameters: isDirectPrint {Boolean} 설정값 |
setDPI(DPI) 리포트의 기본 화면 DPI 설정 함수 report.setDPI(96); Parameters: DPI {Integer} DPI |
setEXCELProgress(strURL{String}, x, y) 리포트의 Excel 다운로드 준비에 관한 사용자 프로그래스를 설정하는 함수 report.setEXCELProgress('./img/deploying.gif', '50%', '30%'); Parameters: strURL{String} 현재 html에서의 상대주소 or 절대주소 x {String} (px) or (%) X좌표 y {String}(px) or (%) Y좌표 |
setFadeView(isFadeView) 리포트의 생성 시 Viewer의 페이드(Fade) 모션을 설정하는 함수 report.setFadeView(true); Parameters: isFadeView {Boolean} 설정값
|
setHWPPrint(isHWP) 리포트의 프린트 옵션을 한글뷰어로 사용하는 설정 함수 report.setHWPPrint(true); Parameters: isHWP {Boolean} 설정값 |
setHWPProgress(strURL{String}, x, y) 리포트의 HWP 다운로드 준비에 관한 사용자 프로그래스를 설정하는 함수 report.setHWPProgress('./img/deploying.gif', '50%', '30%'); Parameters: strURL{String} 현재 html에서의 상대주소 or 절대주소 x {String} (px) or (%) X좌표 y {String}(px) or (%) Y좌표
|
setIsBigData(isSatatus) 대용량 리포트 옵션을 설정하는 함수 report.setIsBigData(true); Parameters: isSatatus {Boolean} 설정값 |
setIsMemoryDump(isSatatus) Memory 사용한 빠른 리포트 생성 옵션을 설정하는 함수 report.setIsMemoryDump(true); Parameters: isSatatus {Boolean} 설정값 |
setPageCountTime(value) 리포트의 PageCount 호출하는 Interval Time을 설정 함수 report.setPageCountTime(700); Parameters: value {Integer} value (1000 = 1초) |
setPrintProgress(strURL{String}, x, y) 리포트의 프린트 준비에 관한 사용자 프로그래스를 설정하는 함수 report.setPrintProgress('./img/deploying.gif', '50%', '30%'); Parameters: strURL{String} 현재 html에서의 상대주소 or 절대주소 x {String} (px) or (%) X좌표 y {String}(px) or (%) Y좌표 |
setProgress(strURL{String}, x, y) 리포트의 생성 시 사용자 프로그래스를 설정하는 함수 report.setProgress('./img/deploying.gif', '50%', '30%'); Parameters: strURL{String} 현재 html에서의 상대주소 or 절대주소 x {String} (px) or (%) X좌표 y {String}(px) or (%) Y좌표 |
setSAVEProgress(strURL{String}, x, y) 리포트의 저장(다운로드) 준비에 관한 사용자 프로그래스를 설정하는 함수 report.setSAVEProgress('./img/deploying.gif', '50%', '30%'); Parameters: strURL{String} 현재 html에서의 상대주소 or 절대주소 x {String} (px) or (%) X좌표 y {String}(px) or (%) Y좌표
|
setSlidePage(isSlide) 리포트의 페이지 슬라이드 모션을 설정하는 함수 report.setSlidePage(true); Parameters: isSlide {Boolean} 설정값
|
setStyle(controlName, cssText) viewer 의 기본 디자인을 변경합니다. report.setStyle("firstPage_button", "left:inherit;right:195px;background-image:url(./user_img/first.png);background-color:tan;"); Parameters: controlName {String} input_box : 입력창 cssText {String} 표준 CSS
|
setVisibleMenu(isMenu) 리포트 뷰어의 메뉴바를 숨기는 설정 함수 report.setVisibleMenu(false); Parameters: isMenu {Boolean} 설정값
|
setLimitedPrint(pageCount) 리포트 인쇄에 대한 제한 페이지 수를 설정하는 함수 이 함수를 사용할 경우 인쇄버튼을 눌렀을 때 페이지수가 100페이지 이상일 때 팝업창을 띄워 줍니다. report.setLimitedPrint(100); Parameters: pageCount {Integer} 제한 페이지 수
|
setSaveOptionVisible(optionType, isVisible) 리포트 저장 선택에서 각각 옵션에 보이기를 설정하는 함수 저장버튼을 사용할 때 보이고 싶은
옵션만 표현 할 때 사용합니다. report.setSaveOptionVisible("pdf", false); Parameters: optionType {String} 저장옵션 타입 (excel, pdf, hwp, rtf, ppt, html) isVisible {Boolean} 설정값
|
setSplitPDFFileNames(arrayNames) PDF 저장에서 분할 저장을 선택하였을 때의 각각의 pdf 파일명을 지정하는 함수 zip 파일안에 pdf의 이름을 설정할 때 사용합니다.
var arrayNames = new Array(); arrayName.push("fileName1"); arrayName.push("fileName2"); arrayName.push("fileName3"); report.setSplitPDFFileNames(arrayNames); Parameters: arrayNames {Array} 이름 리스트
|
- 리포트 뷰어 호출 후 핸들링 가능 한 함수
closeReport() 리포트를 종료하는 함수 report.closeReport();
|
excelDownLoad() 리포트를 Excel 다운로드 하는 함수 report.excelDownLoad();
|
exportView() 리포트의 저장 설정화면를 호출하는 함수 report.exportView();
|
firstPage() 리포트의 첫번째 페이지로 이동시키는 함수 report.firstPage(); |
htmlDownLoad() 리포트를 html 다운로드 하는 함수 report.htmlDownLoad();
|
hwpDownLoad() 리포트를 한글 다운로드 하는 함수 report.hwpDownLoad();
|
lastPage() 리포트의 마지막페이지로 이동시키는 함수 report.lastPage();
|
nextPage() 리포트의 다음페이지로 이동시키는 함수 report.nextPage();
|
pdfDownLoad() 리포트를 PDF 다운로드 하는 함수 report.pdfDownLoad();
|
previousPage() 리포트의 이전페이지로 이동시키는 함수 report.previousPage();
|
printView() 리포트의 프린트 설정화면를 호출하는 함수 report.printView();
|
reSize() 화면보기 설정에 맞게 뷰어를 ReSize 하는 함수 report.reSize();
|