• 검색 결과가 없습니다.

데이터 서비스

문서에서 2. 오즈 환경 (페이지 169-173)

2. 뷰어 바인딩 데이터

2.1 데이터 서비스

앞에서 설명한 쿼리 디자이너에서 추가한 데이터 셋은 오즈 서버가 데이터를 조회하는 반면, 리포트 디자이너에서 추가한 데이터 셋은 오즈 리포트 뷰어가 직접 데이터를 조회합니다.

뷰어가 직접 데이터를 조회하는 방식에는 ‘데이터 서비스’와 ‘FX 데이터’ 방식이 있습니다.

‘데이터 서비스’는 CSV와 JSON 데이터를 사용할 수 있습니다.

2. 뷰어 바인딩 데이터

① 리포트 디자이너의 ‘데이터 정보’ 창에서 폼 패러미터 ‘csvdata’, ‘coldiv’, ‘rowdiv’ 추가

② ‘DataService’ 팝업 메뉴의 ‘CSV 데이터 추가’

선택

③ 데이터에 ‘필드 이름’과 ‘필드 타입’이 있으면 메타 정보 포함 항목에서 체크

④ 필드 구분자, 라인 구분자에 ‘coldiv’, ‘rowdiv’

패러미터 설정

⑤ ‘런 타임 데이터 셋 적용 방법’의 ‘패러미터 (데이터)’ 체크하고 경로 옆의 ‘패러미터’

버튼 클릭 후 ‘#OZFormParam.csvdata#’

설정 지원되는 경로는 다음과 같습니다.

a. 뷰어에서 폼 패러미터로 넘긴 데이터

b. 로컬 파일 경로(뷰어가 실행된 PC) : 예) file://C:/temp/testdata.txt, C:/temp/testdata.csv, C:/temp/testdata.json c. 오즈 서버 리파지토리 경로 : 예) ozp://OZwork/data/products.txt, ozp://OZwork/data/products.json

d. URL : 예) http://127.0.0.1/testdata.txt, http://127.0.0.1/getdata.jsp?id=123(csv, json 데이터를 반환하는 프로그램)

⑥ ‘디자인 타임 데이터 셋 구성’의 ‘데이터를 입력하여 셋 구성’을 체크하고 옆의 ‘설정’

버튼 클릭 가. CSV 데이터

패러미터로 데이터를 넘기는 예

<param name="connection.servlet" value="http://127.0.0.1:8080/oz/server">

<param name="connection.reportname" value="/OZwork/design/dataset/DataService.ozr">

<param name="connection.pcount" value=“3">

<param name="connection.args1" value="csvdata=ID^NAME^ADDRESS///INTEGER^VARCHAR^VARCHAR///1^Park Chan Ho^Texas///2^Shin Ki Sung^Seoul///3^Kim Byung Hyun^Arizona">

<param name="connection.args2" value="coldiv=^">

<param name="connection.args3" value="rowdiv=///">

웹 페이지에서 뷰어를 실행할 때 아래와 같이 csvdata란 폼 패러미터로 데이터를 넘기는 방법입니다.

2.1 데이터 서비스 2. 뷰어 바인딩 데이터

⑦ ‘추가’ 버튼 클릭해서 데이터 셋 추가 후

‘필드 이름’, ‘필드 타입’, ‘데이터’ 입력

⑧ 데이터 셋이 만들어지면 데이터 밴드의

‘ODI 이름’ 속성에 ‘DataService’ 를 선택 하고 ‘데이터셋’ 속성에 추가한 데이터 셋 설정

하나의 텍스트 데이터 파일로 두 개의 데이터 셋을 생성하는 예

아래와 같이 두 개의 데이터 셋 정보를 가진 데이터 파일(products.txt)로 데이터 셋을 추가하는 방법입니다.

① 데이터에 ‘필드 이름’과 ‘필드 타입’이 있으면 메타 정보 포함 항목에서 체크

② ‘필드 구분자’, ‘라인 구분자’, ‘데이터 셋 END 마크’가 실제 데이터 파일의 구분자와 같아야 하며 선택 목록에 없는 경우 직접 입력

③ 널 데이터로 인식할 문자를 ‘널 마크’에 입력

④ 데이터 파일에 있는 빈 줄을 데이터로 인식하지 않으려면 ‘빈 줄 무시’ 체크

⑤ ‘경로’ 버튼 클릭 후 데이터 파일 지정 CategoryID^CategoryName^Description

INTEGER^VARCHAR^VARCHAR 1^음료^청량음료, 커피, 홍차, 맥주 2^조미료^감미료, 향신료, 양념, 스프레드 //EOR//

