KR100473057B1 - 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법 - Google Patents

직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법 Download PDF

Info

Publication number
KR100473057B1
KR100473057B1 KR10-2002-0007248A KR20020007248A KR100473057B1 KR 100473057 B1 KR100473057 B1 KR 100473057B1 KR 20020007248 A KR20020007248 A KR 20020007248A KR 100473057 B1 KR100473057 B1 KR 100473057B1
Authority
KR
South Korea
Prior art keywords
report
result
data
frame
database
Prior art date
Application number
KR10-2002-0007248A
Other languages
English (en)
Other versions
KR20030067794A (ko
Inventor
최석균
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR10-2002-0007248A priority Critical patent/KR100473057B1/ko
Publication of KR20030067794A publication Critical patent/KR20030067794A/ko
Application granted granted Critical
Publication of KR100473057B1 publication Critical patent/KR100473057B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 데이터베이스 연동 보고서의 작성 방법에 관한 것으로, 특히 관계형 데이터베이스에서 보고서 설계 단계에서 결과 보고서의 형태를 예측할 수 있는 WYSIWYG 방식을 지원하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법에 관한 것이다. 본 발명에 따른 보고서 작성 방법은 보고서의 프레임 및 데이터 필드 구조를 설계함으로써 데이터 검색 조건 및 오브젝트 생성 조건이 반영되는 보고서 설계 단계인 제 1 단계; 상기 설계 보고서의 프레임 및 데이터 필드 구조를 인식하여 자동으로 SQL문을 추출하는 제 2 단계; 상기 추출된 SQL문을 DBMS에서 실행하여 결과 데이터를 검색하는 제 3 단계; 상기 검색된 결과 데이터와 상기 설계 보고서의 프레임 및 데이터 필드 구조의 위치 정보를 결합하여 결과 오브젝트를 생성하는 제 4 단계; 상기 결과 오브젝트가 상기 데이터 검색 조건 및 오브젝트 생성 조건을 만족하는 경우, 상기 결과 오브젝트들로 결과 보고서를 생성하여 출력하는 제 5 단계; 및 상기 결과 오브젝트가 상기 데이터 검색 조건 및 오브젝트 생성 조건을 만족하지 않는 경우에는 상기 제 4 단계와 제 5 단계를 반복하는 제 6 단계로 이루어지는 것을 특징으로 한다.

Description

직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법{The drawing method of database coupled report using an outlook method}
본 발명은 데이터베이스 연동 보고서의 작성 방법에 관한 것으로, 특히 관계형 데이터베이스에서 보고서 설계 단계에서 결과 보고서의 형태를 예측할 수 있는 WYSIWYG 방식을 지원하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법에 관한 것이다.
일반적으로 보고서 작성기는 데이터베이스에 있는 데이터를 일정한 양식에 맞추어 출력하기 위한 도구이다.
도 1 은 종래 기술에 의한 보고서 작성기의 구성을 도시한 블럭도이다.
상기 보고서 작성기는 사용자 인터페이스 (100), SQL(Structured Query Language)작성기 (110), 데이터 인출부 (120), 배치부 (130), 프레임 요약 처리부 (140) 및 데이터베이스 (150) 로 구성되어 있다. 여기에서 사용자 인터페이스 (100), SQL 작성기 (110), 데이터 인출부 (120), 배치부 (130), 프레임 요약 처리부 (140) 는 일반적인 응용 프로그램의 구성 블럭으로서, 실행시에는 컴퓨터의 주메모리에 로드되어 동작한다. 데이터베이스 (150) 는 일정한 구성 형식에 의해 컴퓨터의 보조 기억장치에 저장된 데이터의 집합으로서 보고서 작성에 필요한 정보를 보관한다.
사용자 인터페이스 (100) 는 사용자가 작성하기를 원하는 보고서의 양식과 필요한 데이터에 관한 정보를 사용자로부터 입력받는 구성 블럭으로서, 통상 PC에서는 GUI(Graphic User Interface)를 이용한다. SQL 작성기 (110) 는 상기 데이터에 관한 정보를 이용하여 데이터베이스 (150) 로부터 데이터를 인출하기 위한 SQL문을 작성하는 구성 블럭이다. 데이터 인출부 (120) 는 SQL 작성기 (110) 에서 작성된 SQL문을 이용하여 데이터베이스 (150) 에서 보고서 작성에 필요한 데이터를 인출하는 구성 블럭이다. 배치부 (130) 는 데이터 인출부 (120) 로부터 인출된 데이터를 상기 사용자 인터페이스 (100) 에서 넘겨받은 보고서 양식에 대한 정보에 맞추어 보고서를 작성하는 구성 블럭이다. 프레임 요약 처리부 (140) 는 보고서에 출력되는 일단의 데이터들에 대한 총계, 평균 등과 같은 요약 정보를 계산하여 보고서에 추가 출력하는 구성블럭으로서, 사용자 인터페이스 (100) 에서 입력받은 프레임 요약 작성에 필요한 정보를 이용한다.
통상 보고서 작성기에는 사용자 인터페이스 (100) 에서 프레임의 형태로 보고서 양식에 대한 정보를 입력받는다. 프레임은 고정 프레임과 반복프레임으로 구분된다. 고정 프레임에는 일정한 영역이 정하여지는데, 고정 프레임 내부에 사용된 데이터베이스 연결 데이터 필드에 대응하는 데이터를 데이터베이스 (150) 에서 반복적으로 인출하여 그 영역 내에서만 보고서로 작성하는 형식을 취한다. 반면에, 반복 프레임에는 정해진 일정한 영역이 없으며, 그 내부의 데이터 필드에 대응하는 데이터가 데이터베이스 (150) 에 있는 동안에는 반복하여 데이터를 인출하여 보고서로 작성하는 방식을 취한다. 프레임의 내부에는 도형이나 데이터 필드가 존재한다. 데이터베이스 비연결 데이터 필드는 데이터베이스 (150) 와 관련되어 있지 않고, 데이터의 형식으로 직접 프레임의 일정한 영역에 표시된다. 또 다른 데이터 필드인 데이터베이스 연결 데이터 필드는 그에 대응하는 데이터를 데이터베이스 (150) 로부터 반복적으로 인출하여, 연속적으로 보고서에 표시하여야 할 것을 나타낸다.
종래의 데이터베이스 연동 보고서는 사용자 인터페이스가 쉽지 않고 복잡한 프로그래밍이 필요하거나 또는 보고서의 출력 형태가 다양하지 못했다. 이로 인해 보고서 작성자는 전문적인 지식을 습득하거나 이 방면의 많은 수련 과정을 거친 사람들에 국한되었다.
종래의 보고서 설계 방법은 데이터 검색을 위해 범용 프로그래밍 언어인 COBOL 이나 C 언어 등에 SQL 요소를 추가해서 프로그래밍하던가 Visual BASIC, Power Builder, Delph 등과 같은 4 GL 을 이용해서 보고서를 작성하였다. 그러나 이들 제품들은 전문적인 지식이 없으면 보고서의 설계, 유지, 보수가 힘들었고 생성되어 나오는 보고서의 형태를 유추하기도 힘들었다. 한편 Crystal Report 등과 같은 보고서 전문 작성기도 등장하였으나 결과 보고서를 염두에 둔 설계 보고서 작성 등에는 직관적이라 할 수 없었고, 또한 사용자의 다양한 요구조건을 수용하기에도 어려움이 있었다.
현재 사용되고 있는 보고서 작성 툴 중에서 가장 편리한 인터페이스를 갖고 있다는 Crystal Report 의 예를 살펴본다.
도 2a 는 종래 보고서 작성기의 설계 화면을 도시하는 도면이다. 상기 도면의 보고서 중 DBMS 영역은 세부항목 (Details; 20) 섹션으로 이 부분에 데이터베이스의 데이터 필드를 삽입하고 실행하면 결과를 검색해서 출력하는 방식이다. 도 2b 는 상기 보고서 작성기에 의해 작성된 결과 보고서의 일 예이다. 또한, 도 2c 에 도시된 결과 보고서는 자료를 분류해서 그룹핑하는 보고서의 예가 도시되어 있다. 도 2b 및 도 2c 에서 도시하고 있는 바와 같이, 종래의 보고서 작성 방식은 일종의 줄 단위 보고서 작성 방식으로서 문서 편집기 등에서와 같이 하나의 빈 문서 중 임의의 영역을 설정해서 보고서를 출력하는 보고서의 설계는 불가능하였다.
도 3 은 홍길동이라는 사람에 대한 학력사항, 가족사항, 직무사항, 상벌사항 등의 내용들을 포함하는 인사카드라는 이름의 보고서를 구성한 예이다. 상기 보고서는 줄 단위로만 설계 가능한 종래의 보고서 작성기로는 설계할 수가 없다. 왜냐하면 학력사항, 가족사항 등이 모두 데이터베이스의 다른 테이블의 필드에서 테이터를 검색해야 하고 이들의 검색건수는 모두 상이할 수 있기 때문이다.
도 3 과 같은 보고서를 설계하기 위해서는 워드프로세스와 같이 실제로 출력될 공간에 임의의 영역을 설정할 수 있는 인터페이스와 이를 지원하는 오브젝트, 결과 데이터 생성 규칙 등이 필요하다. 즉, 보고서 설계 단계에서 결과 보고서의 형태를 예측할 수 있는 보고서 작성 방법이 요구되는 것이다.
본 발명은 상기에서 제기된 문제점을 극복하기 위하여 직관적이고 쉬운 사용자 인터페이스를 제공하는 것을 목적으로 한다. 또한, 사용자가 예측하는 결과 보고서의 형태에 가장 근접한 형식으로 보고서를 작성하는 방법을 제공하는 것을 목적으로 한다.
상기의 목적을 달성하기 위해, 본 발명은 보고서 작성에 관한 정보와 편집 기능을 제공하는 문서 편집창과 인라인뷰 창을 포함하는 편집 화면을 구비한 보고서 작성기가 관계형 데이터베이스와 연동하여 사용자가 직관적으로 보고서를 작성하도록 하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법에 있어서, 상기 관계형 데이터베이스에 접속한 사용자가 상기 보고서 작성기의 GUI 를 이용하여 보고서의 프레임 및 데이터 필드 구조를 설계하여 데이터 검색 조건 및 오브젝트 생성 조건이 반영되는 보고서를 설계하는 제 1 단계; 상기 보고서 작성기는 상기 제1 단계에 의한 설계 보고서의 프레임 및 데이터 필드 구조를 인식하여 자동으로 SQL문을 추출하는 제 2 단계; 상기 제2 단계에서 추출된 SQL문을 보고서 작성기는 데이터베이스 엔진에 전달하여 DBMS에서 실행하도록 하고 결과 데이터를 검색하는 제 3 단계; 상기 제3 단계에서 검색된 결과 데이터와 상기 설계 보고서의 프레임 및 데이터 필드 구조의 위치 정보를 결합하여 결과 오브젝트를 생성하는 제 4 단계; 상기 제4 단계에서 생성된 결과 오브젝트가 상기 제1 단계에서 입력된 데이터 검색 조건 및 오브젝트 생성 조건을 만족하는 경우, 상기 보고서 작성기는 상기 결과 오브젝트들로 결과 보고서를 생성하여 출력하는 제 5 단계; 및 상기 제4 단계에서 생성된 결과 오브젝트가 상기 제1 단계에서 입력된 데이터 검색 조건 및 오브젝트 생성 조건을 만족하지 않는 경우, 상기 보고서 작성기는 상기 제 4 단계와 제 5 단계를 반복 수행하는 제 6 단계를 포함하는 것을 특징으로 하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법을 제공한다.
삭제
삭제
삭제
삭제
삭제
삭제
도 4 는 본 발명의 전체 구성의 흐름을 나타내는 순서도이다. 4 를 참고하여 보고서 작성 과정을 살펴보면, 우선 사용자가 임의의 데이터베이스에 접속한다 (S101). 데이터베이스와의 연결 방법은 예를 들어, ODBC로 연결하거나 Oracle로 직접 연결할 수도 있고, OLAP서비스로 연결할 수도 있다. 데이터베이스에 접속한 후, 데이터베이스와 데이터 검색조건이 반영된 보고서를 설계한다 (S102). 도 5 는 보고서 설계의 일 실시예를 도시한다. 도 5 를 참고하면, 관계형 데이터베이스의 인라인뷰창 (51) 의 정보를 이용하여 보고서 작성기의 빈 문서 (53) 에 보고서를 설계한다. 데이터 필드 (54) 는 데이터베이스의 임의의 컬럼에 대응하는 오브젝트로서 데이터베이스 연동에 대한 정보를 갖고 있다. 설계 보고서를 실행하면 이들 데이터필드에 결과 데이터가 대응되어 보고서가 만들어지게 된다. 반복 프레임 (55) 은 자신의 영역에 포함되어 있는 데이터필드를 조건에 맞게 반복 검색하는 오브젝트이다. 보고서 작성에 관한 정보와 편집 기능이 문서 편집창 (52) 에서 제공된다.
다시 도 4 로 돌아가면, 상기 단계 (S102) 에서 설계된 보고서 중 각 오브젝트의 데이터베이스 정보와 속성 등을 기반으로 SQL문을 추출한다 (S103). 도 6 내지 도 9 는 프레임 및 데이터 필드의 구조에 따라 SQL문이 자동으로 생성되는 모습을 도시한다. 이하에서 살펴보면 다음과 같다. 우선, 도 10 은 관계형 데이터베이스 내의 테이블과 컬럼들을 예시한 것이다. 이 중 "사원" 테이블의 "성명"과 "부서명" 컬럼에 대하여 데이터베이스를 검색, "성명" 컬럼과 "부서명" 컬럼을 이용하여 "@성명", "@부서명"이라는 데이터 필드 (101) 오브젝트를 만들고, 그 외곽에 반복프레임 (102) 과 고정프레임 (103) 을 만들 수 있다. 사용자는 도 10 에 도시된 설계 보고서를 바탕으로 도 6 에서 도시하고 있는 바와 같이 오브젝트의 속성 중 "일반조건" 속성을 선택하여 검색조건을 입력한다. 상기의 과정을 통하여 도 7 과 같은 반복프레임의 SQL문을 추출하게 된 근거는 다음과 같다. 반복프레임 내부 영역에 포함된 데이터필드가 "@성명", "@부서명"이므로 이 데이터필드의 테이블 정보와 컬럼 정보인 "사원.성명", "사원.부서명"이라는 값을 얻어와서 SQL문의 SELECT 절에 추가한다. 또한 반복프레임의 "일반조건" 속성에 입력된 "부서명 = '물류팀'" 이라는 정보를 얻어와서 SQL문의 WHERE절에 추가하면 도 7 과 같은 SQL문이 추출된다.
한편, 도 8 및 도 9 의 경우에는 보고서가 반복 프레임 - 반복 프레임이 중첩(Nested)된 형태다. 이렇게 반복 프레임이 중첩될 경우에는 상위 반복 프레임에 의해 하위 반복 프레임을 그룹핑하여 주(Master)-종(Slave) 형태의 보고서를 출력할 수 있다. 반복 프레임과 고정 프레임 모두 자신의 자식 프레임 (반복, 고정 모두 포함)이 있을 경우에는 자식 프레임과 그의 데이터필드들을 자신 프레임의 데이터필드(위에서는 "부서명")에 의해 그룹핑해서 결과를 보여주려는 의도로 파악하게 된다. 즉, 위의 예는 "부서별"로 그룹핑된 "사원들의 주민번호, 성명, 직급, 연봉"의 리스트가 되는 것이다..
이때, 도 8 에서 도시되어 있는 바와 같이 주 프레임의 SQL문은 SELECT 절에 DISTICT 라는 한정사를 붙히게 되는데, 이 결과 "부서명" 을 검색하되 중복된 결과를 모두 생략하여 종류별로 다른 "부서명" 만을 검색하게 된다. 한편, 도 9 는 종 프레임의 SQL문을 도시하는 것으로서, SELECT 절과 FROM 절은 전술한 바와 같이 생성하되 자신의 부모 프레임에 속한 데이터필드의 값을 조건값으로 받아들일 수 있도록 준비를 한다. 그렇게 함으로써, 부모 프레임 결과로 그룹핑된 자식 프레임의 결과들을 얻을 수 있기 때문이다. 만약 상기 주 프레임의 SQL문이 "SELECT DISTICT 사원.부서명 FROM 사원" 일 경우 그 결과값이 "관리팀", "물류팀", "영업팀", "자재팀" 이었다면 종 프레임의 SQL문은 다음과 같다.
"SELECT 사원.주민번호, 사원.성명, 사원.직급, 사원.연봉 FROM 사원 WHERE (사원.부서명 = '관리팀')"
"SELECT 사원.주민번호, 사원.성명, 사원.직급, 사원.연봉 FROM 사원 WHERE (사원.부서명 = '물류팀')"
"SELECT 사원.주민번호, 사원.성명, 사원.직급, 사원.연봉 FROM 사원 WHERE (사원.부서명 = '영업팀')"
"SELECT 사원.주민번호, 사원.성명, 사원.직급, 사원.연봉 FROM 사원 WHERE (사원.부서명 = '자재팀')"
이와 같이 4개의 SQL문을 실행하고 이에 대한 결과값을 얻어오게 된다. 각각의 결과들을 주 프레임의 결과값과 같이 분류해서 출력하면 주-종 보고서가 완성된다. 그리고, 이러한 주-종 관계는 3단, 4단, 등으로 무한하게 가능하다. 이때 상위의 데이터필드 조건값은 하위의 모든 프레임에 전달되는데 이것을 프레임의 "조건상속"이라고 한다.
다시 도 4 로 돌아가면, 단계 (S103) 에 의해 만들어진 SQL문을 데이터베이스 엔진에 전달하고 실행한다 (S104). 그 후, 단계 (S102) 에 의해 만들어진 오브젝트들의 위치 정보와 단계 (S104) 에 의해 검색된 결과 데이터들을 결합하여 결과 오브젝트들을 생성한다 (S105). 예를 들어, 도 5 에서 설계된 설계 보고서를 살펴보면 다음과 같다. 상술한 도 8 및 도 9 에서 나타나 있는 바와 같이, 첫번째 SQL문에 의해 생성된 결과물이 "관리팀", "물류팀", "영업팀", "자재팀" 이라고 하면, 두 번째 SQL문의 WHERE 절이 각각 "WHERE 사원 = '관리팀'" 등과 같이 바뀌어서 네차례 실행되게 되고 각각 4 종류의 그룹핑된 검색 값들을 얻어올 수 있다. 이때 결과 보고서를 구성하는 반복 프레임과 데이터 필드 등 결과 오브젝트를 생성하는 규칙은 도 14 및 도 15 에 나타나 있다.
도 14 를 참고로 하여 살펴보면, 반복 프레임 또는 고정 프레임이 주-종 관계로 있을 경우에는 주 프레임의 최초 위치 정보로부터 결과 오브젝트 생성을 시작한다. 주 프레임 시작 위치와 종 프레임의 시작 위치의 차이를 a 라고 하고, 종 프레임의 높이값을 b 라고 하고, 종 프레임의 끝 위치와 주 프레임 끝 위치와의 차이값을 c 라고 하면 도 14 와 같은 레이아웃 정보를 얻어올 수 있다.
위와 같은 규칙이 바탕이 되어 도 15 와 같은 전체 보고서를 설계하게 된다. 또한, 이러한 규칙으로 인해 사용자는 데이터베이스의 다량의 데이터로 인해 완전한 결과 보고서 형태를 예측할 수는 없어도, 결과 보고서의 패턴은 예측할 수 있게 된다.
다시 도 5 로 돌아가면, 단계 (S102) 에서 사용자가 입력한 검색 조건에 맞는 데이터 검색이 완료되었는지 또는 고정프레임 등 내부적인 결과 오브젝트 생성 조건을 충족하는지를 판단하여 조건을 만족할 때까지 단계 (S105) 까지의 처리를 반복한다 (S106). 단계 (S105) 에서 만들어진 결과 오브젝트들을 모아서 결과 보고서를 생성하고 출력한다 (S107). 한편, 결과 보고서가 출력되는 과정을 살펴보면, 예를 들어 도 10 의 설계 보고서 대한 SQL문을 데이터베이스에서 실행했을 경우 도 11 과 같이 모두 7 건의 데이터를 검색했다고 하자. 이 검색한 데이터들을 도 10 에서 설계한 각 오브젝트들의 위치 정보와 결합하되, 도 10 에서의 고정프레임 영역을 넘지 않는 데이터들만 추출해서 화면에 출력하면 도 12 와 같은 결과 보고서를 얻을 수 있다.
도 13 은 도 5 에서 도시하고 있는 설계 보고서의 결과 보고서로서 반복 프레임 2개가 주-종속적으로 사용된 예로서 주 데이터에 의해 분류된 종속적인 데이터들의 보고서 예를 보여준다. 도 13 에서는 주-종이 2단에 걸쳐 존재하지만 이 주-종의 깊이는 무한히 반복될 수 있다. 따라서 다량의 데이터를 효율적이고 체계적으로 분류하여 보고서를 구성할 수 있게 된다.
다시 도 4 로 돌아가면, 본 발명에 따라 작성된 보고서는 상술한 도 13 과 같이 보고서를 워드프로세서로 문서 작성하듯 설계하되 계층적인 (Hierarchical) 오브젝트 단위로 설계할 수 있음을 알 수 있다. 이 계층적 오브젝트 구조를 기반으로 한개 또는 여러개의 SQL문을 추출하여 그룹핑된 데이터를 검색해올 수 있고, 다시 이 데이터와 설계 문서의 오브젝트 위치 정보를 이용해 가공해낸 결과 오브젝트로 결과 문서를 출력할 수 있다.
도 16 은 본 발명에 따른 프레임 내부의 데이터 흐름을 나탸내는 순서도이다. 본 발명에 따른 반복프레임과 데이터필드 등의 오브젝트에서 SQL문을 추출하여 데이터베이스에 보낸 후 결과 데이터를 검색하여 원래 오브젝트들의 위치 정보와 결합하여 결과 오브젝트를 생성하는 과정을 도 16 을 참고로 하여 살펴본다.
먼저, 프레임 내부에 포함되어 있는 오브젝트들을 모두 검사하여 DB 정보가 있을 경우 이들의 테이블과 컬럼 정보를 수집한다 (S201). 또한, 프레임의 조건 속성을 검사하여 앞서 수집한 테이블, 칼럼 정보와 합하여 SQL문을 생성하여 데이터베이스에서 실행하고, 실행된 결과 데이터 중 한 결과 데이터를 가져온다 (S202). 상기 결과 데이터와 설계 오브젝트의 위치 정보를 참고하여 결과 오브젝트를 생성한다 (S203). 자기 프레임의 하부에 자손 프레임이 있을 경우 현재 프로시져 (Procedure) 를 재귀 호출 (Recursive Function Call) 한다 (s204). 재귀호출된 자손 프레임에 대한 처리는 다시 상기 단계에 의해 데이터를 처리하게 된다. 만약 자손 프레임의 내부에 또 다른 자손 프레임이 있다면 한번 더 이 함수를 재귀호출하게 된다 (이 부분은 OS가 허용하는 한 무한이 반복할 수 있다). 재귀호출된 경우에는 다음에서 기술될 단계 (S206) 이후에, 재귀호출 반환되어 다시 단계 (S205) 로 진입하게 된다. 자기 프레임 상위에 고정 프레임에 의해 영역이 제한되어 있을 경우 이 영역의 밖으로 침범했을 경우 실행을 중단한다 (S205). 이 부분은 도 11 및 도 12 로서 설명할 수 있는데 도 11 의 반복프레임이 실행될 경우 여러 결과 데이터를 검색하여 반환할 수 있지만 고정 프레임 영역 때문에 5 건의 데이터만 보여주는 부분이 그것이다. 만약 고정프레임이 없었다면 조건에 맞는 데이터를 모두 검색해서 화면에 출력하게 될 것이다. 현재 결과 데이터가 마지막일 경우 데이터베이스 실행을 중단한다 (S206). 그 후, GenReport() 라는 함수가 호출한 곳으로 복귀하게 되는데 현재 처리하는 프레임이 최상위 프레임이라면 GenReport()를 처음 호출한 곳으로 복귀하게 되지만, 하위 프레임이었다면 자신을 재귀호출한 GenReport() 함수로 다시 복귀하게 된다 (S208). 최종적으로, 생성된 결과 오브젝트들로 결과 페이지를 구성하여 각 페이지를 모아 결과 보고서로 출력한다 (S207).
이상에서 설명한 본 발명은 전술한 실시예 및 첨부한 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 한도에서 다양한 변형, 치환 및 변경이 가능하다는 것은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어서 명백할 것이다.
본 발명은 데이터베이스 연동 보고서 작성시 복작한 로직과 단순 단복적인 화면 설계에 의한 보고서 작성의 난해함과 비효율성을 최소화하는 직관적 방법에 의한 보고서 설계 방법을 제공하는 장점이 있다.
또한, 본 발명에 따른 보고서는 설계 보고서를 통해 생성되는 결과 보고서의 형태를 쉽게 예측할 수 있는 WYSIWYG 방식을 지원하는 장점이 있다.
또한, 본 발명은 데이터 검색 조건의 반영에 있어서 복잡한 프로그래밍이나 전문적인 지식이 없어도 쉽게 적용할 수 있고 나아가 사용자의 복잡한 요구를 만족하는 동적 보고서를 지향하되, 사용자에게는 쉽고 직관적인 조작 방식을 제공할 수 있다.
도 1 은 종래 기술에 의한 보고서 작성기의 구성을 도시한 블럭도.
도 2a 내지 도 2c 는 종래 보고서 작성기의 설계 화면 및 결과 보고서의 일 예를 도시한 도면.
도 3 은 사용자가 원하는 다양한 결과 보고서의 일 예를 도시하는 도면.
도 4 은 본 발명에 따른 직관적 보고서 작성을 위한 순서도.
도 5 는 본 발명에 따라 작성된 설계 보고서의 일 실시예를 도시한 도면.
도 6 은 본 발명에 따라 작성된 설계 보고서 작성의 일 태양을 도시하는 도면.
도 7 은 도 6 에서 도시된 설계 보고서로부터 추출되는 SQL문을 도시한 도면.
도 8 및 도 9 는 도 5 에서 작성된 설계 보고서의 주 프레임 및 종 프레임에서 추출되는 SQL문을 도시하는 도면.
도 10 은 본 발명에 따라 작성되는 프레임 및 데이터 필드의 구조로써 보고서를 설계하는 일 실시예를 도시하는 도면.
도 11 은 도 10 에서 작성된 설계 보고서로부터 추출된 SQL문을 실행한 결과를 도시한 도면.
도 12 는 도 10 에서 작성된 설계 보고서에 따른 결과 보고서를 도시하는 도면.
도 13 은 도 5 에서 작성된 설계 보고서의 결과 보고서를 도시하는 도면.
도 14 는 도 5 에서 작성된 설계 보고서의 반복 프레임과 위치 정보를 도시하는 도면.
도 15 는 도 5 에서 작성된 설계 보고서의 결과 오브젝트들과 각각의 위치 정보를 도시하는 도면.
도 16 은 본 발명에 따른 프레임 내부의 데이터 흐름을 나탸내는 순서도.

Claims (6)

  1. 보고서 작성에 관한 정보와 편집 기능을 제공하는 문서 편집창과 인라인뷰 창을 포함하는 편집 화면을 구비한 보고서 작성기가 관계형 데이터베이스와 연동하여 사용자가 직관적으로 보고서를 작성하도록 하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법에 있어서,
    상기 관계형 데이터베이스에 접속한 사용자가 상기 보고서 작성기의 GUI 를 이용하여 보고서의 프레임 및 데이터 필드 구조를 설계하여 데이터 검색 조건 및 오브젝트 생성 조건이 반영되는 보고서를 설계하는 제 1 단계;
    상기 보고서 작성기는 상기 제1 단계에 의한 설계 보고서의 프레임 및 데이터 필드 구조를 인식하여 자동으로 SQL문을 추출하는 제 2 단계;
    상기 제2 단계에서 추출된 SQL문을 보고서 작성기는 데이터베이스 엔진에 전달하여 DBMS에서 실행하도록 하고 결과 데이터를 검색하는 제 3 단계;
    상기 제3 단계에서 검색된 결과 데이터와 상기 설계 보고서의 프레임 및 데이터 필드 구조의 위치 정보를 결합하여 결과 오브젝트를 생성하는 제 4 단계;
    상기 제4 단계에서 생성된 결과 오브젝트가 상기 제1 단계에서 입력된 데이터 검색 조건 및 오브젝트 생성 조건을 만족하는 경우, 상기 보고서 작성기는 상기 결과 오브젝트들로 결과 보고서를 생성하여 출력하는 제 5 단계; 및
    상기 제4 단계에서 생성된 결과 오브젝트가 상기 제1 단계에서 입력된 데이터 검색 조건 및 오브젝트 생성 조건을 만족하지 않는 경우, 상기 보고서 작성기는 상기 제 4 단계와 제 5 단계를 반복 수행하는 제 6 단계
    를 포함하는 것을 특징으로 하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법.
  2. 제 1 항에 있어서,
    상기 프레임 구조는 자신의 영역에 포함되어 있는 데이터 필드를 조건에 맞게 반복 검색하는 반복 프레임 및 임의의 고정된 영역을 지정하여 반복 프레임이 자신의 영역 이상으로 확장 못하도록 하는 고정 프레임에 관한 구조로 이루어지는 것을 특징으로 하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법.
  3. 제 1 항에 있어서,
    상기 제 1 단계의 프레임 구조는 데이터가 실제로 출력될 공간에 임의의 영역을 설정하는 것을 특징으로 하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법.
  4. 제 1 항에 있어서,
    상기 제 2 단계는 최외곽의 오브젝트 내부에 포함된 데이터베이스 필드 오브젝트를 취합해서 SQL문의 SELECT 절과 FROM 절을 구성하고, 사용자가 입력하는 별도의 검색조건으로 WHERE 절을 구성하여 SQL문이 추출되는 것을 특징으로 하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법.
  5. 제 1 항 또는 제 4 항에 있어서,
    상기 보고서가 계층적 오브젝트 단위로 설계되는 경우, 상기 계층적 오브젝트 구조를 기반으로 한 개 또는 복수 개의 SQL문을 추출하여 그룹핑된 데이터를 검색한 후, 상기 데이터와 상기 설계 보고서의 오브젝트 위치 정보를 이용해 가공해 낸 결과 오브젝트로 결과 보고서를 출력하는 것을 특징으로 하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법.
  6. 제 2 항에 있어서,
    상기 반복 프레임과 고정 프레임 모두 자신의 자식 프레임이 있을 경우 재귀호출 (recursive function call) 단계를 더 포함하는 것을 특징으로 하는 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법.
KR10-2002-0007248A 2002-02-08 2002-02-08 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법 KR100473057B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0007248A KR100473057B1 (ko) 2002-02-08 2002-02-08 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0007248A KR100473057B1 (ko) 2002-02-08 2002-02-08 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법

Publications (2)

Publication Number Publication Date
KR20030067794A KR20030067794A (ko) 2003-08-19
KR100473057B1 true KR100473057B1 (ko) 2005-03-08

Family

ID=32221006

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0007248A KR100473057B1 (ko) 2002-02-08 2002-02-08 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법

Country Status (1)

Country Link
KR (1) KR100473057B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101167888B1 (ko) 2010-11-19 2012-07-30 (주)공영디비엠 멀티테넌트 기반의 서비스로서의 데이터베이스를 이용한 보고서의 생성 방법

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100902193B1 (ko) * 2007-08-17 2009-06-10 주식회사 마크프로 보고서 작성시스템, 검색결과에 대한 맞춤 보고서 제공방법 및 시스템, 그리고, 저장매체
KR100934270B1 (ko) * 2007-09-27 2009-12-28 주식회사 아이큐엠씨 객체 지향적 프로그램을 이용하여 보고서가 작성되도록하는 방법 및 시스템
US8745510B2 (en) 2007-12-13 2014-06-03 International Business Machines Corporation Complex operation execution tool
CN109684403A (zh) * 2018-12-24 2019-04-26 广东电网有限责任公司 电网调度信息查询方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990055219A (ko) * 1997-12-27 1999-07-15 윤덕용 에이치티엠엘(html) 문서 저장 및 검색 시스템
KR19990055301A (ko) * 1997-12-27 1999-07-15 윤종용 라이브러리 형태의 범용 문서 관리 시스템
KR20000015619A (ko) * 1998-08-31 2000-03-15 정선종 웹 문서 자동 생성장치 및 그 방법
KR20010048898A (ko) * 1999-11-30 2001-06-15 오길록 시각적인 화면 설계와 고속 처리가 가능한 동적문서 연동장치 및 그 방법
KR20030056153A (ko) * 2001-12-27 2003-07-04 한국전자통신연구원 Ejb 영속 상태 객체로 표현된 데이터베이스 엔터티들의자동화된 상호관계 관리 방법
KR20030056120A (ko) * 2001-12-27 2003-07-04 삼성에스디에스 주식회사 사용자 정의 기능을 이용한 보고서 편집 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990055219A (ko) * 1997-12-27 1999-07-15 윤덕용 에이치티엠엘(html) 문서 저장 및 검색 시스템
KR19990055301A (ko) * 1997-12-27 1999-07-15 윤종용 라이브러리 형태의 범용 문서 관리 시스템
KR20000015619A (ko) * 1998-08-31 2000-03-15 정선종 웹 문서 자동 생성장치 및 그 방법
KR20010048898A (ko) * 1999-11-30 2001-06-15 오길록 시각적인 화면 설계와 고속 처리가 가능한 동적문서 연동장치 및 그 방법
KR20030056153A (ko) * 2001-12-27 2003-07-04 한국전자통신연구원 Ejb 영속 상태 객체로 표현된 데이터베이스 엔터티들의자동화된 상호관계 관리 방법
KR20030056120A (ko) * 2001-12-27 2003-07-04 삼성에스디에스 주식회사 사용자 정의 기능을 이용한 보고서 편집 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101167888B1 (ko) 2010-11-19 2012-07-30 (주)공영디비엠 멀티테넌트 기반의 서비스로서의 데이터베이스를 이용한 보고서의 생성 방법

Also Published As

Publication number Publication date
KR20030067794A (ko) 2003-08-19

Similar Documents

Publication Publication Date Title
Ozsoyoglu et al. Example-based graphical database query languages
US6374252B1 (en) Modeling of object-oriented database structures, translation to relational database structures, and dynamic searches thereon
US9798748B2 (en) Database query builder
US6678674B1 (en) Data retrieving method and apparatus data retrieving system and storage medium
US7984060B2 (en) Model content provider with reusable components for supporting a plurality of GUI API's
US7548933B2 (en) System and method for exploiting semantic annotations in executing keyword queries over a collection of text documents
US8458164B2 (en) Query model tool and method for visually grouping and ungrouping predicates
CN102521417B (zh) 一种基于虚拟数据立方体的多维数据处理方法及其系统
US20050015368A1 (en) Query modelling tool having a dynamically adaptive interface
Isakowitz et al. The extended RMM methodology for web publishing
JP2004240954A (ja) 階層データを提示する方法
KR19990032818A (ko) 프로세스 방법론을 위한 통합 case 정보저장소 메타 모델시스템 및 그 통합 지원 방법
US10509787B2 (en) Installation for managing a database
CN103365914A (zh) 基于搜索引擎的数据库查询系统和方法
KR100473057B1 (ko) 직관적 방법에 의한 데이터베이스 연동 보고서 작성 방법
KR100984976B1 (ko) 이질적인 2차원 테이블의 데이터를 통합하여 검색하는 방법
JP2024504556A (ja) データ処理システムによって管理されるデータエンティティにアクセスするためのシステム及び方法
Petraki Conceptual data retrieval from FDB Databases
Wu et al. Knowledge graph for china’s genealogy
Jagadish et al. Organic databases
Jackson Thirty years (and more) of databases
Zhao SQL Pocket Guide
Cerbah Learning ontologies with deep class hierarchies by mining the content of relational databases
JP2004164363A (ja) リレーショナル・データベース構造を樹状図で表示する方法
Jagadish et al. Organic databases

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130108

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140103

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20141231

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20151228

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee