페이지 트리
메타 데이터의 끝으로 건너뛰기
메타 데이터의 시작으로 이동

이 페이지의 이전 버전을 보고 있습니다. 현재 버전 보기.

현재와 비교 페이지 이력 보기

« 이전 버전 15 다음 »


실습 예제 |Olap-Grid를 활용한 사업부별 실적 현황 분석 화면


템플릿 보고서 정보

해당 실습 화면은 Template을 활용하여 진행합니다.

  • Template 사용 방법
    1. 포털에서 보고서를 실행합니다.
    2. 템플릿 위치 : [TBD] > [Sample] > [3.Templates]> [Report]> 사업부별 실적 현황



    3. 우측 상단의 (다른 이름으로 저장) 버튼을 클릭하여 작업할 폴더에 저장합니다.

    4. 저장한 보고서를 실행합니다.

    5. 우측 상단의 (보고서 편집) 버튼을 클릭하여 디자이너 창을 실행합니다.

Step 1. 데이터 연결하기

i-META와 SQL을 이용하여 데이터를 가져오고 Control에 연결합니다.

1.1 조회 조건 컨트롤 라벨


    UI Bot의 Label을 선택하여 컨트롤을 생성하고 속성을 변경합니다.

    이와 같은 방법으로 각 컨트롤의 제목 라벨 컨트롤을 생성합니다.

Discription

켜진 전구 (on) (참고) Docking 기능 사용하기

컨트롤 속성 중 Docking 기능을 이용하면 Margin 값에 따라, 해당 컨트롤이 설정된 위치에 고정됩니다.

이를 통해 보고서 창의 크기가 변경되더라도 컨트롤은 항상 지정된 위치에 유지될 수 있도록 설정이 가능합니다.

(예시) Right 고정 후 Margin은 0,0,30,0 설정 (Margin 설정은 Left,Top, Rigth, Bottom)

1.2 조회 조건 컨트롤 생성

Label Text

Name

Control Type

DataSource Name

InitDate

i-META 조건 연결 필드 명

기준년월

VS_FROM

VS_TO

Calendar - M FromTo

-

DATE(0,-1,0);DATE(0,0,0)

년월

매장지역

VS_AREA

ComboBox - ComboBox

매장지역

전체

매장지역

매장구군

VS_GUGUN

ComboBox - ComboBox

매장구군

전체

매장구군

 1. 기준년월 캘린더

  1.  UI Bot의 Calender > M FromTo를 선택하여 컨트롤을 생성합니다.


기준년월 캘린더 컨트롤의 속성을 설정합니다.

  • Name : VS_FROM
  • Name2 : VS_TO
  • InitDate : DATE(0,-1,0);DATE(0,0,0)



Discription

(전구) InitDate 작성법

InitDate를 설정하여 캘린더 컨트롤의 초기값을 세팅합니다.


(tick) 숫자

20230101 또는 2023-01-01 등의 숫자 형식으로 입력합니다.


(tick) NOW 함수

NOW()를 입력하면 현재 날짜로 설정됩니다.


(tick) DATE 함수

DATE(0,0,0) = NOW()

함수 안의 인자가 각각 DATE(년, 월, 일)을 뜻하며, 현재 날짜 기준으로 증감이 가능합니다.

Ex) 현재 날짜보다 1년 전 날짜를 입력하고 싶을 때

: DATE(-1,0,0)


(tick) DATE 함수에 사용할 수 있는 예약어 : F, L

F(First) : 1900년, 1월, 1일

L(Last) : 2999년, 12월, 해당 월의 마지막 날짜(28일~31일)

Ex) 현재 년도의 1월 1일을 입력하고 싶을 때

: DATE(0,F,F)

현재 년월의 말일을 입력하고 싶을 때

: DATE(0,0,L)


(tick) FromTo 캘린더의 InitDate 설정 방법

From Date와 To Date를 ;(세미콜론)으로 구분하여 작성합니다.

Ex) DATE(-1,0,0);NOW()