ProductID^ProductName^CategoryID^QuantityPerUnit^UnitPrice^UnitsInStock INTEGER^VARCHAR^INTEGER^VARCHAR^NUMERIC^SMALLINT

75^알파인 맥주^1^24 - 0.5 l bottles^24000.0000^125 39^OK 바닐라 셰이크^1^750 cc per bottle^28000.0000^69 65^루이지애나 특산 후추^2^32 - 8 oz bottles^21000.0000^76 61^사계절 핫 소스^2^24 - 500 ml bottles^28000.0000^NULL (빈 줄)

※ 파일 스토어나 HTTP 스토어의 CSV 데이터 셋은 하나의 파일 경로에 하나의 데이터 셋만 생성할 수 있으나 데이터 서비 스에서는 하나의 경로로 여러 데이터 셋을 생성할 수 있기 때문에 ‘데이터 셋 END 마크’

구분자가 필요합니다.

2.1 데이터 서비스 2. 뷰어 바인딩 데이터

나. JSON 형식

① 리포트 디자이너의 ‘데이터 정보’ 창에서 폼 패러미터 ‘jsondata’ 추가

② ‘DataService’ 팝업 메뉴의 ‘JSON 데이터 추가’ 선택

③ ‘디자인 타임 데이터 셋 구성’의 ‘경로’ 버튼 클릭하고 디자인시 사용할 경로 설정

④ ‘런 타임 데이터 셋 적용 방법’의 ‘패러미터 (데이터)’ 체크하고 경로 옆의 ‘패러미터’

버튼 클릭 후 ‘#OZFormParam.jsondata#’

설정

⑤ ‘JSON 데이터 셋 구성’ 아래에 있는

‘JSON_Set1’의 팝업 메뉴 중 ‘셋 구성’ 선택

⑥ 기준 JSON PATH로 설정할 노드를 마우스 오른쪽 버튼으로 클릭하여 팝업 메뉴 중

‘기준 JSON PATH 지정’ 선택

⑦ 기준 JSON PATH 아래에 있는 필드 중 추가 할 필드를 더블 클릭하여 선택된 필드로 추가

패러미터로 데이터를 넘기는 예

<param name="connection.servlet" value="http://127.0.0.1:8080/oz/server">

<param name="connection.reportname" value="/OZwork/design/dataset/DataServiceJSON.ozr">

<param name="connection.pcount" value="1">

<param name="connection.args1" value ="jsondata={'Person': [{'ID': 1, 'NAME': 'Park Chan Ho', 'ADDRESS': 'Texas'}, {'ID':

2, 'NAME': 'Shin Ki Sung', 'ADDRESS': 'Seoul'}, {'ID': 3, 'NAME': 'Kim Byung Hyun', 'ADDRESS': 'Arizona'}]}">

웹 페이지에서 뷰어를 실행할 때 아래와 같이 jsondata란 폼 패러미터로 데이터를 넘기는 방법입니다.

2.1 데이터 서비스 2. 뷰어 바인딩 데이터

⑦ 데이터 셋이 만들어지면 데이터 밴드의

‘ODI 이름’ 속성에 ‘DataService’ 를 선택 하고 ‘데이터셋’ 속성에 추가한 데이터 셋 설정

하나의 데이터 파일로 두 개의 데이터 셋을 생성하는 예

아래와 같이 두 개의 데이터 셋 정보를 가진 데이터 파일(products.json)로 데이터 셋을 추가하는 방법입니다.

{ "Category": [

{"CategoryID": 1, "CategoryName": "음료", "Description": "청량음료, 커피, 홍차, 맥주"}, {"CategoryID": 2, "CategoryName": "조미료", "Description": "감미료, 향신료, 양념, 스프레드"}, ],

"Product": [

{"ProductID": 75, "ProductName": "알파인 맥주", "CategoryID": 1, "QuantityPerUnit": "24 - 0.5 l bottles", "UnitPrice":

24000.0000, "UnitsInStock":125},

{"ProductID": 39, "ProductName": "OK 바닐라 셰이크", "CategoryID": 1, "QuantityPerUnit": "750 cc per bottle", "UnitPrice":

28000.0000, "UnitsInStock":69},

…(생략)

] }

① 디자인 시 사용할 경로와 런 타임 시 사용할 경로를 설정

② ‘JSON 데이터 셋 구성’ 의 빈 영역의 팝업 메뉴 에서 ‘셋 추가’ 클릭하여 두 번째 데이터 셋 생성

③ JSON_Set1, JSON_Set2 각각 ‘셋 구성’ 팝업 메뉴에서 ‘기준 JSON PATH 지정’ 및 필드 추가

④ JSON 데이터 셋을 데이터 밴드에 설정하여 컴포넌트와 연동

문서에서 2. 오즈 환경 (페이지 169-173)

관련 문서