Upload
lynne
View
645
Download
8
Embed Size (px)
DESCRIPTION
GAUCE 4.0(JAVA). SHIFT Info & Comm Co.,Ltd. Contents. 1. The aim of Gauce Java Education. 2. What is GAUCE?. 3. GAUCE Component. 4. For Java of GAUCE. Gauce 4.0(Java) Install Environment Setting Gauce Service Structure & Sample explanation. 5. Q&A. Contents. 1. GAUCE 교육 목적 - PowerPoint PPT Presentation
Citation preview
GAUCE 40(JAVA)
SHIFT Info amp Comm CoLtd
2
Contents
2 What is GAUCE 2 What is GAUCE
3 GAUCE Component 3 GAUCE Component
4 For Java of GAUCE 4 For Java of GAUCE
5 QampA 5 QampA
Gauce 40(Java) Install
Environment Setting
Gauce Service Structure amp Sample explanation
1 The aim of Gauce Java Education 1 The aim of Gauce Java Education
3
Contents
1 GAUCE 교육 목적
1-1 교육 목적
1-2 교육 목표
2 What is GAUCE
2-1 개념정리
2-2 GAUCE Architecture
2-3 개발방법론
2-4 지원방식
2-5 Merit of GAUCE
3 GAUCE Component
3-1 Component List
3-2 Component Install
4 For Java of GAUCE
4-1 GAUCE40 Install
4-2 Environment Setting
4-3 Service Structure
5 QampA
6 Tool guide
6-1 Report Builder
7 실습
7-1 List 조회
7-2 Report 작성
7-3 Transaction 처리
1 The aim of Gauce Java Education
SHIFT Info amp Comm CoLtd
5
1 The aim of Gauce Java Education
교육목적 Gauce Java 의 이해 Gauce Java 의 코딩 방법 숙지
교육목표 Gauce Java 의 개발에 앞서서 Gauce 개념과 Gauce
Java 의 동작구조를 이해하고 이를 바탕으로 Gauce Java 의 코딩 방법을 숙지하도록 한다
2 What is GAUCE
SHIFT Info amp Comm CoLtd
7
2What is Gauce
Component 기반의 통합 웹 개발 toolkit
JAVA NET COM+ 이라는 플랫폼 위에서 웹 어플리케이션 개발 시 라이브러리를 제공하여 효율적으로 개발하도록 도와주는 tookit
Client 측에서 HTML DHTML JSP Servlet 등을 이용하여 ActiveX Component 를 embedded 시켜 Webpage 를 구현
Server 측에서 ActiveX Component 에서 buffering 되었던 여러 개의 record 를 각각의 transaction type 과 함께 data tunneling 기법을 이용하여 한꺼번에 전송되어 서버 object 는 각각의 transaction type 에 따라 입력 수정 삭제를 동시에 처리
Gauce 개념 정리
8
bull GAUCE 는 기존 Web 개발의 난점을 극복하기 위한 다양한 웹 Data Presentation Model 들을 Component 화하여 단순히 조회 기능만이 가능한 웹 리포팅툴의 한계를 뛰어넘는 입력 수정 삭제까지 가능한 완벽한 애플리케이션의 손쉬운 개발이 가능한 제품입니다
bull GAUCE 는 분산 DB 환경에서 웹 브라우저를 통해 기업 고객 공급망 등 다양한 사용자가 다양한 방식으로 DB 에 접근 웹 애플리케이션을 활용할 수 있도록 해주는 Enterprise Client Web 개발 플랫폼입니다
2What is Gauce
9
2What is Gauce
Gauce Architecture
10
구분 기존 방식 GAUCE Active Enterprise 채용시
View HTML Applet HTML ActiveX Component Applet
Control JSP Servlet 일반 방식과 동일
Model EJB 일반 방식과 동일
주 ) View Data 를 사용자에게 보여주기 위한 기능요소 Control Business Logic 에 따라 Data 를 변환 가공하기 위한 기능 요소 Model Data 의 원천으로 DB 와 상호작용하며 Data 를 관리하는 기능 요소
GAUCE 는 Java 의 장점인 플랫폼 독립적인 시스템 구성과
Microsoft ActiveX 의 장점인 역동적 사용자 환경 (UI User Interface) 이조합된
최상의 MVC 모델을 지원합니다
2What is Gauce
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
2
Contents
2 What is GAUCE 2 What is GAUCE
3 GAUCE Component 3 GAUCE Component
4 For Java of GAUCE 4 For Java of GAUCE
5 QampA 5 QampA
Gauce 40(Java) Install
Environment Setting
Gauce Service Structure amp Sample explanation
1 The aim of Gauce Java Education 1 The aim of Gauce Java Education
3
Contents
1 GAUCE 교육 목적
1-1 교육 목적
1-2 교육 목표
2 What is GAUCE
2-1 개념정리
2-2 GAUCE Architecture
2-3 개발방법론
2-4 지원방식
2-5 Merit of GAUCE
3 GAUCE Component
3-1 Component List
3-2 Component Install
4 For Java of GAUCE
4-1 GAUCE40 Install
4-2 Environment Setting
4-3 Service Structure
5 QampA
6 Tool guide
6-1 Report Builder
7 실습
7-1 List 조회
7-2 Report 작성
7-3 Transaction 처리
1 The aim of Gauce Java Education
SHIFT Info amp Comm CoLtd
5
1 The aim of Gauce Java Education
교육목적 Gauce Java 의 이해 Gauce Java 의 코딩 방법 숙지
교육목표 Gauce Java 의 개발에 앞서서 Gauce 개념과 Gauce
Java 의 동작구조를 이해하고 이를 바탕으로 Gauce Java 의 코딩 방법을 숙지하도록 한다
2 What is GAUCE
SHIFT Info amp Comm CoLtd
7
2What is Gauce
Component 기반의 통합 웹 개발 toolkit
JAVA NET COM+ 이라는 플랫폼 위에서 웹 어플리케이션 개발 시 라이브러리를 제공하여 효율적으로 개발하도록 도와주는 tookit
Client 측에서 HTML DHTML JSP Servlet 등을 이용하여 ActiveX Component 를 embedded 시켜 Webpage 를 구현
Server 측에서 ActiveX Component 에서 buffering 되었던 여러 개의 record 를 각각의 transaction type 과 함께 data tunneling 기법을 이용하여 한꺼번에 전송되어 서버 object 는 각각의 transaction type 에 따라 입력 수정 삭제를 동시에 처리
Gauce 개념 정리
8
bull GAUCE 는 기존 Web 개발의 난점을 극복하기 위한 다양한 웹 Data Presentation Model 들을 Component 화하여 단순히 조회 기능만이 가능한 웹 리포팅툴의 한계를 뛰어넘는 입력 수정 삭제까지 가능한 완벽한 애플리케이션의 손쉬운 개발이 가능한 제품입니다
bull GAUCE 는 분산 DB 환경에서 웹 브라우저를 통해 기업 고객 공급망 등 다양한 사용자가 다양한 방식으로 DB 에 접근 웹 애플리케이션을 활용할 수 있도록 해주는 Enterprise Client Web 개발 플랫폼입니다
2What is Gauce
9
2What is Gauce
Gauce Architecture
10
구분 기존 방식 GAUCE Active Enterprise 채용시
View HTML Applet HTML ActiveX Component Applet
Control JSP Servlet 일반 방식과 동일
Model EJB 일반 방식과 동일
주 ) View Data 를 사용자에게 보여주기 위한 기능요소 Control Business Logic 에 따라 Data 를 변환 가공하기 위한 기능 요소 Model Data 의 원천으로 DB 와 상호작용하며 Data 를 관리하는 기능 요소
GAUCE 는 Java 의 장점인 플랫폼 독립적인 시스템 구성과
Microsoft ActiveX 의 장점인 역동적 사용자 환경 (UI User Interface) 이조합된
최상의 MVC 모델을 지원합니다
2What is Gauce
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
3
Contents
1 GAUCE 교육 목적
1-1 교육 목적
1-2 교육 목표
2 What is GAUCE
2-1 개념정리
2-2 GAUCE Architecture
2-3 개발방법론
2-4 지원방식
2-5 Merit of GAUCE
3 GAUCE Component
3-1 Component List
3-2 Component Install
4 For Java of GAUCE
4-1 GAUCE40 Install
4-2 Environment Setting
4-3 Service Structure
5 QampA
6 Tool guide
6-1 Report Builder
7 실습
7-1 List 조회
7-2 Report 작성
7-3 Transaction 처리
1 The aim of Gauce Java Education
SHIFT Info amp Comm CoLtd
5
1 The aim of Gauce Java Education
교육목적 Gauce Java 의 이해 Gauce Java 의 코딩 방법 숙지
교육목표 Gauce Java 의 개발에 앞서서 Gauce 개념과 Gauce
Java 의 동작구조를 이해하고 이를 바탕으로 Gauce Java 의 코딩 방법을 숙지하도록 한다
2 What is GAUCE
SHIFT Info amp Comm CoLtd
7
2What is Gauce
Component 기반의 통합 웹 개발 toolkit
JAVA NET COM+ 이라는 플랫폼 위에서 웹 어플리케이션 개발 시 라이브러리를 제공하여 효율적으로 개발하도록 도와주는 tookit
Client 측에서 HTML DHTML JSP Servlet 등을 이용하여 ActiveX Component 를 embedded 시켜 Webpage 를 구현
Server 측에서 ActiveX Component 에서 buffering 되었던 여러 개의 record 를 각각의 transaction type 과 함께 data tunneling 기법을 이용하여 한꺼번에 전송되어 서버 object 는 각각의 transaction type 에 따라 입력 수정 삭제를 동시에 처리
Gauce 개념 정리
8
bull GAUCE 는 기존 Web 개발의 난점을 극복하기 위한 다양한 웹 Data Presentation Model 들을 Component 화하여 단순히 조회 기능만이 가능한 웹 리포팅툴의 한계를 뛰어넘는 입력 수정 삭제까지 가능한 완벽한 애플리케이션의 손쉬운 개발이 가능한 제품입니다
bull GAUCE 는 분산 DB 환경에서 웹 브라우저를 통해 기업 고객 공급망 등 다양한 사용자가 다양한 방식으로 DB 에 접근 웹 애플리케이션을 활용할 수 있도록 해주는 Enterprise Client Web 개발 플랫폼입니다
2What is Gauce
9
2What is Gauce
Gauce Architecture
10
구분 기존 방식 GAUCE Active Enterprise 채용시
View HTML Applet HTML ActiveX Component Applet
Control JSP Servlet 일반 방식과 동일
Model EJB 일반 방식과 동일
주 ) View Data 를 사용자에게 보여주기 위한 기능요소 Control Business Logic 에 따라 Data 를 변환 가공하기 위한 기능 요소 Model Data 의 원천으로 DB 와 상호작용하며 Data 를 관리하는 기능 요소
GAUCE 는 Java 의 장점인 플랫폼 독립적인 시스템 구성과
Microsoft ActiveX 의 장점인 역동적 사용자 환경 (UI User Interface) 이조합된
최상의 MVC 모델을 지원합니다
2What is Gauce
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
1 The aim of Gauce Java Education
SHIFT Info amp Comm CoLtd
5
1 The aim of Gauce Java Education
교육목적 Gauce Java 의 이해 Gauce Java 의 코딩 방법 숙지
교육목표 Gauce Java 의 개발에 앞서서 Gauce 개념과 Gauce
Java 의 동작구조를 이해하고 이를 바탕으로 Gauce Java 의 코딩 방법을 숙지하도록 한다
2 What is GAUCE
SHIFT Info amp Comm CoLtd
7
2What is Gauce
Component 기반의 통합 웹 개발 toolkit
JAVA NET COM+ 이라는 플랫폼 위에서 웹 어플리케이션 개발 시 라이브러리를 제공하여 효율적으로 개발하도록 도와주는 tookit
Client 측에서 HTML DHTML JSP Servlet 등을 이용하여 ActiveX Component 를 embedded 시켜 Webpage 를 구현
Server 측에서 ActiveX Component 에서 buffering 되었던 여러 개의 record 를 각각의 transaction type 과 함께 data tunneling 기법을 이용하여 한꺼번에 전송되어 서버 object 는 각각의 transaction type 에 따라 입력 수정 삭제를 동시에 처리
Gauce 개념 정리
8
bull GAUCE 는 기존 Web 개발의 난점을 극복하기 위한 다양한 웹 Data Presentation Model 들을 Component 화하여 단순히 조회 기능만이 가능한 웹 리포팅툴의 한계를 뛰어넘는 입력 수정 삭제까지 가능한 완벽한 애플리케이션의 손쉬운 개발이 가능한 제품입니다
bull GAUCE 는 분산 DB 환경에서 웹 브라우저를 통해 기업 고객 공급망 등 다양한 사용자가 다양한 방식으로 DB 에 접근 웹 애플리케이션을 활용할 수 있도록 해주는 Enterprise Client Web 개발 플랫폼입니다
2What is Gauce
9
2What is Gauce
Gauce Architecture
10
구분 기존 방식 GAUCE Active Enterprise 채용시
View HTML Applet HTML ActiveX Component Applet
Control JSP Servlet 일반 방식과 동일
Model EJB 일반 방식과 동일
주 ) View Data 를 사용자에게 보여주기 위한 기능요소 Control Business Logic 에 따라 Data 를 변환 가공하기 위한 기능 요소 Model Data 의 원천으로 DB 와 상호작용하며 Data 를 관리하는 기능 요소
GAUCE 는 Java 의 장점인 플랫폼 독립적인 시스템 구성과
Microsoft ActiveX 의 장점인 역동적 사용자 환경 (UI User Interface) 이조합된
최상의 MVC 모델을 지원합니다
2What is Gauce
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
5
1 The aim of Gauce Java Education
교육목적 Gauce Java 의 이해 Gauce Java 의 코딩 방법 숙지
교육목표 Gauce Java 의 개발에 앞서서 Gauce 개념과 Gauce
Java 의 동작구조를 이해하고 이를 바탕으로 Gauce Java 의 코딩 방법을 숙지하도록 한다
2 What is GAUCE
SHIFT Info amp Comm CoLtd
7
2What is Gauce
Component 기반의 통합 웹 개발 toolkit
JAVA NET COM+ 이라는 플랫폼 위에서 웹 어플리케이션 개발 시 라이브러리를 제공하여 효율적으로 개발하도록 도와주는 tookit
Client 측에서 HTML DHTML JSP Servlet 등을 이용하여 ActiveX Component 를 embedded 시켜 Webpage 를 구현
Server 측에서 ActiveX Component 에서 buffering 되었던 여러 개의 record 를 각각의 transaction type 과 함께 data tunneling 기법을 이용하여 한꺼번에 전송되어 서버 object 는 각각의 transaction type 에 따라 입력 수정 삭제를 동시에 처리
Gauce 개념 정리
8
bull GAUCE 는 기존 Web 개발의 난점을 극복하기 위한 다양한 웹 Data Presentation Model 들을 Component 화하여 단순히 조회 기능만이 가능한 웹 리포팅툴의 한계를 뛰어넘는 입력 수정 삭제까지 가능한 완벽한 애플리케이션의 손쉬운 개발이 가능한 제품입니다
bull GAUCE 는 분산 DB 환경에서 웹 브라우저를 통해 기업 고객 공급망 등 다양한 사용자가 다양한 방식으로 DB 에 접근 웹 애플리케이션을 활용할 수 있도록 해주는 Enterprise Client Web 개발 플랫폼입니다
2What is Gauce
9
2What is Gauce
Gauce Architecture
10
구분 기존 방식 GAUCE Active Enterprise 채용시
View HTML Applet HTML ActiveX Component Applet
Control JSP Servlet 일반 방식과 동일
Model EJB 일반 방식과 동일
주 ) View Data 를 사용자에게 보여주기 위한 기능요소 Control Business Logic 에 따라 Data 를 변환 가공하기 위한 기능 요소 Model Data 의 원천으로 DB 와 상호작용하며 Data 를 관리하는 기능 요소
GAUCE 는 Java 의 장점인 플랫폼 독립적인 시스템 구성과
Microsoft ActiveX 의 장점인 역동적 사용자 환경 (UI User Interface) 이조합된
최상의 MVC 모델을 지원합니다
2What is Gauce
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
2 What is GAUCE
SHIFT Info amp Comm CoLtd
7
2What is Gauce
Component 기반의 통합 웹 개발 toolkit
JAVA NET COM+ 이라는 플랫폼 위에서 웹 어플리케이션 개발 시 라이브러리를 제공하여 효율적으로 개발하도록 도와주는 tookit
Client 측에서 HTML DHTML JSP Servlet 등을 이용하여 ActiveX Component 를 embedded 시켜 Webpage 를 구현
Server 측에서 ActiveX Component 에서 buffering 되었던 여러 개의 record 를 각각의 transaction type 과 함께 data tunneling 기법을 이용하여 한꺼번에 전송되어 서버 object 는 각각의 transaction type 에 따라 입력 수정 삭제를 동시에 처리
Gauce 개념 정리
8
bull GAUCE 는 기존 Web 개발의 난점을 극복하기 위한 다양한 웹 Data Presentation Model 들을 Component 화하여 단순히 조회 기능만이 가능한 웹 리포팅툴의 한계를 뛰어넘는 입력 수정 삭제까지 가능한 완벽한 애플리케이션의 손쉬운 개발이 가능한 제품입니다
bull GAUCE 는 분산 DB 환경에서 웹 브라우저를 통해 기업 고객 공급망 등 다양한 사용자가 다양한 방식으로 DB 에 접근 웹 애플리케이션을 활용할 수 있도록 해주는 Enterprise Client Web 개발 플랫폼입니다
2What is Gauce
9
2What is Gauce
Gauce Architecture
10
구분 기존 방식 GAUCE Active Enterprise 채용시
View HTML Applet HTML ActiveX Component Applet
Control JSP Servlet 일반 방식과 동일
Model EJB 일반 방식과 동일
주 ) View Data 를 사용자에게 보여주기 위한 기능요소 Control Business Logic 에 따라 Data 를 변환 가공하기 위한 기능 요소 Model Data 의 원천으로 DB 와 상호작용하며 Data 를 관리하는 기능 요소
GAUCE 는 Java 의 장점인 플랫폼 독립적인 시스템 구성과
Microsoft ActiveX 의 장점인 역동적 사용자 환경 (UI User Interface) 이조합된
최상의 MVC 모델을 지원합니다
2What is Gauce
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
7
2What is Gauce
Component 기반의 통합 웹 개발 toolkit
JAVA NET COM+ 이라는 플랫폼 위에서 웹 어플리케이션 개발 시 라이브러리를 제공하여 효율적으로 개발하도록 도와주는 tookit
Client 측에서 HTML DHTML JSP Servlet 등을 이용하여 ActiveX Component 를 embedded 시켜 Webpage 를 구현
Server 측에서 ActiveX Component 에서 buffering 되었던 여러 개의 record 를 각각의 transaction type 과 함께 data tunneling 기법을 이용하여 한꺼번에 전송되어 서버 object 는 각각의 transaction type 에 따라 입력 수정 삭제를 동시에 처리
Gauce 개념 정리
8
bull GAUCE 는 기존 Web 개발의 난점을 극복하기 위한 다양한 웹 Data Presentation Model 들을 Component 화하여 단순히 조회 기능만이 가능한 웹 리포팅툴의 한계를 뛰어넘는 입력 수정 삭제까지 가능한 완벽한 애플리케이션의 손쉬운 개발이 가능한 제품입니다
bull GAUCE 는 분산 DB 환경에서 웹 브라우저를 통해 기업 고객 공급망 등 다양한 사용자가 다양한 방식으로 DB 에 접근 웹 애플리케이션을 활용할 수 있도록 해주는 Enterprise Client Web 개발 플랫폼입니다
2What is Gauce
9
2What is Gauce
Gauce Architecture
10
구분 기존 방식 GAUCE Active Enterprise 채용시
View HTML Applet HTML ActiveX Component Applet
Control JSP Servlet 일반 방식과 동일
Model EJB 일반 방식과 동일
주 ) View Data 를 사용자에게 보여주기 위한 기능요소 Control Business Logic 에 따라 Data 를 변환 가공하기 위한 기능 요소 Model Data 의 원천으로 DB 와 상호작용하며 Data 를 관리하는 기능 요소
GAUCE 는 Java 의 장점인 플랫폼 독립적인 시스템 구성과
Microsoft ActiveX 의 장점인 역동적 사용자 환경 (UI User Interface) 이조합된
최상의 MVC 모델을 지원합니다
2What is Gauce
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
8
bull GAUCE 는 기존 Web 개발의 난점을 극복하기 위한 다양한 웹 Data Presentation Model 들을 Component 화하여 단순히 조회 기능만이 가능한 웹 리포팅툴의 한계를 뛰어넘는 입력 수정 삭제까지 가능한 완벽한 애플리케이션의 손쉬운 개발이 가능한 제품입니다
bull GAUCE 는 분산 DB 환경에서 웹 브라우저를 통해 기업 고객 공급망 등 다양한 사용자가 다양한 방식으로 DB 에 접근 웹 애플리케이션을 활용할 수 있도록 해주는 Enterprise Client Web 개발 플랫폼입니다
2What is Gauce
9
2What is Gauce
Gauce Architecture
10
구분 기존 방식 GAUCE Active Enterprise 채용시
View HTML Applet HTML ActiveX Component Applet
Control JSP Servlet 일반 방식과 동일
Model EJB 일반 방식과 동일
주 ) View Data 를 사용자에게 보여주기 위한 기능요소 Control Business Logic 에 따라 Data 를 변환 가공하기 위한 기능 요소 Model Data 의 원천으로 DB 와 상호작용하며 Data 를 관리하는 기능 요소
GAUCE 는 Java 의 장점인 플랫폼 독립적인 시스템 구성과
Microsoft ActiveX 의 장점인 역동적 사용자 환경 (UI User Interface) 이조합된
최상의 MVC 모델을 지원합니다
2What is Gauce
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
9
2What is Gauce
Gauce Architecture
10
구분 기존 방식 GAUCE Active Enterprise 채용시
View HTML Applet HTML ActiveX Component Applet
Control JSP Servlet 일반 방식과 동일
Model EJB 일반 방식과 동일
주 ) View Data 를 사용자에게 보여주기 위한 기능요소 Control Business Logic 에 따라 Data 를 변환 가공하기 위한 기능 요소 Model Data 의 원천으로 DB 와 상호작용하며 Data 를 관리하는 기능 요소
GAUCE 는 Java 의 장점인 플랫폼 독립적인 시스템 구성과
Microsoft ActiveX 의 장점인 역동적 사용자 환경 (UI User Interface) 이조합된
최상의 MVC 모델을 지원합니다
2What is Gauce
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
10
구분 기존 방식 GAUCE Active Enterprise 채용시
View HTML Applet HTML ActiveX Component Applet
Control JSP Servlet 일반 방식과 동일
Model EJB 일반 방식과 동일
주 ) View Data 를 사용자에게 보여주기 위한 기능요소 Control Business Logic 에 따라 Data 를 변환 가공하기 위한 기능 요소 Model Data 의 원천으로 DB 와 상호작용하며 Data 를 관리하는 기능 요소
GAUCE 는 Java 의 장점인 플랫폼 독립적인 시스템 구성과
Microsoft ActiveX 의 장점인 역동적 사용자 환경 (UI User Interface) 이조합된
최상의 MVC 모델을 지원합니다
2What is Gauce
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
11
2What is Gauce
Gauce 지원방식
Server
HTTP Tunneling
패킷 압축
helliphellip
MxGrid
MxChart MxTree
MxReport Etc
Pure JavaCOM+ NET
Server SideScript
J2EEWAS
Legacy System Database
DataSet
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
MxDataSet Component 를 통한 빠른 응답 속도와 대용량 데이터 통합 처리 - UI Component 간의 데이터를 클라이언트에서 통합하여 처리 - 대용량 Data 처리에도 원활한 버퍼링 수행 ( 데이터 분할 전송 기능 FirstRow 기능 )
Data Tunneling 과 Data 압축 기법 - 변경된 Data 만을 Data Tunneling 기법을 통해 빠르게 출력 - Data Packet 에 대한 자동압축기능을 지원하여 Network 의 영향력 최소화 및 Brandwidth 가용성 향상
GAUCE Service
(XMLJSPCASP)
JVM
CLR
MTS
GAUCE EngineWebServer
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
12
2What is Gauce
Gauce 지원방법 GAUCE 구조
- View 영역과 Server 영역 분리
① View 영역
- 14 개의 ActiveX Component 를 이용하여 화면을 작성합니다
컴포넌트는 ActiveX 기반이므로 ltobjectgthellipltobjectgt 태그로 선언
② Server 영역
- 비즈니스 영역을 포함하고 Data 영역을 가짐
- GAUCE API 를 이용하여 클라이언트 요청 서비스 처리
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
13
2What is Gauce
웹상에서 다양한 Application UI 및 기능 제공 다중 입력 수정 삭제 및 조회 입력 화면의 일원화로
업무 처리시간의 단축
사용자
측면
ActiveX 및 Program의 재사용성 증대 프레젠테이션과 비즈니스 로직의 분리로 관리 용이 로직 간편화로 신속한 장애 대처 및 유지보수 용이
개발자
운영자
측면
First-row방식 제공으로 Data 조회 및 트랜잭션 처리의 빠른 응답 Component를 통한 데이타 압축을 이용하여 네트웍 부하 감소 ( 압축 72) 다중 입력 수정 삭제 등으로 시스템 부하 최소화 데이터 갱신시 컴포넌트 안에서 구동되어 화면 깜박임 (Flickering Screen) 등의 단점을 보완
성능개선
측면
Merit of GAUCE
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
3 GAUCE Component
SHIFT Info amp Comm CoLtd
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
15
3GAUCE Component
Component(14 개 )bull Grid
bull EMEdit(MaskEdit)
bull Treeview
bull LuxeCombo(Combo)
bull Menu
bull TextArea
bull Radio
bull Tab
bull Report ndash Invisible
bull DataSet ndash Invisible
bull Tr(LogicalTR) - Invisible
bull ImgDataSet - Invisible
bull Bind(Binder) ndash Invisible
bull InputFile(FileControl) ndash etc
GAUCE Component Manual
MAX 메뉴 - MAX 자료실에서 다운로드 Or 온라인 매뉴얼
httpmembershiftcokr Or httpwwwgaucecomonlineindexhtml
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
16
3GAUCE Component
Non-Visual Component
DataSetDataSetDataSetDataSet
bull 정의 DataSet 은 내부적으로 다양한 Buffer 와 Header 정보를 관리하는 Table 형태 Buffer 간의 상호작용 및 제공하는 외부 인터페이스를 통해 Viewer 기능을 담당하는 Component 들을 연계하여 DataSet 의 Data 를 각기 고유의 UI 형태로 표현하게 하는 DataBuffer CUD 작업이 발생시 변경된 Data 들 역시 DataSet 을 통해 관리
TRTRTRTR
bull 정의 여러 개의 DataSet 을 서버로 송수신시 사용 CUD 작업 후 Transaction 처리할 DataSet 을 서버로 송신시 또는 여러 개의 DataSet 구조를 하나의 서비스를 통해 조회시에도 사용
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
17
3GAUCE Component
Non-Visual Component
BindBindBindBind
bull 정의 일반 HTML 에서 사용되는 Edit TextArea Combo 등의 일반 Component 제품에서 제공하는 LuxeCombo Radio TextArea EMedit Component 를 DataSet Component 와 연결할 수 있는 기능을 내장하는 Component 로써 자료를 변경하고 읽어오는 기능을 하는데 사용
ReportReportReportReport
bull 정의 DataSet 과 연결하여 데이터를 다양한 Report 로 표현 직접출력과 미리보기 기능을 제공하며 출력화면을 이미지 형태 저장 가능
User Interface
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
18
3GAUCE Component
Visual Component
GridGridGridGrid
bull 정의 DataSet 과 연결하여 화면에 Table 형태의 Data 의 표현 및 CUD 작업을 지원
User Interface
bull 기본기능 계산 column 생성 Column 위치 및 View 여부를 Control 이 가능 Fix Column 설정 및 Column 별 자유로운 속성이 지정 ( 변경 ) 이 가능 Summary Row 를 이용 합계와 소계를 손쉽게 처리 Grid 의 내용을 Excel CSV TXT 파일의 형태로 저장 가능 Combo Checkbox Popup Password 의 기능 이용 및 수정 입력이 가능 Tool tip Image column CrossTab 기능을 제공
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
19
3GAUCE Component
Visual Component
EMEditEMEditEMEditEMEdit
bull 정의 다양한 Format 지원을 통해 날짜 사원번호 금액 등 Mask 기능이 필요한 정보 표현시 사용
User Interface
TreeViewTreeViewTreeViewTreeView
bull 정의 DataSet Component 와 연결하여 Data Item 을 Tree 형태로 표현 Grouping 된 Item 들의 집합 또는 부서 목록 등 계층 구조로 효율적인 표시를 할 수 있는 정보를 표시하는데 일반적으로 사용하며 선택된 각 Item 은 Code와 Text 값을 갖고 있어 이를 사용하여 Item 의 상세 정보를 표시하는 작업에 사용
User Interface
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
20
3GAUCE Component
Visual Component
TextAreaTextAreaTextAreaTextArea
bull 정의 URL 경로로부터 직접 데이터를 받아 보여주는 TextArea
User Interface
RadioRadioRadioRadio
bull 정의 DataSet 에 있는 Column 들을 Binding 하여 Item 의 개수가 동적인 Radio Button 을 생성하거나 Radio 의 Format 을 Code 와 Text 로 지정해서 Item 의 개수가 정적인 Radio Button 생성
User Interface
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
21
3GAUCE Component
Visual Component
TabTabTabTab
bull 정의 DIV 를 변경하여 탭페이지 화면을 제어할 때 사용
User Interface
XChartXChartXChartXChart
bull 정의 DataSet 과 연결하여 각종 수치 데이타를 보다 이해하기 쉽게 다양한 Chart 로 표현하며 Table 형식의 Data 를 막대 선 파이 등 30 여종의 다양한 형태 지원
User Interface
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
22
3GAUCE Component
기타
InputFileInputFileInputFileInputFile
bull 정의 File Save Dialog 기능으로 File 을 선택해서 파일명을 갖고 있으며 Server 로 임의의 File Upload 할 때 사용
User Interface
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
23
3GAUCE Component
Component 설치 ActiveUpdate 으로 설치하는 방법ltOBJECT ID=Manager CLASSID=CLSID3042C30E-50B7-44EF-B4B6-C9AB391DEF78 codebase=Managercabversion=1003gt
ltPARAM NAME=CompareVersionType VALUE=0gt
ltOBJECTgt
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
24
3GAUCE Component
Component 설치 installerexe 로 설치하는 방법
bull cabfiles폴더에 component cabfile 들을 넣어두고 installerexe 를 실행
( 만약 기존의 component 가 깔려 있으면 installer 가 기존 component 를 지운 후에 설치함 )
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
25
3GAUCE Component
Component 설치 codebase 로 설치하는 방법ltobject id=mxBind classid=CLSID4A35BB2C-B831-4199-A486-FEA332D085D9 codebase=MxBindercabversion=1212gt
ltobjectgt
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
26
3GAUCE Component
Component 설치 component dll 파일로 수동 설치하는 방법
bull component cabfile 을 압축을 풀어서 dll 파일들을 원하는 경로에
위치시킨 후 command창에서 regsvr32 dll 파일이 있는 경로부터
파일명까지 기술하여 Enter key누르면 설치
bull component cabfile 을 압축을 풀어서 inf file( 설치정보 file) 을 오른쪽
마우스 클릭하여 설치를 선택하여 설치
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
4 For Java of GAUCE
SHIFT Info amp Comm CoLtd
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
28
4 For Java of GAUCE
Gauce 40(JAVA) Install1) 가우스 설치 시 점검사항 네트워크 확인
- IP 스캔하여 사용하기 위함 JDK 버전이 14 이상인지 확인
- jce version 122 이상 권장
- 보안라이브러리를 사용하기 위함 Servlet 버전이 23 이상인지 확인
- Filter 가 Servlet23 이상에서만 동작 가우스가 설치될 WAS 의 WebContext 가 존재여부
- WebContext 의 WEB-INF 폴더에 설치작업이 이루어짐 webxml 필요
2) 가우스 설치 후 점검사항 GAUCE 가 설치된 디렉토리의 gauce-installlog 파일을 확인하여 정상적으로
설치작업이 이루어 졌는지 확인
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
29
4 For Java of GAUCE
Gauce 40(JAVA) Install GUI 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
을 누른다
② GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 선택하고
을 누른다
③ GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
④ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 을 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를 바탕으로
레지스트리 파일에 등록되고 WAS 의 webxml 파일을 수정하여
GauceFilter 를 등록시키고 gauce-installlog 파일이 생성된다
다음 gt
다음 gt
설치
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
30
4 For Java of GAUCE① ②
③④
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
31
4 For Java of GAUCE
Gauce 40(JAVA) Install Console 모드로 설치하기
① installcmd 를 실행시켜 환영메시지와 주의사항을 잘 읽어본 후
GAUCE Server 를 설치할 디렉토리 (WAS or Web Server 의
Application Context 디렉토리 하부에 있는 WEB-INF) 를 입력하고
Enter key 를 누른다
② GAUCE 를 설치하고자 하는 컴퓨터의 IP 주소를 선택한다
③ 설치폴더와 설치할 컴퓨터 IP 정보를 확인한 후 install 할 건지에 대한
답으로 y 를 입력하고 Enter key 를 누른다
GAUCE 라이브러리 및 구동에 필요한 환경 파일 샘플 등이
지정한 설치 디렉토리에 복사되고 설치시에 입력한 정보를
바탕으로 레지스트리 파일에 등록되고 WAS 의 webxml 파일을
수정하여 GauceFilter 를 등록시키고 gauce-installlog 파일이
생성된다
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
32
4 For Java of GAUCE
Gauce 40(JAVA) Install Install
Directory내 용
actions - Gauce Servlet 사용시 실질적인 class 파일 들이 놓일 위치 - Action=gtgauce밑의 Directory 에 Gauce40 설치시 제공되어지는 sample 에 대한 Servlet class 파일들이 놓여진다 - Gauce action class 들이 놓여질 위치
lib - Gauce40 구동시 필요로한 파일들이 있는 Directory
license - gaucecrt license 파일을 check하기위한 보안인증서 - licensegaucegauce40 license key
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
33
4 For Java of GAUCE
Gauce 40(JAVA) InstallInstall Directory 내 용
gauce-installlog
- Gauce40 install 시에 발생하는 log
webxmlbackup - 기존 was 에 있는 webxml 파일을 backup 한 파일
webxml - Gauce40 을 설치후 변경된 webxml 파일
gaucexml - Gauce 서비스가 동작하기 위한 기본적인 항목들을 설정한다
gsaf-configxml - Gauce 자체 framework 의 action 들이 수행하기 위한 환경파일
DBManagerbat - 고급 샘플에 들어져있는 데이타들을 관리하기 위한 파일
runDBbat - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 create 하는 파일 (window 용 )
registry - Gauce40 설치시 해당서버의 정보가 들어져있다
runDBsh - Gauce40 설치시 고급 샘플을 보기위하여 DB 를 creategk 는 파일 (Unix 용 )
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
34
4 For Java of GAUCE
Platform UNIX(HP-UX AIX Solaris Digital 등 ) LINUX Windows NT 2000Server
DBMS Oracle816 이상 DB2 Informix Sybase SQL Server MySQL 등
Web Server Netscape Ent Server Oracle Web Server Apache Server IIS
WASApache-JServ Jakarta-Tomcat BEA-WebLogic IBM-WebSphere Sysbase-EAServer Alliare-JRUN HP-AP 등
OS Windows 2000 이상
CPU 최소 Pentium 166MHz 권장 Pentium 400MHz 이상
Memeory 최소 128MB (256MB 이상 권장 )
용량 11MB
Web Browser InternetExplorer 55 (InternetExplorer 60 권장 )
Server 환경 -gt servlet 23 지원되는 WAS 에서 동작
Client 환경 ( 개발자 )
Enduser 환경 ( 일반사용자 )OS Windows 98SE 이상부터 Windows ME Windows 2000 Windows XP
Web Server InternetExplorer 55 (InternetExplorer 60 권장 )
MemoryWin 98 SEME 최소 64MB (128MB 권장 ) =gt Client 에서 DataSet 이 메모리 사용 시Win 2000 최소 128MB (256MB 권장 )
용량 8MB -gt 컴포넌트 15 가지 설치하는데 필요한 용량
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
35
4 For Java of GAUCE
Environment Setting webxml
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
36
4 For Java of GAUCE
Environment Setting webxml
필터 1 필터 2
(GAUCE 필터 )
필터 3 필터 N
ServletRequest
ServletResponse
HttpGauceRequest
HttpGauceResponse
변환작업
GAUCE 서비스
Action Chain 구동
Filter Chain
XML to Binary 변환
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
37
4 For Java of GAUCE
Environment Setting - webxmlbull ltfilter-namegt GAUCE 서버를 위해 등록된 Filter 의 이름
bull ltfilter-classgt 등록된 filter 의 기능을 수행하도록 되어 있는 클래스 이름
bull ltparam-namegt 서블릿 컨테이너에 의해 등록된 GauceFilter 가 처음 로딩될 때
넘겨주는 초기 파라미터의 이름 conf-reload 파라미터는
환경파일 (gaucexml gsaf-configxml) 이 수정되었을 때 서버 또는
WAS 를 재시작하지 않고 동적으로 변경된 내용을 반영하기
위한 것으로 파라미터의 값만큼 주기적으로 환경파일을
감시하며 변경되었을 때 변경된 내용을 GAUCE 서버에
반영한다
bull ltparam-valuegt 주기적으로 환경파일이 변경되었는지 감시하기 위해 시간을
설정하는 값 (millisecond 단위 )( 단 0 일 경우 감시기능 수행안함 )
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
38
4 For Java of GAUCE
Environment Setting - webxmlbull lturl-patterngt ltfilter-mappinggt 에 정의되어 있는 이 값은 클라이언트에서 요청된
URL 과 비교하여 패턴 매핑이 이루어 질 경우 위에서 등록된
GauceFilter 가 동작하도록 하는 기능을 한다
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
39
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltglobalgt GAUCE 서버를 통해 수행되는 모든 서비스에 반영되는 정보
- compressed 클라이언트 (컴포넌트 ) 와 GAUCE 서버 사이에서 데이터를 주고
받을 때 전송되는 데이터에 대해 압축을 수행한 후 전송하는지에
대한 여부 설정 (default 값은 false)
- fragment GAUCE 서버에서 클라이언트로 데이터를 전송하는 동안 전송되는
데이터에 대한 전송단위를 설정 ( 한번에 전송되는 데이터셋의 내부에
저장된 행의 개수를 의미
bull ltcharsetgt 클라이언트와 GAUCE 서버 사이에서 전송되는 문자열 데이터에
대한 인코딩 방법을 명시 - default 서버 상에서 디폴트로 사용되는 character set 을 정의
- get 클라이언트에서 서버상으로 문자열을 전송할 때 GET 방식으로
전송된 문자열을 서버상에서 디코딩 하기 위한 character set
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
40
4 For Java of GAUCE
Environment Setting ndash gaucexml - post 클라이언트에서 POST 방식으로 전송된 문자열에 대해 서버상에서
디코딩을 하기 위한 character set
bull ltcol-defgt GAUCE 서비스를 작성할 때 데이터셋에 정의하는 컬럼에 대해
디폴트로 설정되는 값을 정의
- integer ldquointrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을
경우 기본적으로 사용하는 값을 정의
- decimal ldquodecimalrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지
않았을 경우 기본적으로 사용하는 값을 정의 (73 정수 7 소수 3) - string ldquostringrdquo 형에 해당하는 컬럼정의에 대해 길이를 명시하지 않았을 경우 기본적으로 사용하는 값을 정의 (default 값 255)
- round ldquodecimalrdquo 형의 컬럼이 정의된 크기보다 실제 입력된 값의 자리수가
더 클 경우 처리되는 방법을 명시 (F FLOOR R ROUND C CEIL)
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
41
4 For Java of GAUCE
Environment Setting ndash gaucexmlbull ltcryptogt GAUCE 에서 암호화 모듈을 적용할 경우 3- 파티에서 제공하는
암호화 라이브러리를 적용 ( 생략 가능 )
- spi 3- 파티에서 제공하는 암호화 라이브러리에 대한 어댑터 클래스이름
등록한다
bull ltresourcegt GAUCE 환경을 통해 등록할 수 있는 외부 리소스를 정의 (생략가능 )
bull ltdataSourcegt 데이터베이스에 대한 연결정보를 정의 데이터베이스와
GAUCE 서버 사이에서 주고 받는 문자열을 character set지정
( 한 개 이상 등록 가능 )
- name ltdataSourcegt 에 대한 이름을 정의 ( 이름 중복 주의 )
- charsetIn GAUCE 서버에서 데이터베이스로 문자열을 저장할 때
사용하는 character set 을 의미
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
42
4 For Java of GAUCE
Environment Setting ndash gaucexml - charsetOut 데이터베이스에서 GAUCE 서버로 문자열을 select 할 때
사용하는 character set 을 정의
bull ltjdbcgt 데이터베이스에 대한 연결정보를 정의 ( 단 하나의
ltdataSourcegt 에 대해서 하나의 ltjdbcgt 만을 정의해야함 )
- driver 데이터베이스 벤더 회사들이 제공하는 드라이버의 이름
- url 데이터베이스에 접속하기 위한 정보로서 데이터베이스의 접속
URL
- user 데이터베이스에 대한 사용자 계정
- password 사용자 계정에 대한 password
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
43
4 For Java of GAUCE
Gauce Service Structure GAUCE API
GAUCE40 API 참조하시려면
- Gauce 설치파일의 doc 폴더에 javadoc 존재
Gauce Service Structure
- 클라이언트에서 request 가 들어오면 WAS 의 서블릿 엔진이 ServletRequest 객체로 변환해서 GauceFilter 의 doFilter() 메소드의 매개변수로 전달 -gt HttpServletRequest 을 상속 받은 HttpGauceRequest 를 통해서 Dataset 과 요청 정보를 얻어옴
bull ServletRequest 클라이언트의 요청 정보를 가지고 있는 인터페이스
bull GauceFilter 클라이언트로부터 받은 request 에 대해 서비스를 함
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
44
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletRequest ServletRequest 를 상속 받은 인터페이스로 서블릿엔진이
이 인터페이스를 구현하고 http 통신을 통해
클라이언트의 전송정보를 쉽게 얻을 수 있는 역할을 함
bull HttpGauceRequest HttpServletRequest 를 상속받은 클래스로
HttpServeltRequest 에서 제공되는 HTTP프로토콜과
관련된 정보를 추출할 수 있는 모든 메서드를 지원
bull getGauceInputStream() HttpServletRequest 에 body 로 전송되는 DataSet 에
대한 InputStream 을 추출하여 반환
bull GauceInputStream 클라이언트로부터 전송된 입력스트림과 입력스트림을
통해서 추가적으로 검출한 GauceDataSet 의 정보를 꺼낼
수 있는 추상화 클래스
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
45
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull HttpServletResponse GauceFilter 가 처리한 요청에 대한 응답인
SerlvetResponse 를 상속받은 인터페이스로 서블릿
엔진이 클라이언트의 요청을 처리하고 클라이언트에
응답을 보내기 위한 HTTP프로토콜을 통신을 하기
위한 인터페이스
bull getGauceOutputStream() 클라이언트로 전송하기 위한 결과를 가진
GauceOutputStream 를 반환
bull GauceOutputStream 클라이언트로 전송할 출력스트림과 Gauce Service 에
사용하기 위해서 부합하도록 추상화 시킨 클래스
bull GauceDataSet 컴포넌트와 GAUCE 서버 간에 전송되는 자료의 저장공간
( 이름 중복 주의 )
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
46
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull fragment() first-row 가 지원되는 GauceDataSet 으로 서비스를 제공하기 위한
메소드 ( 인자 dataset명 first-row 할 record 수 ( 생략가능 ))
bull put() GauceDataRow 에 원하는 데이터형의 컬럼 값을 삽입하고 heap() 가
호출될때 까지 입력된 값은 순차적으로 GauceDataRow 에 적재
bull heap() put 메소드를 통해 순차적으로 입력된 컬럼의 값을 하나의 행으로
인식하고 GauceDataSet 에 적재 (Gauce 3X 제공하는 메소드인
addDataRow 와 동일한 기능을 수행 )
bull wirte() GauceDataSet 을 Component 로 전송
bull close() Component 와의 통신을 끊음
bull read() 주어진 GauceDataSet 이름으로 생성된 GauceDataSet 을 반환
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
47
4 For Java of GAUCE
Gauce Service Structure GAUCE API
bull getDataRows() DataSet 에 저장되어있는 GauceDataRow 를 배열로 반환
bull GauceDataRow GacueDataSet 에서 Row 정보를 나타냄 Row 객체를 생성한
후 GauceDataSet 에 등록해야함
bull getJobType() Row 에 대한 작업 유형을 반환
bull TB_JOB_NORMAL TB_JOB_INSERT TB_JOB_UPDATE
TB_JOB_DELETE 4 가지 상수를 제공함
bull getInt(int idx) getLong(int idx) getString(int idx) getFloat(int idx) 등 해당
인덱스의 값을 데이터형에 따라서 반환한다
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
5 QampA
SHIFT Info amp Comm CoLtd
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
PLUS
SHIFT Info amp Comm CoLtd
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
Report Builder
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
51
Report Designer Dynamic Report Builder
Web Reporting 개발 가능성을 극대화한 시각적 Web Report Designer
2
3
4
5
6
1
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
52
Report Component 에서 사용되는 스크립트를 생성해주는 저작도구
1
2
3
4
5
6
7
8
Report Builder 화면 (General)
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
53
Report Builder 화면 (Subtype)
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
54
Report Builder 화면 (Composite)
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
55
Report Builder 화면 (General) - 예제
Design 화면 출력화면
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
56
Report Builder 화면 (Composite)-예제
SubType 화면
Composite 화면
출력 화면
1
2
3
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
57
Report Builder 툴바 설명
새파일
열기
저장 미리보기
도움말
잠금 컬럼
글상자 계산컬럼
이미지
선
텍스트
밴드 추가
Subtype
Area 추가
6
용지설정
8
9
2
3
4
5 7
10
1
10
7
1
2
3
4
5
화면비율설정
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
58
Report Builder 의 Option
1
2
3
4
5
6
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
59
Report Builder 의 Set Grid
1
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
60
Report Builder 의 Align
1
2
3
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
61
Report Builder 의 Source View
1
2
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
62
Report Builder(1)
1
2
3
4
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
63
Report Builder(2)1
2
3
4
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
64
Script 작성 (Report 출력 )
1
2
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
65
실행결과 확인 (Browser)
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
6 실습
SHIFT Info amp Comm CoLtd
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
67
6 실습 -1
목표 부서정보 조회 수정 삭제 화면을 만든다
순서 업무정의 (Table 정의 화면정의 ) Service 생성 (JSPServlet) HTML 작성
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
68
6 실습 -1
실행결과
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
69
6 실습 -1
Table 정의
DEPTNO (2) - 부서코드
DNAME (14) - 부서명LOC (13) - 지점
DEPT
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
70
6 실습 -1
DataSet
clubs Visual Component 들이 사용할 Data 를 서비스 하는 Component
Attribute
- Logical Crosstab 으로 처리할 때 DataSet 간의 연결
- DataID Server 즉 URL 을 지정 ( 이 경로의 Data 를 Request)
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
- SortExpr DataSet 의 정렬식을 기술
Methods
- NameString DataSet 의 Data 를 조회하거나 지정할 수 있음
- Reset DataID 에 기술된 URL 을 통해 Data 를 수신
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
71
6 실습 -1
Tr
clubs DataSet 들을 묶는 전송패키징 Component (Post 방식지원 )
Attribute
- Action 해당 Data 처리를 요청할 경로
- KeyValue 여러개의 DataSet 을 Service 에서 사용할 수 있도록 묶어 준다
- Parameters Data 가 아닌 일반 변수값을 Server 로 전달
Methods
- Post KeyValue 에 설정되어있는 DataSet 에 변경내역이 있을때 해당 내용을 서비스로
Transaction 를 발생시킨다
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
72
6 실습 -1
Bind
clubs 각 UI컨트롤들간에 동일한 DataSet 을 묶는 binding Component
Attribute
- DataID UI컨트롤에 Mapping될 DataSet
- BindInfo DataSet 의 Column 정보와 UI컨트롤들간의 Bind 정보를 기술한다
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
73
6 실습 -1
Grid
clubs DataSet 과 연결하여 화면에 Table 형태로 Display
Attribute
- DataID 표현할 Data 를 가지고 있는 DataSet Component ID 기술
- Format Grid 에 출력될 Column 정보를 정의 (Format 속성 정의 가능 )
- Editable Grid 에 입력기능 여부를 지정
Methods
- ExportFile Grid 의 내용을 CSV Type 의 File 로 저장
- GridToExcel Grid 에 표현된 대로 Excel 을 실행시켜 표현
- CountRow 조회된 Row 의 개수
- RowPosition 현재 Row 의 위치값
ColumnProp
- EditStyle Grid 에서 Data 입력 시 지정된 Edit Style 로 정의
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
74
6 실습 -1
Report
clubs Tag script 를 이용한 다양한 형태의 report 를 web 에서 print 하는 component
Attribute
- DetailDataID Default Band 에 Binding 되는 DataSet Component ID
- MasterDataID Default Band 를 제외한 나머지 Band 에 Binding 되는 DataSet
Component ID
- Format Report Builder 에서 작성된 양식 format (Report Component 의 Format
에 사용 )
- SuppressColumns Suppress 양식 출력 시 Column 지정
- Landscape Report 출력 시 용지의 인쇄방향을 정의
Methods
- Preview Report 를 미리보기
- Print Report 를 인쇄
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
75
6 실습 -1
LuxeCombo
clubs 기존 CodeCombo 의 단점인 Code 와 Data 두개의 컬럼만을 지정할 수 있다는 한계를 멀티
컬럼의 형태로 확장 시킨 구조를 갖고 있는 Component 로서 DataSet 을 이용하여 Value 를
정의할 수도 있고 Value 를 직접 선언해서 정의할 수도 있음
Attribute
- ComboDataID List 용으로 사용할 DataSet 의 ID 를 기술
- ListExprFormat Combo 의 List 창에 표시할 Data Column 과 디스플레이 포맷
- CBData DataSet 을 연결하지 않고 직접 선언하여 사용할 때 Data 목록을 기술
- SearchColumn Search 기능에 대상이 되는 Column 을 지정
- CBDataColumns ComboDataID 에 DataSet 을 지정하는 방식이 아니고 CBData
Property 로 Combo Data 를 입력했을 때 입력된 데이터의 Column
명을 임의로 정의
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
76
6 실습 -1
서비스 생성 (JSPServlet)
STEP 1 GauceInputStream 객체를 생성한 후 HttpGauceRequest 를 통해
HttpServletRequest 를 받아온다
STEP 2 GauceOutputStream 객체를 생성한 후 HttpServletResponse 를 통해
Data 를 클라이언트로 전송하기 위한 Response 를 HttpGauceResponse 로
생성한다
STEP 3 자료를 저장할 GauceDataSet 객체를 생성한다
STEP 4 생성된 GauceDataSet 을 First-row 가 가능한 GauceDataSet 으로
설정한다
STEP 5 GauceDataSet 에 자료를 저장한다
STEP 6 GauceDataSet 에 컬럼 정보를 설정한다
STEP 7 GauceDataSet 을 Component 로 전송하고 작업을 종료한다
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741
쉬프트정보통신 기술지원팀 - Mail techsupport shiftcokr- Tel 02-2106-1741