2. 사업부 및 지역 콤보박스

  1. UI Bot의 ComboBox > Combo를 선택하여 컨트롤을 생성합니다.


  2. 매장지역 콤보박스 컨트롤의 속성을 설정합니다.
    • Name : VS_AREA
    • DataSource : 매장지역
    • UseAllItems : 활성화 
    • AutoRefresh: 활성화

          


       3. 지역 콤보박스 컨트롤의 속성을 설정합니다.

    • Name : VS_GUGUN
    • DataSource : 매장구군
    • UseAllItems 활성화

          


     4. AfterRefresh 기능을 이용하여 매장지역을 선택하면, 선택된 지역에 속한 매장구군 목록만 나타나도록  설정합니다. 

    • 매장지역 콤보박스 선택 후 AfterRefresh : VS_GUGUN 선택

1.3 Olap-Grid 데이터 연결

    1. Olap-Grid를 배치 합니다. 

       


    2. Olap-Grid에 출력할 데이터소스를  i-META로 연결하기 위해 그리드 컨트롤에 마우스 우 클릭하여 데이터소스> i-META 를 선택합니다.

       
     

  1. i-META File을 선택합니다.
    • i-META File 정보
      경로 : 공용 폴더> TBD> Sample> Templates> OLAP> 매출분석

  2. 필드를 Drag&Drop으로 배치한 후 조회조건 필드와 보고서에 생성한 컨트롤들을 연결합니다.

    • 년월 BETWEEN :VS_FROM ~ :VS_TO
    • 매장지역 = @:VS_AREA
    • 매장구군 = @:VS_GUGUN



    Discription

    (전구)SQL 변수 바인딩 규칙

  3. Event에 AutoRefresh를 활성화 합니다.


  4. [실행] 버튼을 눌러 데이터를 그리드에 연결하고 데이터가 정상적으로 조회되는지 확인합니다.

 Step 2. 계산필드 추가하기

  1.  OLAP 수식을 이용하여 계산 필드를 추가할 수 있습니다.

            순매출액, 매출금액(%), 누적실적, 누적실적(%) 계산필드 추가하기

           

  

캡션2차계산서식수식
순매출액

[매출금액]-[매출원가]
매출금액(%)Type - SubTotalPercentOfRow{0:N1}%[매출금액]
누적실적

Type - RunningSum, Field - 년월


[매출금액]
누적실적(%) 

백분율 : {0:P1}, 소수 자리수 : 1

GetVariationValue("[누적실적]", false) / ForAll("[년월]", "[매출금액]", true)

아래와 같이 그리드에서 우 클릭 후 디자인 > 필드에서 계산필드를 생성합니다.

   필드 추가하기 

  1.  버튼을 눌러 필드를 추가합니다.


  2. 생성된 필드명 앞에 체크하면 해당 필드가 Data영역으로 이동 됩니다. 
    • 캡션명 : 순매출액


  3. 수식의  더보기 버튼을 클릭하여 수식 편집기 창을 실행한 후 입력 창에 [매출금액]-[매출원가]를 입력합니다.

    ((전구) 수식 편집기는 대소문자, 띄어쓰기 등을 구분하므로 좌측 List에서 항목을 클릭으로 선택하여 작성하는 것이 편리합니다.)

  4. 매출금액(%) 계산필드도 필드도 아래와 같이 입력합니다. 
    캡션: 매출금액(%)
    2차계산: SubTotalPercentOfRow
    서식: {0:N1}%
    수식: [매출금액]

  5. 누적실적 계산필드도 필드도 아래와 같이 입력합니다. 

    캡션: 누적실적

          2차계산: RunningSum, Field: 년월  

         
          수식: [매출금액]

          

      6. 누적실적(%) 계산필드도 필드도 아래와 같이 입력합니다.

          캡션: 누적실적(%)
          서식: {0:P1}
          수식: GetVariationValue("[누적실적]", false)/ForAll("[년월]", "[매출금액]", true)

          

Discription

(전구) 사용한 함수 설명

목록에 있는 함수를 클릭하면 설명을 볼 수 있습니다.

-GetVariationValue

해당 셀의 특정 메져 값으로 2차계산의 값을 반환합니다.

* object GetVariationValue("[FIELD]")


-ForAll

배치에 대해 제어하는 함수로 현재 배치를 기준으로 Dimensions에 정의된 항목을 제거하여 상위 합에 대한 접근이 가능하게 합니다.
비율을 계산할때 많이 사용됩니다.
NoFilter 인자는 기본값이 false 이며, 모든 필드의 필터 정보를 반영한 계산을 할지 여부를 판단하게 됩니다.
SQL의 그룹핑 기능과 유사하게 동작합니다.

* object ForAll("[Dimension 1];[Dimension 2]", "[Measure]", NoFilter)


         7. 설정한 계산필드 항목들이 정상적으로 적용되어 나타나는지 실행버튼을 눌러 확인합니다.

        

Step 3. 사용자 정의 항목 추가하기

  1. 사용자 정의 항목  기능을 이용하여 분석 항목을 추가할 수 있습니다.


  2. [매장명] 필드에서 마우스 우 클릭 후 [사용자 정의 항목]을 클릭하여 사용자 정의 항목 설정 창을 실행합니다.
  3. 하단의  버튼을 클릭하여 신규 항목을 추가한 뒤 캡션명을 입력합니다. 
    - 캡션 : 강릉라푸마+강릉종합매장
  4. 필터 수식의 [수정] 버튼을 클릭하여 수식 편집기 창을 실행합니다.
  5. 수식 입력 창에 수식을 작성합니다.

    -AND([매장구군] = "강릉시", InList([매장명], "강릉라푸마 123", "강릉종합매장 123"))

          

Discription

(전구) 사용한 함수 설명

목록에 있는 함수를 클릭하면 설명을 볼 수 있습니다.


-AND

넘겨진 파라미터 n개의 논리곱을 반환합니다.

* bool AND(bool condition1, bool condition2, ...)


-InList

대상 필드의 값이 비교 값 목록내에 존재하는지 여부를 반환합니다.

* bool InList([FIELD_NAME], "value1","value2", ...)

Step 4. 조건부 서식 설정하기

  1. 조건부 서식 기능을 이용하여 조건에 따라 서식을 지정할 수 있습니다.
    조건 기준 : 표기된 데이터 값에 따라 유동적으로 조건을 변경합니다.

     (예시) 순매출이 7천만원 이하이면, “Olap_달성율1” Style로 표현 

                순매출이 1억 이상이면, "Olap_달성율2” Style로 표현




  2. 그리드를 우 클릭 후 디자인 메뉴로 이동합니다. 


  3. 조건의 대상이 될 필드 명을 복사합니다. 
  4. [스타일] 탭에서 조건부 서식의  버튼을 눌러 수식 편집기 창을 실행합니다.


  5. 조건에 맞도록 수식을 작성한 후 [적용] 버튼을 눌러 수식을 입력합니다.

        ((전구) 스타일은 List 목록에 스타일명으로 검색하고, 필드명 복사는 아래와 같이 복사합니다. )

          

상세수식 확인하기

CASE(
AND(FIELD_KEY == "FLD9", CELL_VALUE <=70000000 )
, "Olap_달성율1_클릭해서_수정"
, AND(FIELD_KEY == "FLD9", CELL_VALUE >= 200000000)
, "Olap_달성율2_클릭해서_수정",
"")

Discription

(전구)사용한 함수 설명

목록에 있는 함수를 클릭하면 설명을 볼 수 있습니다.


-CASE(SWITCH로 검색)

조건 n 개에 대해 순차적으로 검사하여 가장 처음으로 참인 조건의 값을 반환합니다.
모든 조건이 거짓 일 경우 마지막 default 값이 반환됩니다.

* object Switch(bool condition1, object value1 , bool condition2, object value2 , bool conditionX, object valueX , object elseValue)


-AND

넘겨진 파라미터 n개의 논리곱을 반환합니다.

* bool AND(bool condition1, bool condition2, ...)

Step 5. Drill To Detail 동작 설정하기

변수편집기와 프로세스 봇을 설정하여 Olap-Grid의 데이터 셀을 더블 클릭하면, 클릭한 셀의 세부 데이터를 조회할 수 있는 팝업을 띄우도록 설정합니다.

5.1 변수 편집기

보고서에서 사용할 변수들을 변수 편집기에서 관리할 수 있습니다.

(템플릿 보고서에는 변수가 이미 등록되어 있는 상태입니다.)


편집 그룹 > Variables(변수 편집기)

5.2 Process Bot 활용 저장 동작 설정

  프로세스 봇을 활용하여  OlapGrid  셀 더블 클릭시  POPUP폼이 상세보기창으로 보여지도록 설정합니다.

  1. Process Bot아이콘()을 클릭하여 프로세스 봇 창을 실행하고, OlapGrid 컨트롤 더블 클릭합니다.



  2. Activities 탭에서 '상세보기' 로 검색하여 'OlapGrid 클릭셀의 행,열 값 변수 편집기 입력 후 상세보기창 나타내기' 모듈을 더블 클릭합니다.



  3. 모듈 파라미터 설정 아이콘()을 클릭하여, 'OlapGrid 클릭셀의 행,열 값 변수 편집기 입력 후 상세보기창 나타내기' 동작을 설정합니다.
  4. OlapGrid > OnDataCellDoubleClick 이벤트와 모듈을 연결 후 저장합니다.
    • Olap 그리드의 클릭한 셀의 매장구군, 매장명, 년월이 변수 편집기에 입력되도록 아래와 같이 옵션 설정 값을 입력 

      -VS_POP_AREA
      -VS_POP_STORE
      -VS_POP_YM

5.3 popup 화면 설정

  • Olap-Grid의 데이터 셀을 더블 클릭하면, 실행되는 Chart & DataGrid 팝업 창의 화면을 설정합니다.


      


  1.  [popup]시트를 선택한 후 Chart 컨트롤에 데이터 셋을 연결합니다.
  • DataSource : Chart


      


   2. List Grid 컨트롤을 우 클릭하여 데이터소스 항목을 선택합니다.

      

    • i-META File 정보
      - 경로 : 공용 폴더 > 교육 > i-META
      - 파일 명 : [i-AUD] Sales Meta


  1. 3. i-META File을 선택하여 필드를 배치한 후 조회조건 필드와 변수 편집기에 등록된 변수를 연결합니다.

    • 년월 = :VS_POP_YM
    • 사업부코드 = :VS_POP_DIV_CD
    • 제품대분류명 = :VS_POP_PROD_L_NM


    4. [확인] 버튼을 눌러 데이터소스 선택 창을 닫은 후, Form1으로 이동하여 보고서가 정상적으로 작동하는지 확인합니다.

버전 날짜 댓글
현재 버전 (v. 15) 2025-04-12 22:50 guide
v. 51 2025-07-04 18:21 guide
v. 50 2025-07-04 17:37 guide
v. 49 2025-07-04 17:34 guide
v. 48 2025-07-02 22:29 guide
v. 47 2025-07-02 21:53 guide
v. 46 2025-07-02 21:48 guide
v. 45 2025-05-15 14:09 guide
v. 44 2025-05-15 14:08 guide
v. 43 2025-05-15 14:07 guide
v. 42 2025-05-13 09:43 guide
v. 41 2025-04-17 10:52 guide
v. 40 2025-04-17 10:51 guide
v. 39 2025-04-17 10:50 guide
v. 38 2025-04-16 20:48 guide
v. 37 2025-04-15 14:20 guide
v. 36 2025-04-15 14:20 guide
v. 35 2025-04-15 14:20 guide
v. 34 2025-04-15 11:35 guide
v. 33 2025-04-15 10:46 guide
v. 32 2025-04-15 10:26 guide
v. 31 2025-04-15 10:25 guide
v. 30 2025-04-15 10:24 guide
v. 29 2025-04-15 10:24 guide
v. 28 2025-04-15 10:23 guide
v. 27 2025-04-15 10:07 guide
v. 26 2025-04-15 10:06 guide
v. 25 2025-04-15 10:00 guide
v. 24 2025-04-15 09:57 guide
v. 23 2025-04-15 09:57 guide
v. 22 2025-04-15 09:56 guide
v. 21 2025-04-15 09:55 guide
v. 20 2025-04-15 09:51 guide
v. 19 2025-04-14 17:34 guide
v. 18 2025-04-12 23:23 guide
v. 17 2025-04-12 23:22 guide
v. 16 2025-04-12 23:11 guide
v. 15 2025-04-12 22:50 guide
v. 14 2025-04-12 22:48 guide
v. 13 2025-04-12 22:12 guide
v. 12 2025-04-12 22:05 guide
v. 11 2025-04-12 22:04 guide
v. 10 2025-04-12 22:01 guide
v. 9 2025-04-11 19:42 guide
v. 8 2025-04-11 19:19 guide
v. 7 2025-04-11 18:48 guide
v. 6 2025-04-11 17:48 guide
v. 5 2025-04-11 16:46 guide
v. 4 2025-04-11 16:02 guide
v. 3 2025-04-11 15:28 guide
v. 2 2025-04-11 14:24 guide
v. 1 2025-04-11 14:06 guide

  • 레이블 없음