KR101312848B1 - 브라우즈 모드 디자이너 - Google Patents

브라우즈 모드 디자이너 Download PDF

Info

Publication number
KR101312848B1
KR101312848B1 KR1020087005738A KR20087005738A KR101312848B1 KR 101312848 B1 KR101312848 B1 KR 101312848B1 KR 1020087005738 A KR1020087005738 A KR 1020087005738A KR 20087005738 A KR20087005738 A KR 20087005738A KR 101312848 B1 KR101312848 B1 KR 101312848B1
Authority
KR
South Korea
Prior art keywords
report
data field
automatically
values
field
Prior art date
Application number
KR1020087005738A
Other languages
English (en)
Other versions
KR20080042885A (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 마이크로소프트 코포레이션
Publication of KR20080042885A publication Critical patent/KR20080042885A/ko
Application granted granted Critical
Publication of KR101312848B1 publication Critical patent/KR101312848B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2428Query predicate definition using graphical user interfaces, including menus and forms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

일반적인 사용자가 데이터베이스 어플리케이션 프로그램을 쉽게 리포트를 디자인할 수 있도록 해주는 브라우즈 모드 디자이너. 사용자는 브라우즈 모드 디자이너를 사용하여, 정보의 손쉬운 소비를 위해 데이터를 모으고 관련된 데이터를 형상 패턴으로 조합하는 의미있는 리포트를 생성할 수 있다. 브라우즈 모드 디자이너는 사용자 동작을 해석할 수 있고, 어떠한 동작이 수행될지 추정할 수 있다. 사용자 인터페이스는 디자인되는 동안 사용자가 결과 뷰를 변경하도록 하는데 사용될 수 있다.
브라우즈 모드 디자이너, 결과 뷰, 리포트, 디자인

Description

브라우즈 모드 디자이너{BROWSE MODE DESIGNER}
상이한 단계의 능력을 갖는 사용자는 종종 데이터베이스 엔진을 갖는 데이터베이스 어플리케이션을 이용하여 리포트를 작성한다. 사용자는 데이터베이스 정보를 입력 및 편집하기 위하여 폼(form)을 생성하며, 일단 폼이 생성되면, 사용자에게 직관적이며 사용하기 편리한 방향으로 폼을 변경하거나 수정하기가 종종 힘들다. 스키마(schema)는 통상적으로 폼을 정의하기 위해 사용되며, 폼의 스키마를 변경시키기 위한 대화 상자(dialogue box) 및/또는 스키마 수정 옵션(schema modification option)은 종종 데이터베이스 어플리케이션에 매우 밀접하게 의존한다. 데이터베이스 어플리케이션은 종종 데이터베이스 어플리케이션을 조작하기 위하여 높은 단계의 기술 및 데이터베이스 개념의 핵심 지식을 요구한다. 그러므로, 형식 데이터베이스 이론에 익숙하지 않은 사용자 또는 데이터베이스 디자인에 경험이 없는 자는 데이터 형식 및 입력 데이터에 기초한 기타 특징을 검색하고 조직화하는데 종종 도움을 필요로 한다.
폼 디자인 툴은 사용자로 하여금 그들이 원하는 데이터(포맷된 리포트 또는 폼) 상의 뷰(view)를 생성하는 예비 단계로서 폼을 디자인하도록 강요한다. 이 예비 단계는 대부분의 사용자에게 직관적이지 못하고 사용자에게 여분의 작업을 부여한다. 통상의 질의 툴(query tools)은 폼을 생성하기 위한 '디자이너' 및 '마법 사(wizard)'체계를 사용한다. 추상적 '디자이너'에서 사용자는 그들의 데이터로부터 동떨어져 있으며, 결과에 감소된 감각을 갖는다. 마법사는 새로운 폼을 생성하는 과정을 통해 사용자로 하여금 단계를 밟아 나가게 하는데 사용되며, 이는 흔히 그들이 원하는 질의 요소(query elemant)를 취하는데 일회성 기회를 제공한다. (또한 마법사는 종종 데이터 중심 관점(data centered viewpoint)을 가지며, 통상적으로 이후 포맷팅(formatting)하는 단계를 제공한다.) 그러나, 마법사는 흔히 사용자가 디자이너로부터 얻을 수 있는 결과보다 예상 폼으로부터 더 많이 제거된 결과를 제공한다.
부가적으로, 통상적인 데이터베이스 어플리케이션은 리포팅 툴로서 사용된다. 어플리케이션에 대한 더 높은 단계의 경험을 요구하는 것에 더하여, 리포팅 툴은 종종 만족스러운 리포트를 생성하기 위하여 사용자로 하여금 다단계 처리를 통하기를 요구한다. 사용자는 통상적으로, 합리적이거나 합리적이지 않은 정보일 수 있는 많은 상이한 데이터 소스로부터 데이터를 검색(retrieve)한다. 그 후 사용자는 이러한 정보를 취하여, 프린트하거나 스크린에 디스플레이하기 위하여 이를 단일 리포트로 결합시킨다. 전통적으로, 리포트를 쉽게 생성하기는 어려우며, 특히 눈에 띄고, 유익하고 사용하기 편리한 리포트는 쉽게 생성하기가 더욱 어렵다.
이러한 배경 정보는 특허 청구 범위에 의해 정의되어야하는 문제를 확인하기 위해서 제공된 것은 아니다.
이 요약은 이하 실시예에서 더 상세히 기술하는 발명을 간략화된 형식으로 개념을 소개하기 위하여 제공되었다. 이 요약은 특허 청구 범위의 주요 특징 또는 필수적 특징을 식별하기 위해서 제공된 것은 아니며, 또한 특허 청구 범위의 범위를 특정하기 위한 것도 아니다.
발명의 일 태양에 따르면, 제1 및 제2 필드 사이의 논리 관계를 결정하기 위해 제1 필드 위치에 대한 제2 필드 위치의 상대적 위치를 사용하여, 제1 필드를 디스플레이 화면에 위치시키고 제2 필드를 디스플레이 화면에 위치시키기 위해 사용자 명령이 수신된다. 결정된 논리 관계에 따라 제1 및 제2 필드로부터 결과 세트를 발생시키기 위해 질의가 생성된다. 이 결과 세트는 제1 필드 위치 및 제2 필드 위치에 따라서 디스플레이된다.
발명의 다른 태양에 따르면, 디스플레이는 제1 및 제2 필드 사이의 논리 관계를 결정하기 위해 제2 필드 및 제1 필드의 상대적 위치를 이용하여 제1 필드 및 제2 필드를 디스플레이 화면에 위치시키기 위해 사용된다. 질의 생성기는 결정된 논리 관계에 따라서 제1 및 제2 필드로부터의 결과 세트를 발생시키기 위한 질의를 생성하고, 제1 필드 위치 및 제2 필드 위치에 따라서 결과 세트를 디스플레이한다.
실시예는 컴퓨터 프로세서, 컴퓨터 시스템(포켓용 컴퓨팅 장치를 포함)로서 구현될 수 있거나, 컴퓨터 프로그램 제품과 같은 제조의 물품으로서 구현될 수 있다. 컴퓨터 프로그램 제품은 컴퓨터 시스템에 의해 판독 가능하고, 컴퓨터 프로세스를 실행하기 위한 명령어의 컴퓨터 프로그램을 인코딩할 수 있는 컴퓨터 저장 매체일 수 있다. 컴퓨터 프로그램 제품은 컴퓨터 시스템에 의해 판독 가능하고, 컴퓨터 프로세스를 실행하기 위한 명령어의 컴퓨터 프로그램을 인코딩하는 캐리어(carrier) 상의 전파 신호일 수 있다.
도 1은 브라우즈 모드 디자이너(browse mode designer)의 스택 레이아웃(stacked layout)에 필드를 추가하는 단계를 도시하는 도면.
도 2는 브라우즈 모드 디자이너의 태뷸러 레이아웃(tabular layout)에 필드를 추가하는 단계를 도시하는 도면.
도 3은 브라우즈 모드 디자이너의 비어있는 뷰에 필드를 추가하는 단계를 도시하는 도면.
도 4는 브라우즈 모드 디자이너의 비어있는 뷰에 필드를 추가할 때 넌 디폴트 레이아웃(non-default layout)을 선택하는 단계를 도시하는 도면.
도 5는 "고객에 따른 주문(Orders with Customers)"으로 조직된 리포트에서 예시적인 병합(JOIN) 작동을 개시하는 단계를 도시하는 도면.
도 6은 "고객에 따른 주문"으로 조직된 리포트에서 예시적인 병하 작동의 결과를 도시하는 도면.
도 7은 "코멘트에 따른 주문"으로 조직된 리포트의 룩업 필드를 생성하는 단계를 도시하는 도면.
도 8은 "코멘트에 따른 주문"으로 조직된 동일한 테이블로부터의 새로운 필드를 추가하는 단계를 도시하는 도면.
도 9는 "주문에 따른 고객"으로 조직된 리포트의 예시적인 그룹화 동작을 개시하는 단계를 도시하는 도면.
도 10은 "주문에 따른 코멘트"로 조직화된 리포트의 예시적인 그룹화 동작의 결과를 도시하는 도면.
도 11은 관련된 데이터를 디스플레이하기 위한 동작 흐름도(1100).
도 12는 이곳에 기술된 발명을 구현하는데 사용될 수 있는 일반적인 컴퓨터 환경(1200)을 도시하는 도면.
도면을 참조로 하여 한정하지 않으며, 개략적인 실시예가 기술되어 있다. 다르게 특정하지 않는 이상, 같은 참조 번호는 같은 부분을 의미한다.
다양한 실시예는, 이곳에 부분을 형성하며 본 발명을 구현하기 위한 특정한 예시적 실시예를 나타내기 위한 첨부된 도면을 참조로 더 자세하게 기술되어 있다. 그러나, 실시예는 다양한 상이한 형태로 구현될 수 있고, 이곳에 제시된 실시예에 한정하여 해석하여서는 아니되며 오히려 이 실시예로서 본 특허 명세서가 완성될 수 있으며, 당업자에게 본 발명의 범위를 전체적으로 전달할 수 있게 한다. 실시예는 방법, 시스템, 장치로서 구현된다. 따라서, 실시예는 하드웨어 구현, 전체 소트트웨어 구현 또는 소프트웨어와 하드웨어 태양의 조합의 형태의 형식을 취할 수 있다. 따라서, 이하의 상세한 설명은 한정하기 위함이 아니다.
다양한 실시예의 논리 작동은 (1)컴퓨팅 시스템에서 작동하는 컴퓨터 구현 단계 시퀀스 및/또는 (2)컴퓨팅 시스템 내의 상호 연결된 기계 모듈로서 구현된다. 이러한 구현은 실시예를 구현하는 컴퓨팅 시스템의 작동 요구사항에 따른 선택의 문제이다. 따라서, 이곳에 기술된 실시예를 이루는 논리 동작은 작동, 단계 또는 모듈로서 선택적으로 인용된다.
데이터는 통상적으로 사용자 명령에 응답하여 데이터가 소팅(sort)되고, 조작(manipulate)되며, 디스플레이되도록 조직화된 방법으로 컴퓨터 시스템에 저장된다. 그러한 데이터는 데이터를 조작하기 위한 명령을 사용자에게 제공하는 데이터베이스 시스템을 이용하여 저장될 수 있다. 부가적으로, 스키마는 데이터가 어떻게 저장되고 액세스 되는지를 정의하는데 사용될 수 있다. 최근, 스키마를 직접 코딩하고 데이터 정보를 조작하는 데는 통상적인 사용자는 갖지 못하는 프로그래밍 언어의 지식이 필요하고, 또한 그러한 지식을 가진 자가 그것을 행하는 것은 효율이 떨어질 수 있다. 데이터베이스 디자이너 역시 사용될 수 있지만, 데이터와 데이터베이스 구조에 동시에 엑세스하는 기능이 제한된다.
전통적으로, 데이터베이스 어플리케이션 프로그램의 사용자에 대한 가장 큰 넘어야할 장애물 중 하나는 폼 및 리포트를 위한 런타임과 디자인 경험 사이의 분립이었다. 브라우즈 모드는 통상적으로 마이크로소프트 오피스®엑세스®데이터베이스의 객체를 위한 런타임모드이다. 브라우즈 모드에서, 폼 및 리포트에서의 제어(텍스트 상자 및 라벨 등의)는 데이터바운드(databound)이다 - 즉, 그들은 폼의 디자인에 의해 결정된 포맷의 데이터베이스내의 테이블로부터의 데이터를 디스플레이한다. 브라우즈 모드는 종종 객체가 열리는 디폴트 모드이다. '뷰'는 비주얼적으로 상호작용하거나 테이블(즉, 리포트, 폼, 질의(queries) 등)에 저장된 데이터를 보기 위해 사용될 수 있는, 데이터베이스의 객체이다.
다양한 실시예에서, 브라우즈 모드 디자이너는 쉽게 사용하는 폼이며 리포트 생성 인터페이스이다. 브라우즈 모드 디지아너는 데이터베이스 어플리케이션 프로그램의 평균적 사용자가 폼 및 리포트를 쉽게 디자인하도록 허용해준다. 사용자는 정보의 손쉬운 소비를 위해 데이터를 모으며, 관련된 데이터를 형상 패턴(shaped pattern)으로 결합시키는 의미있는 리포트를 생성하기 위해 그것을 사용할 수 있다. 브라우즈 모드 디자이너는 사용자가 디스플레이 화면(display surface) 밖에서부터 선택된 정보를 조합하도록 함으로써, 다양한 데이터 소스로부터의 정보를 조합하기 위한 시스템뿐만이 아니라 개인으로 하여금 원하는 데이터를 테이블로부터 추려내도록 허용해준다.
브라우즈 모드 디자이너는 사용자의 행동(action)을 해석할 수 있으며, 어떤 행동이 수행될지 추정할 수 있다. 추정된 행동은 근본적인 소스 파일(underlying source file) 및/또는 템플렛(template)을 수정하여 ("피봇 기능을 수행할 때 필드 내 반복 항목을 복사하지 마라" 등과 같이, 리포트 생성자가 어떤 것을 가장 많이 기대하는지를 결정하기 위한 다른 리포트의 조사 및 비슷한 휴리스틱(heuristic)에 근거하여)정보는 사용자가 기대하는 데이터가 제시되는 방법으로 디스플레이된다. 실제 리포트의 부분이 아닌 사용자 인터페이스는 또한 사용자가 결과 뷰를 변화시키도록 디스플레이된다.
브라우즈 모드 디자이너는 또한 사용자가 조합된 정보가 어떻게 제시되어야하는지에 대한 관점에서 특정한 선택을 하도록 허용한다. 브라우즈 모드 디자이너는 뷰에 변경이 있을 때 사용자가 데이터를 보도록 허용한다. 브라우즈 모드 디자 이너는 자동적으로 데이터의 전체 행과 열의 크기를 재조정할 수 있고, 또한 자동적으로 데이터를 재배열(다른 필드에 따라서)하고 필드의 크기를 재조정할 수 있다.(예를 들어, 디스플레이되는 데이터의 길이에 기초하여) 사용자는 또한 비주얼적으로 데이터를 포맷할 수 있고(예를 들어, 볼드화(bolding), 이탤릭체화(italicize), 밑줄 등) 뷰에서 그 데이터의 위치를 조정할 수 있다.
예를 들어, "종업원(employee)"이 유닛인 경우, 사용자는 종업원에 대한 리포트를 작성하기 원하고, 성, 이름, 전화번호(유닛 '종업원'의 특징인)와 같은 정보를 관련시킨다. 브라우즈 모드 디자이너는 사용자가 모든 종업원에 대해 그들이 선택하는 임의의 특징을 포함한 리포트를 생성하도록 허용하며, 이는 리포트 생성시의 언제나 실제 현재 리포트를 보는 동안 이루어진다. 브라우즈 모드 디자이너는 또한 특성(필드의 폼으로)을 서로 인지하도록 하며 리포팅 화면에 그들이 적절히 위치될 수 있도록 한다. 리포트에 필드를 부가시킬 때에, 예를 들어, 필드 '이름'은 필드'성'과 겹치지 않을 것이다. 또한 필드'전화 번호'는 나중에 '이름'과 '성'사이에 삽입될 수 있고, 그 필드는 부가되는 필드를 위하여 공간을 생성하도록 떨어질 수 있다.
도 1은 브라우즈 모드 디자이너에서 스택 레이아웃(stacked layout)(예를 들어, 마이크로소프트 오피스®액세스®에 사용되는)에 필드를 부가하는 단계를 도시한다. 일 실시예에서, 브라우즈 모드 디자이너는 데이터베이스로 네트워크화된 컴퓨터와 같은 컴퓨터 시스템상에 구현된다. 작업 창(task pane)(110)은 예를 들어, 뷰(120)를 수정하는데 사용될 수 있는 데이터베이스 필드를 보여주기 위해 사용된다. 작업 창(110)은 원하는 뷰를 생성하기 위해 사용자가 선택(예들 들어, 드래그하고 뷰(120)에 드롭함으로써)할 수 있는 가용 필드를 디스플레이한다.
뷰(120)에 나타난 바와 같이, 작업 창(110)의 필드 리스트로부터 필드(field)(122)를 드래그하면 삽입 선이 스택 레이아웃(124)을 포함하는 음영 구역 내의 잠재적 드롭 포인트(drop point)에 디스플레이된다. 필드(field)(122)를 릴리스하면 뷰(130) 내에 새로운 필드(132)가 나타나게 된다.
도 2는 브라우즈 모드 디자이너의 태뷸러 레이아웃(예를 들어, 마이크로소프트 오피스액세스에 사용되는)에 필드를 추가하는 단계를 도시한다. 뷰(220)에 나타난 바와 같이, 작업 창(110)의 필드 리스트로부터의 필드(222)를 드래그하면 테이블(224)을 포함하는 음영 구역이 생긴다. 필드(222)를 릴리스하면 새로운 열(233)이 뷰(230) 내에 나타난다.
도 3은 브라우즈 모드 디자이너 내의 비어있는 뷰에 필드를 추가하는 단계를 나타낸다. 뷰(320)에 나타난 바와 같이, 작업 창(110)의 필드 리스트로부터의 필드(322)를 드래그하면 뷰(320) 내에 음영 구역이 생기도록 한다. 필드(322)를 릴리스하면 새로운 열(332)이 뷰(330) 내에 나타난다.
도 4는 브라우즈 모드 디자이터의 비어있는 뷰에 필드를 추가할 때 넌-디폴트 레이아웃(non-default layout)을 선택하는 단계를 나타낸다. 뷰(420)에 나타난 바와 같이, 제어(422)를 활성화시키면 대체 선택(424)이 뷰(420) 내에 나타난 다.(제어(422)는 예를 들어, 필드(426) 상에 커서를 이동함에 따라(hovering) 나타날 수 있다.)
대체 선택(424)은 통상적으로 선택된 필드에 대체적인 레이아웃을 디스플레이한다. 예를 들어, 필드(426)는 태뷸러 레이아웃에 있으며, 대체 선택(424)은 텍스트 "스택 레이아웃에 나타내기(Show in Stacked layout)"를 디스플레이한다. 대체 선택(424)을 클릭하면 선택된 필드가 뷰(430)에 나타난 바와 같이 스택 레이아웃(432)으로 재배열된다. 일 실시예에서, 아래의 테이블 1에 따라 브라우즈 모드 디자이너는 명령을 구현한다.
테이블 1
아이콘 텍스트(및 접속 가능 값) 언제 보일지
Figure 112008016979510-pct00001
스택 레이아웃에 표시 새로운 태뷸러 레이아웃을 자동 생성한 이후 제 1디자인이 변할때까지
Figure 112008016979510-pct00002
태뷸러 레이아웃에 표시 새로운 스택 레이아웃을 자동 생성한 이후 제 1디자인이 변할때까지
관련 데이터 소스로부터의 데이터 뷰잉의 관점에서, 필드 리스트(작업 창의)는 사용자로 하여금 필드를, 현재 뷰가 제한되는 질의의 부분(part of query)이 아닌 그들의 뷰에 추가하도록 허용한다. 관련된 데이터 소스로부터의 필드를 추가하는 단계는 통상적으로 필드를 질의로 추가하고 동시에, 뷰에 제어를 추가한다.
아래의 테이블 2에 나타난 바와 같이, 관련 데이터 소스로부터 뷰로 필드를 추가하는 적어도 6개의 가능한 상황이 있다. 테이블에서, '1'은 데이터 관계의 '일'측면 상의 테이블로부터 데이터를 미리 디스플레이할 수 있는 폼이나 리포트를 언급하며,'∞'는 데이터 관계의 '다수'측면 상의 테이블로부터 데이터를 미리 디스플레이할 수 있는 폼이나 리포트를 언급한다. 데이터 관계는 두 가지 이상의 테이블의 데이터에 관한 데이터베이스에 의해 저장된 정보이다. 예를 들어, 일 테이블의 각 레코드에 대해, 다른 테이블의 몇몇의 레코드는 주어진 일련의 필드에 대한 동일한 데이터를 공유한다. 도 5에서, 고객 테이블은 주문 테이블과 일대다 관계에 해당하여, ID 필드에 고유 값이 부여됨으로써 결정되는 고객의 각 레코드에 대해, 고객 레코드에서의 ID 필드의 값은 고객 ID 필드와 동등한 경우 주문에 레코드가 하나도 없거나 하나 또는 다수가 있을 수 있다. 각각의 상황에 대하여, 상이한 행동이 통상적으로 수행된다. 도 5 내지 10은 '주문'이 '고객'에 대해 다대일 관계를 갖는 예제 데이터베이스에 기초하여 테이블 2의 행동을 도시한다.
테이블 2
1->∞ 드래그 ∞->1 드래그
단일 항목 폼 병합(JOIN) 병합
연속 폼 병합 하위 데이터시트(상세 폼으로 변환)
리포트 그룹핑 병합
테이블 3,4는 관련 데이터 소스로부터의 필드가 뷰에 부가된 후 브라우즈 모드 디자이너에 나타나는 대체 포맷 옵션(formatting option)을 디스플레이한다. 포맷 옵션은 통상적으로 다음 디자인 변화 이전에만 가용하도록 되어있다.
테이블 3
1->∞ 드래그 ∞->1 드래그
단일 항목 폼 병합 병합
연속 폼 병합 하위 데이터시트(상세 폼으로 변환)
리포트 그룹핑 병합
테이블 4
동작 텍스트(및 엑세스 가능한 값
병합 (폼) 텍스트로 변환
하위-데이터시트 데이터시트로 변환
병합 (리포트) 그룹화하지 않음
그룹핑 <필드 이름>에 의해 그룹화
도 5는 "고객에 따른 주문"으로 조직화된 리포트에서 예시적인 병합 동작을 개시하는 단계를 나타낸다. 뷰(520)에 나타난 바와 같이, 작업 창(510)의 필드 리스트로부터의 필드(522)를 드래그하면 테이블(524)을 포함하는 음영 구역이 형성된다. 필드(522)를 릴리스하면 병합 동작이 개시되고, 이는 도 6에 나타나 있다.
도 6은 "고객에 따른 주문"으로 조직화된 리포트에서 예시적인 병합 동작의 결과를 나타낸다. 뷰(620)에 나타난 바와 같이, 필드(522)(작업 창(510)에서 드래그된)를 릴리스하면 필드(622)("회사 이름")를 테이블(624)에 부가하는 병합 동작이 이루어진다. 필드(622)는 필드(622)가 디스플레이되도록 하는데 관련이 있는 데이터를 나타내도록 한다.
도 7은 "코멘트에 따른 주문"으로 조직화된 리포트에 룩업을 생성하는 단계를 나타낸다. 뷰(720)에서 보는 바와 같이, 필드(730)(작업 창(710)에서 드래그된)를 릴리스하면 필드(722)("회사 이름")를 스택 레이아웃(724)에 추가하는 병합 동작이 수행된다. 룩업 필드가 생성되면, 콤보 박스는 통상적으로 '다수'테이블을 '일'테이블로 관계시키는 참조 키(foreign key)에 제한된다. 콤보박스(730)를 위한 제어소스(ControlSource)는 통상적으로 '다수' 테이블을 '일'테이블에 관계시키는 '다수' 테이블의 참조키이다. 콤보박스(730)를 위한 열소스(RowSource)는 드래그되고 릴리스된 필드 및 '일' 테이블의 기본 키(primary key)로 제한되는 질의이다.
룩업을 위한 디스플레이 필드는 드래그된(참조 키 필드는 숨겨진) 필드이다. 룩업이 생성된 후 뷰에 부가되는 후속 필드는 현재 뷰에 병합된다. 후속 필드 각각에 대하여, 판독 전용 텍스트박스는 병합 동작 내에서 생성된다. 하나의 필드는 각각의 관계에 대해 룩업 필드로서 사용되기 때문에, 룩업 필드에 새롭게 부가된 필드는 현재 룩업 필드로 하여금 병합된 필드가 되도록 한다.
도 8은 '코멘트에 따른 주문'으로 조직된 동일한 테이블로부터의 새로운 필드를 부가하는 단계를 나타낸다. 뷰(820)에 나타난 바와 같이, 필드(830)(작업 창(810)으로부터 드래그된)를 릴리즈하면, 필드(822)("접촉 이름(contact name)")를 스택 레이아웃(824)에 부가하는 병합동작이 실행된다.
도 9는 '주문에 따른 고객'으로 조직된 리포트의 예시적인 그룹핑 동작을 개시하는 단계를 나타낸다. 뷰(920)에 나타난 바와 같이, 필드(922)를 작업 창(910)의 필드 리스트로부터 드래그함으로써, 테이블(924)을 포함하는 음영 지역이 형성된다. 일 실시예에서, 필드(922)를 릴리스함으로써, 도 10에 도시된 그룹핑 동작이 개시된다.
도 10은 '주문에 따른 고객'으로 조직된 리포트의 예시적 그룹핑 동작의 결과를 나타낸다. 뷰(1020)에 나타난 바와 같이, 필드(1022)(작업 창(910)으로부터 드래그된)를 릴리스함으로써 그룹핑 동작이 이루어지며, 이는 반복된 필드(1030)("회사 이름")의 인스턴스가 테이블(1024)에 단지 한번 상태되도록(stated) 한다. 하지만, 각 필드(1022)의 인스턴스는 테이블(1024)에 디스플레이되어, 각 인스턴스가 가진 필드(1030)와의 관계성을 나타낸다.
도 11은 관계된 데이터를 디스플레이하기 위한 동작 흐름도(1100)를 나타낸다. 동작 흐름도(1100)는 임의의 적당한 컴퓨팅 환경에서 수행될 수 있다. 예를 들어, 동작 흐름도(1100)는 스키마 편집을 수행하기 위해 사용자 어플리케이션 프로그램(1228)(도 12, 아래)과 같은 어플리케이션에 의해 실행될 수 있다. 그러므로, 동작 흐름도(1100)의 기재는 도 12의 적어도 하나의 컴포넌트를 언급할 수 있다. 그러나, 도 12의 구성요소의 임의의 그러한 참조부는 단지 설명을 위한 것뿐이고, 도 12의 구현은 동작 흐름도(1100)를 위해 제한된 환경이 아님을 이해되어야한다.
동작(1102)에서, 사용자 명령은 제1 필드를 디스플레이 표면상에 위치시키기 위해 수신된다. 다양한 실시예에서, 제1 필드는 스키마, 구조, 사용자 정의 리스트 등으로 정렬될 수 있다. 필드의 리스트는 사용자 희망에 따라서 확장 가능(expandable)하고 접을 수 있는(collapsible) 나무 구조로 정렬될 수 있다. 사용자는 뷰 화면에 대한 필드를 선택하는 소스로서 필드의 리스트를 사용할 수 있다.
동작(1104)에서, 사용자 명령은 제2 필드를 디스플레이 표면상에 위치시키기 위해 수신된다. 다중 필드가 디스플레이될 때, '문맥(context)'은 확장 논리 관계를 포함하는 필드 사이에 존재한다. 추가적인 필드가 부가되는 경우(추가적인 의도적 문맥(intended context)을 제공하는), 확장 논리 관계는 데이터를 유용하고 효과적인 방법으로 디스플레이하기 위해 비주얼 출력을 어떻게 포맷 할지 결정하기 위해 사용된다.
예를 들어, 그래픽 사용자 인터페이스는 예를 들어, 제2 필드 위치에 대한 유효 삽입 포인트를 포함하는 구역을 비주얼적으로 표시하기 위해 제공된다. 본 예시에서, 데이터는 편집, 복사, 입력되지 않고 보여질 수 있다. 다른 예시에서, 제1 및 제2 필드를 위한 데이터를 입력하기 위해 명령이 수신될 수 있다.
동작(1106)에서, 질의(query)는 결정된 논리 관계에 대응하는 제1 및 제2 필드로부터의 결과 세트를 산출하기 위해 생성된다. 다양한 실시예에서, 결과 세트는 논리 병합(logical join)과 같은 결정된 논리 관계의 결과이다. 실시예에서, 사용자에게는 정해진 논리 관계인 디폴트를 변경하기 위한 제어가 제공된다.
동작(1108)에서, 결과 세트는 제1 필드 위치 및 제2 필드 위치에 따라서 디스플레이된다. 편집기는 필드가 비주얼 구조의 일부로서 디스플레이됨을 인식하고, 이 구조에 새로운 필드를 시각적으로 결합된 방법으로 부가한다. 예를 들어, 결과 세트는 테이블 또는 스택 레이아웃으로서 디스플레이될 수 있다. 사용자 인터페이스는, 뷰를 편집(또는 생성, 변경, 위치 변경 등)하기 위한 리스트로부터의 필드를 사용하기 위해 사용자로부터 명령을 수신하도록 구성된다. 또한 사용자는, 제1 과 제2 필드 사이의 일대다 또는 다대일 관계에 놓인 경우 등에서 필드 내의 반복된 항목을 그룹화할 수 있다. 결과 세트 디스플레이는 예를 들어, 필드의 데이터 항목의 폭이나 높이에 응답하여 필드가 겹치지 않도록 자동적으로 조정될 수 있다.
도 12은 본 발명이 구현되기에 적합한 컴퓨팅 시스템 환경(1200)의 일례를 도시하고 있다. 컴퓨터 환경(1200)은 적합한 컴퓨팅 환경의 일례에 불과하며, 본 발명의 용도 또는 기능성의 범위에 관해 어떤 제한을 암시하고자 하는 것이 아니다. 컴퓨팅 환경(1200)이 예시적인 컴퓨터 환경(1200)에 도시된 컴포넌트들 중 임의의 하나 또는 그 컴포넌트들의 임의의 조합과 관련하여 어떤 의존성 또는 요구사항을 갖는 것으로 해석되어서는 안된다.
컴퓨터 환경(1200)은 컴퓨터(110) 형태의 범용 컴퓨팅 장치를 포함한다. 컴퓨터(1202)의 컴포넌트들은 하나 이상의 프로세서 또는 프로세싱 유닛(1204), 시스템 메모리(1206), 및 프로세서(1204)를 포함한 각종 시스템 컴포넌트들을 시스템 메모리(1206)에 연결시키는 시스템 버스(1208)를 포함할 수 있지만 이에 제한되는 것은 아니다.
시스템 버스(1208)는 메모리 버스 또는 메모리 컨트롤러, 주변 장치 버스, 가속 그래픽 단자 및 각종 버스 아키텍처 중 임의의 것을 이용하는 로컬 버스 또는 프로세서를 비롯한 하나 이상의 임의의 몇몇 유형의 버스 구조를 나타낸다. 예로서, 이러한 구조는 그리고 메자닌 버스(mezzanine bus)로도 알려진 PCI(peripheral component interconnect) 버스, PCI 익스프레스 버스(등의), USB, SD(Secure Data) 버스 및 또는 IEEE 1394, 즉 파이어와이어 버스 등을 포함할 수 있다.
컴퓨터(1202)는 각종 컴퓨터 판독가능 매체를 포함할 수 있다. 그러한 매체는 그 어떤 것이든지 컴퓨터 판독가능 매체가 될 수 있고, 이러한 컴퓨터 판독가능 매체는 휘발성 및 비휘발성 매체, 착탈형 및 비착탈형 매체를 포함한다.
시스템 메모리(1206)는 판독 전용 메모리(ROM)(1212)와 같은 휘발성 메모리 및/또는 랜덤 액세스 메모리(RAM)(1210)와 같은 비휘발성 메모리 형태의 컴퓨터-판독 가능 매체를 포함한다. 시동 중과 같은 때에, 컴퓨터(1202) 내의 구성요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템(BIOS)(1214)은 ROM(1212) 또는 플래시 RAM에 저장되어 있다. RAM(1210)은 통상적으로 프로세싱 유닛(1204)이 즉시 액세스 할 수 있고/있거나 현재 동작시키고 있는 데이터 및/또는 프로그램 모듈을 포함한다.
컴퓨터(1202)는 또한 기타 착탈형/비착탈형, 휘발성/비휘발성 컴퓨터 저장매체를 포함한다. 단지 예로서, 도 12는 비착탈형, 비휘발성 자기 매체(미도시)에 기록을 하거나 그로부터 판독을 하는 하드 디스크 드라이브(1216), 착탈형, 비휘발성 자기 디스크(1220)(예를 들어, 플로피 디스크)에 기록을 하거나 그로부터 판독을 하는 자기 디스크 드라이브(1218), CD-ROM, DVD-ROM 또는 기타 광 매체 등의 착탈형, 비휘발성 광 디스크(1224)에 기록을 하거나 그로부터 판독을 하는 광 디스크 드라이브(1222)를 포함한다. 하드 디스크 드라이브(1216), 자기 디스크 드라이브(1218) 및 광학 디스크 드라이브(1222)는 하나 이상의 데이터 매체 인터페이스(1225)에 의해 각각 시스템 버스(1208)에 접속된다. 다른 방법으로, 하드디스크 드라이브(1216), 자기 디스크 드라이브(1218) 및 광학 디스크 드라이브(1222)는 하나 이상의 인터페이스(미도시)에 의해 시스템 버스(1208)에 접속될 수 있다.
디스크 드라이브 및 그들의 관련 컴퓨터-판독 가능 매체는 컴퓨터(1202)에 대하여 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 및 다른 데이터의 비휘발성 저장소를 제공한다. 비록 본 예시는 하드디스크(1216), 착탈형 자기 디 스크(1220) 및 착탈형 광학 디스크(1224)를 나타내지만, 자기 카세트 또는 다른 자기 저장 장치, RAM, ROM, EEPROM, 플래시 메모리 카드, CD-ROM, DVD(digital versatile disks) 등의 원하는 정보를 저장하는데 이용될 수 있고, 컴퓨터에 의해 액세스될 수 있는 컴퓨터 판독 가능 매체의 다른 형식도 예시적인 컴퓨팅 시스템 및 환경을 구현하는데 사용될 수 있음이 이해되어야 한다.
임의 갯수의 프로그램 모듈은 예시적이지만, 운영 체제(1226), 하나 이상의 어플리케이션 프로그램(1228)(이는 이상에서 기술한 스키마 편집을 포함할 수 있다.), 다른 프로그램 모듈(1230) 및 프로그램 데이터(1232)와 함께 하드 디스크(1216), 자기 디스크(1220), 광학 디스크(1224), ROM(1212) 및/또는 RAM(1210)에 저장될 수 있다. 이 운영 체제(1226), 하나 이상의 어플리케이션 프로그램(1228), 다른 프로그램 모듈(1230) 및 프로그램 데이터(1232)(또는 이들의 조합)의 각각은 분산 파일 시스템을 지원하는 상주 컴포넌트의 전부 또는 부분을 실행할 수 있다.
사용자는 키보드(1234) 및 포인팅 장치(1236)(예를 들어, '마우스')와 같은 입력 장치를 통해 명령 및 정보를 컴퓨터(1202)에 입력할 수 있다. 다른 입력 장치(1238)(미도시)로는 마이크, 조이스틱, 게임 패드, 위성 안테나, 직렬 단자, 스캐너 등을 포함할 수 있다. 이들 및 기타 입력 장치는 시스템 버스(1208)에 결합된 입/출력 인터페이스(1240)를 통해 프로세싱 유닛(1204)에 연결되지만, 병렬 단자, 게임 단자 또는 USB(universal serial bus) 등의 다른 인터페이스 및 버스 구조에 의해 접속될 수도 있다.
모니터(1242) 또는 다른 유형의 디스플레이 장치도 비디오 인터페이스(1244) 등의 인터페이스를 통해 시스템 버스(1208)에 접속될 수 있다. 모니터(1242) 이외에, 다른 출력 주변 장치는 I/O 인터페이스(1240)를 통해 컴퓨터(1202)에 접속할 수 있는 스피커(미도시) 및 프린터(1246) 등의 컴포넌트를 포함할 수 있다.
컴퓨터(1202)는 원격 컴퓨터(1248)와 같은 하나 이상의 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 예로써, 원격 컴퓨팅 장치(1248)는 PC, 휴대용 컴퓨터, 서버, 라우터, 네트워크 컴퓨터, 피어 장치 또는 다른 공통 네트워크 노드 등 일 수 있다. 원격 컴퓨팅 장치(1248)는 이곳에 기술된 컴퓨터(1202)에 관한 모든 또는 많은 구성 요소 또는 특징을 포함할 수 있는 휴대용 컴퓨터로 나타나있다. 다른 방법으로, 컴퓨터(1202)는 네트워크화되지 않은 환경에서도 동작할 수 있다.
컴퓨터(1202)와 원격 컴퓨터(1248) 사이의 논리적 접속은 LAN(1250) 및 WAN(1252)로 표시되어 있다. 이러한 네트워킹 환경은 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷, 및 인터넷에서 일반적인 것이다.
LAN 네트워킹 환경에서 구현될 때, 컴퓨터(1202)는 네트워크 인터페이스 또는 어댑터(1254)를 통해 LAN에 접속된다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(1202)는 통상적으로 모뎀(1256) 또는 WAN(1252)을 통해 통신이 수립될 수 있는다른 수단을 포함한다. 컴퓨터(1202)의 내장형 또는 외장형일 수 있는 모뎀(1256)은 I/O 인터페이스(1240) 또는 다른 적절한 메커니즘을 경유하여 시스템 버스(1208)에 접속될 수 있다. 도시된 네트워크 접속은 예제이며, 컴퓨터(1202)와 컴퓨터(1248) 사이의 적어도 하나의 통신 링크를 수립하는 다른 수단이 사용될 수 있다.
네트워크화된 환경에서, 컴퓨팅 환경(1200)으로 기술된 것과 같은 컴퓨터(1202) 또는 그것의 부분에 관해 도시된 프로그램 모듈은 원격 메모리 저장소 장치에 저장될 수 있다. 예로서, 원격 어플리케이션 프로그램(1258)은 원격 컴퓨터(1248)의 메모리 장치에 저장된다. 기술을 목적으로, 어플리케이션 또는 프로그램 및 기타 운영 체제와 같은 실행 가능한 프로그램 컴포넌트는, 컴퓨팅 장치(1202)의 상이한 저장소 컴포넌트에 다양한 시간에 존재하는 것으로 인식됨에도, 이곳에서는 분리된 블록으로 나타나있으며, 이는 컴퓨터의 적어도 하나의 데이터 프로세서에 의해 실행된다.
다양한 모듈 및 기술은 하나 이상의 컴퓨터 또는 기타 장치에 의해 실행되는 프로그램 모듈과 같은 컴퓨터-실행가능 명령어의 일반적인 문맥(context)으로 이곳에 기술되어 있다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상화 데이터 타입을 구현하기 위해 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함한다. 통상적으로, 프로그램 모듈의 기능은 다양한 실시예에서 원하는 바대로 조합되거나, 분산될 수 있다.
이러한 모듈 및 기술의 구현은 컴퓨터 판독 가능 매체의 일정한 형식으로 저장되거나 전송될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 엑세스될 수 있는 임의의 가용 매체일 수 있다. 예로서, 컴퓨터 판독 가능 매체는 "컴퓨터 저장 매체" 및 "통신 매체"를 포함할 수 있지만 이에 제한되는 것은 아니다.
"컴퓨터 저장 매체"는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터 등의 정보의 저장을 위한 임의의 방법 또는 기술로서 구현된 휘발성 및 비휘발성, 착탈형 및 비착탈형 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터에 의해 액세스되고 원하는 정보를 저장할 수 있는 임의의 기타 매체를 포함하지만 이에 제한되는 것은 아니다.
통신 매체는 통상적으로 반송파(carrier wave) 또는 기타 전송 메커니즘(transport mechanism)과 같은 피변조 데이터 신호(modulated data signal)에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터 등을 구현하고 임의의 정보 전달 매체를 포함한다. "피변조 데이터 신호"라는 용어는, 신호 내에 정보를 인코딩하도록 그 신호의 특성들 중 하나 이상을 설정 또는 변경시킨 신호를 의미한다. 예로서, 통신 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF, 적외선, 기타 무선 매체와 같은 무선 매체를 포함하지만, 이에 제한되는 것은 아니다. 상술된 매체들의 모든 조합이 또한 컴퓨터 판독가능 매체의 영역 안에 포함되는 것으로 한다.
본 명세서에 걸쳐 "일 실시예" "실시예"라고 언급한 것은 본 발명의 적어도 일 실시예에 특정한 기술된 특징, 구조 또는 특색이 포함되었음을 뜻한다. 그러 므로, 그러한 어구의 사용은 일 실시예 보다 더 많은 것을 언급할 수 있다. 더 나아가, 기술된 특징, 구조 또는 특색은 하나 이상의 실시예의 적절한 방식으로 조합될 수 있다.
하지만, 당업자는 하나 이상의 특정 상세 또는 기타 방법, 리소스, 재료 등 없이도 본 발명이 실행될 수 있음을 인식할 것이다. 다른 경우로서, 잘 알려진 구조, 리소스, 또는 동작은 단지 본 발명이 애매하게 표현되는 것을 방지하기 위해 나타나지 않거나 상세하게 기술되지 않았다.
본 발명의 예시적 실시예 및 어플리케이션이 나타나고 기술되었지만, 본 발명은 이상에서 기술된 정확한 구성 및 리소스에 제한되지 않는다. 본 발명의 방법 및 시스템의 배열, 작동 및 세부 사항에 대해 특허 청구 범위의 범주를 벗어나지 않은 채 당업자에게 자명한 다양한 개조, 변경 및 변형이 이루어질 수 있을 것이다.

Claims (20)

  1. 리포트 생성 프로세스 동안 데이터베이스 리포트의 레이아웃을 미리 구성하지 않고 상기 데이터베이스 리포트를 동적으로 생성하는 컴퓨터로 구현되는 방법으로서,
    작업 창(task pane) 및 리포트 창(report pane)을 동시에 디스플레이하는 단계- 상기 작업 창은 원격 데이터베이스 서버 내의 값들의 카테고리를 식별하는 복수의 데이터 필드 식별자의 디스플레이를 포함하고, 상기 원격 데이터베이스 서버는 복수의 데이터베이스 필드의 값을 유지하고, 상기 리포트 창은 제1 데이터 필드의 값들의 제1 세트의 디스플레이를 갖는 리포트의 디스플레이를 포함함 -;
    상기 데이터베이스 리포트의 레이아웃을 미리 구성하지 않고 상기 작업 창 및 상기 리포트 창 내의 리포트를 동시에 디스플레이하는 동안,
    상기 작업 창으로부터 제2 데이터 필드 식별자의 선택을 수신하는 단계;
    상기 리포트 창의 리포트로의 삽입 지점의 선택을 수신하는 단계;
    상기 삽입 지점의 선택에 응답하여, 상기 리포트를 자동으로 수정하는 단계를 포함하되,
    상기 리포트를 자동으로 수정하는 단계는,
    상기 삽입 지점에서 상기 제2 데이터 필드에 의해 표시되는 카테고리를 상기 리포트 내에 자동으로 생성 및 디스플레이하는 단계,
    상기 제1 데이터 필드의 값들의 제1 세트와 관련된(implicated) 상기 제2 데이터 필드 식별자에 의해 식별된 값을 얻기 위해 상기 원격 데이터베이스 서버의 원격 데이터베이스에 자동으로 질의하는 단계- 상기 원격 데이터베이스는 상기 제1 데이터 필드의 값들의 제1 세트와 관련된 상기 제2 데이터 필드 식별자에 의해 식별된 값을 반환함 -, 및
    상기 제1 데이터 필드의 값들의 상기 제1 세트에 대해 상기 리포트 내의 상기 삽입 지점에 값들의 제2 세트의 점유를 자동으로 디스플레이하는 단계를 포함하는
    컴퓨터로 구현되는 방법.
  2. 제1항에 있어서,
    상기 리포트를 자동으로 수정하는 단계는 상기 제1 데이터 필드와 연관된 열(column)의 폭을 자동으로 변경하는 단계와 상기 제2 데이터 필드와 연관된 열의 폭을 자동으로 변경하는 단계를 더 포함하는
    컴퓨터로 구현되는 방법.
  3. 제1항에 있어서,
    상기 리포트를 자동으로 수정하는 단계는 상기 제1 데이터 필드와 연관된 행(row)의 폭을 자동으로 변경하는 단계와 상기 제2 데이터 필드와 연관된 행의 폭을 자동으로 변경하는 단계를 더 포함하는
    컴퓨터로 구현되는 방법.
  4. 제1항에 있어서,
    상기 리포트를 자동으로 수정하는 단계는 참조키(foreign key)에 의해 제한된 선택 필드를 생성하는 단계를 더 포함하는
    컴퓨터로 구현되는 방법.
  5. 제1항에 있어서,
    상기 리포트를 자동으로 수정하는 단계는 그룹핑 동작을 야기하는 단계를 더 포함하되, 상기 그룹핑 동작은 상기 값들의 제2 세트의 콘텐츠가 상기 값들의 제1 세트의 콘텐츠에 따라 그룹핑되도록 하는
    컴퓨터로 구현되는 방법.
  6. 제1항에 있어서,
    태뷸러 레이아웃 뷰(tabular layout)와 스택 레이아웃 뷰 사이에서 상기 리포트를 변경하는 선택기를 제공하는 단계를 더 포함하는
    컴퓨터로 구현되는 방법.
  7. 제1항에 있어서,
    상기 삽입 지점의 선택은 상기 제2 데이터 필드 식별자를 상기 작업 창으로부터 상기 리포트 창의 리포트로 드래그하는 단계를 포함하고, 상기 제2 데이터 필드 식별자의 드롭핑(dropping)은 상기 제2 데이터 필드에 의해 표시된 상기 리포트 내의 카테고리의 디스플레이를 자동으로 야기하고 상기 제1 데이터 필드의 값들의 제1 세트와 관련된 상기 제2 데이터 필드 식별자에 의해 식별된 값을 획득하도록 상기 원격 데이터베이스에의 질의를 자동으로 야기하며, 상기 원격 데이터베이스는 상기 제1 데이터 필드의 값들의 제1 세트와 관련된 상기 제2 데이터 필드 식별자에 의해 식별된 값들을 자동으로 반환하는
    컴퓨터로 구현되는 방법.
  8. 리포트 생성 프로세스 동안 데이터베이스 리포트를 동적으로 생성하기 위한 컴퓨터 실행가능 명령어들을 구비한 컴퓨터 판독가능 저장 매체로서,
    상기 명령어는
    리포트 생성 사용자 인터페이스를 제공하고- 상기 리포트 생성 사용자 인터페이스는 작업 창과 리포트 창을 포함하고, 상기 작업 창은 상기 리포트 창으로의 선택된 데이터베이스 필드 식별자의 삽입시 선택된 데이터베이스 필드에 따라 원격 데이터베이스 서버에 질의하도록 구성된 복수의 데이터베이스 필드 식별자를 포함하고, 상기 리포트 창은 상기 작업 창으로부터 상기 선택된 데이터베이스 필드 식별자의 삽입을 수신하는 경우 재구성되는 동적으로 수정가능한 리포트를 포함함 -,
    상기 데이터베이스 리포트의 레이아웃을 미리 구성하지 않고 상기 작업 창 및 상기 리포트 창 내의 리포트를 동시에 디스플레이하는 동안,
    상기 작업 창으로부터 데이터베이스 필드 식별자의 선택을 수신하고,
    상기 리포트 창의 리포트에서, 상기 선택된 데이터베이스 필드에 대한 삽입 지점을 수신하고,
    상기 삽입 지점의 수신에 응답하여, 상기 리포트를 자동으로 재구성하되,
    상기 리포트를 자동으로 재구성하는 것은,
    상기 삽입 지점에서 상기 선택된 데이터베이스 필드 식별자와 연관된 카테고리를 생성하는 것과,
    상기 선택된 데이터베이스 필드와 연관된 상기 원격 데이베이스 서버 내의 데이터를 획득하기 위해 상기 선택된 데이터베이스 필드 식별자로 상기 원격 데이터베이스 서버에 질의하는 것과,
    상기 생성된 카테고리와 연관된 삽입 지점에서 상기 원격 데이터베이스 서버 내의 데이터를 상기 리포트에 덧붙이는(populating) 것을 포함하는
    컴퓨터 판독가능 저장 매체.
  9. 제8항에 있어서,
    상기 리포트를 자동으로 재구성하는 것은 상기 카테고리와 연관된 열(column)의 폭을 자동으로 변경하는 것을 포함하는
    컴퓨터 판독가능 저장 매체.
  10. 제8항에 있어서,
    상기 리포트를 자동으로 재구성하는 것은 상기 카테고리와 연관된 행(row)의 폭을 자동으로 변경하는 것을 포함하는
    컴퓨터 판독가능 저장 매체.
  11. 제8항에 있어서,
    상기 리포트를 자동으로 재구성하는 것은 참조키(foreign key)에 의해 제한된 선택 필드를 생성하는 것을 더 포함하는
    컴퓨터 판독가능 저장 매체.
  12. 제8항에 있어서,
    상기 리포트를 자동으로 재구성하는 것은 그룹핑 동작을 야기하는 것을 더 포함하되, 상기 그룹핑 동작은 상기 획득된 데이터가 다른 데이터 세트의 콘텐츠에 따라 그룹핑되도록 하는
    컴퓨터 판독가능 저장 매체.
  13. 제8항에 있어서,
    태뷸러 레이아웃 뷰와 스택 레이아웃 뷰 사이에서 상기 리포트를 변경하는 선택기를 제공하는 것을 더 포함하는
    컴퓨터 판독가능 저장 매체.
  14. 제8항에 있어서,
    상기 삽입 지점의 선택은 선택된 데이터 필드를 상기 작업 창으로부터 상기 리포트 창의 리포트로 드래그하는 것을 포함하는
    컴퓨터 판독가능 저장 매체.
  15. 리포트 생성 프로세스 동안 데이터베이스 리포트를 동적으로 생성하기 위한 시스템으로서,
    프로세서와,
    컴퓨터 실행가능 명령어들이 저장된 메모리를 포함하되,
    상기 컴퓨터 실행가능 명령어는,
    작업 창 및 리포트 창을 제공하고- 상기 작업 창은 원격 데이터베이스 서버 내의 값들의 카테고리를 식별하는 복수의 데이터 필드 식별자의 디스플레이를 포함하고, 상기 원격 데이터베이스 서버는 복수의 데이터베이스 필드의 값을 유지하고, 상기 리포트 창은 제1 데이터 필드의 값들의 제1 세트의 디스플레이를 갖는 리포트의 디스플레이를 포함함 -;
    상기 데이터베이스 리포트의 레이아웃을 미리 구성하지 않고 상기 작업 창 및 상기 리포트 창 내의 리포트를 동시에 디스플레이하는 동안,
    상기 작업 창으로부터 제2 데이터 필드 식별자의 선택을 수신하고;
    상기 리포트 창의 리포트로의 삽입 지점의 선택을 수신하며;
    상기 삽입 지점의 선택에 응답하여, 상기 리포트를 자동으로 수정하도록 구성되며,
    상기 리포트를 자동으로 수정하는 것은,
    상기 삽입 지점에서 제2 데이터 필드에 의해 표시된 상기 리포트 내의 카테고리를 자동으로 생성 및 디스플레이하는 것과,
    상기 제1 데이터 필드의 값들의 제1 세트와 관련된 상기 제2 데이터 필드 식별자에 의해 식별된 값을 얻기 위해 상기 원격 데이터베이스 서버의 원격 데이터베이스에 자동으로 질의하는 것- 상기 원격 데이터베이스는 상기 제1 데이터 필드의 값들의 제1 세트와 관련된 상기 제2 데이터 필드 식별자에 의해 식별된 값을 반환함 -, 및
    상기 제1 데이터 필드의 값들의 상기 제1 세트에 대해 상기 리포트 내의 상기 삽입 지점에 값들의 제2 세트의 점유를 자동으로 디스플레이하는 것을 포함하는
    시스템.
  16. 제15항에 있어서,
    상기 리포트를 자동으로 수정하는 것은 상기 제1 데이터 필드와 연관된 열(column)의 폭을 자동으로 변경하고 상기 제2 데이터 필드와 연관된 열의 폭을 자동으로 변경하는 것을 더 포함하는
    시스템.
  17. 제15항에 있어서,
    상기 리포트를 자동으로 수정하는 것은 상기 제1 데이터 필드와 연관된 행(row)의 폭을 자동으로 변경하고 상기 제2 데이터 필드와 연관된 행의 폭을 자동으로 변경하는 것을 더 포함하는
    시스템.
  18. 제15항에 있어서,
    상기 리포트를 자동으로 수정하는 것은 참조키(foreign key)에 의해 제한된 선택 필드를 생성하는 것을 더 포함하는
    시스템.
  19. 제15항에 있어서,
    상기 리포트를 자동으로 수정하는 것은 그룹핑 동작을 야기하는 것을 더 포함하되, 상기 그룹핑 동작은 상기 값들의 제2 세트의 콘텐츠가 상기 값들의 제1 세트의 콘텐츠에 따라 그룹핑되도록 하는
    시스템.
  20. 제15항에 있어서,
    태뷸러 레이아웃 뷰와 스택 레이아웃 뷰 사이에서 상기 리포트를 변경하는 선택기를 더 포함하는
    시스템.
KR1020087005738A 2005-09-09 2006-09-08 브라우즈 모드 디자이너 KR101312848B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US71588705P 2005-09-09 2005-09-09
US60/715,887 2005-09-09
US11/344,509 US7581189B2 (en) 2005-09-09 2006-01-31 Dynamically generating a database report during a report building process
US11/344,509 2006-01-31
PCT/US2006/034801 WO2007030585A1 (en) 2005-09-09 2006-09-08 Browse mode designer

Publications (2)

Publication Number Publication Date
KR20080042885A KR20080042885A (ko) 2008-05-15
KR101312848B1 true KR101312848B1 (ko) 2013-09-30

Family

ID=37836156

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087005738A KR101312848B1 (ko) 2005-09-09 2006-09-08 브라우즈 모드 디자이너

Country Status (6)

Country Link
US (1) US7581189B2 (ko)
EP (1) EP1922645A4 (ko)
JP (1) JP2009508227A (ko)
KR (1) KR101312848B1 (ko)
CN (1) CN101263476B (ko)
WO (1) WO2007030585A1 (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8453053B2 (en) * 2009-03-06 2013-05-28 Ecava Sdn. Bhd. Rapid software report development tool with auto database handling and menu tool-bar plug-in for application report access
US8484560B2 (en) * 2009-04-24 2013-07-09 Apple Inc. Interactive sub-summaries in database applications
EP2480957B1 (en) * 2009-09-22 2017-08-09 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
US8766928B2 (en) * 2009-09-25 2014-07-01 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
US8780069B2 (en) 2009-09-25 2014-07-15 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
US8799826B2 (en) * 2009-09-25 2014-08-05 Apple Inc. Device, method, and graphical user interface for moving a calendar entry in a calendar application
US8832585B2 (en) * 2009-09-25 2014-09-09 Apple Inc. Device, method, and graphical user interface for manipulating workspace views
US8539385B2 (en) * 2010-01-26 2013-09-17 Apple Inc. Device, method, and graphical user interface for precise positioning of objects
US8539386B2 (en) * 2010-01-26 2013-09-17 Apple Inc. Device, method, and graphical user interface for selecting and moving objects
US8677268B2 (en) * 2010-01-26 2014-03-18 Apple Inc. Device, method, and graphical user interface for resizing objects
US8683363B2 (en) * 2010-01-26 2014-03-25 Apple Inc. Device, method, and graphical user interface for managing user interface content and user interface elements
US20110307771A1 (en) * 2010-06-15 2011-12-15 Lok Wai Man Method for generating financial report
US8972879B2 (en) 2010-07-30 2015-03-03 Apple Inc. Device, method, and graphical user interface for reordering the front-to-back positions of objects
US9081494B2 (en) 2010-07-30 2015-07-14 Apple Inc. Device, method, and graphical user interface for copying formatting attributes
US9098182B2 (en) 2010-07-30 2015-08-04 Apple Inc. Device, method, and graphical user interface for copying user interface objects between content regions
US9128998B2 (en) 2010-09-03 2015-09-08 Robert Lewis Jackson, JR. Presentation of data object hierarchies
US9015581B2 (en) * 2012-03-26 2015-04-21 Vistaprint Schweiz Gmbh Self-adjusting document layouts using system optimization modeling
US10191955B2 (en) 2013-03-13 2019-01-29 Microsoft Technology Licensing, Llc Detection and visualization of schema-less data
US9146994B2 (en) 2013-03-15 2015-09-29 International Business Machines Corporation Pivot facets for text mining and search
US9507838B2 (en) * 2013-05-17 2016-11-29 Oracle International Corporation Use of projector and selector component types for ETL map design
US10216814B2 (en) 2013-05-17 2019-02-26 Oracle International Corporation Supporting combination of flow based ETL and entity relationship based ETL
US9244660B2 (en) 2013-08-13 2016-01-26 Salesforce.Com, Inc. Responsive self-service website template
CA2933821C (en) 2013-12-13 2023-02-28 Perkinelmer Informatics, Inc. System and method for uploading and management of contract-research-organization data to a sponsor company's electronic laboratory notebook
US9619581B2 (en) * 2013-12-20 2017-04-11 Microsoft Technology Licensing, Llc Constructing queries for execution over multi-dimensional data structures
US9940380B2 (en) 2014-12-02 2018-04-10 International Business Machines Corporation Automatic modeling of column and pivot table layout tabular data
US10586611B2 (en) * 2016-08-25 2020-03-10 Perkinelmer Informatics, Inc. Systems and methods employing merge technology for the clinical domain
CN118096358B (zh) * 2024-04-23 2024-08-20 紫金诚征信有限公司 企业信用报告智能生成方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004503841A (ja) 2000-03-09 2004-02-05 イレクトラニク、デイタ、システィムズ、コーパレイシャン レガシコンピュータシステムからxmlデータをレポートするための方法とシステム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960011754B1 (ko) 1991-09-20 1996-08-30 주식회사 럭키 흡인력 및 겔 강도가 우수한 고흡수성 수지 제조 방법
KR970011904B1 (ko) * 1994-09-30 1997-07-18 삼성전자 주식회사 임의 질의 생성 및 처리장치와 그 방법
JP3272281B2 (ja) * 1997-10-20 2002-04-08 インターナショナル・ビジネス・マシーンズ・コーポレーション データアイテム表示方法及び表示装置、データアイテムの表示を制御するプログラムを格納した記憶媒体
US6298342B1 (en) * 1998-03-16 2001-10-02 Microsoft Corporation Electronic database operations for perspective transformations on relational tables using pivot and unpivot columns
TW497051B (en) 1998-12-01 2002-08-01 Ibm Database having table for storing queries
KR20020041033A (ko) 2000-11-25 2002-06-01 김지한, 김재형 다중 데이터 상호처리 및 가공 시스템
KR20020063967A (ko) 2001-01-31 2002-08-07 삼성전자 주식회사 질의어 윈도우 시스템
US20070061742A1 (en) * 2005-08-26 2007-03-15 Brooks Geoffrey S Method, system, and program product for graphical authoring

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004503841A (ja) 2000-03-09 2004-02-05 イレクトラニク、デイタ、システィムズ、コーパレイシャン レガシコンピュータシステムからxmlデータをレポートするための方法とシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Access Tutorial 6: Form Fundamentals", http://fisher.osu.edu/~muhanna_1/837/MSAccess/tutorials/forms.pdf (2001.06.14. 공개) *

Also Published As

Publication number Publication date
JP2009508227A (ja) 2009-02-26
KR20080042885A (ko) 2008-05-15
EP1922645A1 (en) 2008-05-21
CN101263476A (zh) 2008-09-10
US7581189B2 (en) 2009-08-25
WO2007030585A1 (en) 2007-03-15
EP1922645A4 (en) 2012-01-11
CN101263476B (zh) 2012-05-16
US20070067711A1 (en) 2007-03-22

Similar Documents

Publication Publication Date Title
KR101312848B1 (ko) 브라우즈 모드 디자이너
US8073836B2 (en) System for viewing databases
US7734619B2 (en) Method of presenting lineage diagrams representing query plans
JP4870422B2 (ja) データベースと対話するための方法およびコンピュータシステム
JP6018045B2 (ja) 選択したデータの一時的な書式設定とグラフ化
US8386919B2 (en) System for displaying an annotated programming file
US20060161533A1 (en) Data source task pane
US20130205236A1 (en) Web application for debate maps
KR20060050040A (ko) 레포팅 소프트웨어의 주문형 그래픽 표현을 지원하는시스템 및 방법
US20070250295A1 (en) Multidimensional modeling system and related method
US20120278306A1 (en) Retrieving data objects
CN104239073A (zh) 一种数据维护系统快速原型开发系统及方法
JP2007265031A (ja) 辞書コンテンツ処理装置、コンテンツ表示システムおよびコンテンツ表示方法
US11762531B2 (en) Stateful widget container management for interactive designs
US20050086201A1 (en) Converting user interface panels
CN116627418B (zh) 一种基于递归算法的多级表单界面可视化生成方法及装置
CN114254602A (zh) 用于自定义表单的设计系统和存储介质
US9082104B2 (en) Method and apparatus for managing system specifications
US10896161B2 (en) Integrated computing environment for managing and presenting design iterations
US20100299669A1 (en) Generation of a Comparison Task List of Task Items
JP2002215692A (ja) 情報処理装置及び方法
JP2009110283A (ja) 関連付情報管理装置、関連付情報管理方法、及び、関連付情報管理プログラム
JP4180099B2 (ja) シーケンス解析プログラムを記録した記録媒体、シーケンス解析装置およびシーケンス解析方法
Shou et al. Arachnid: generalized visual data cleaning
CN114594936A (zh) 页面的设计方法、装置、存储介质及计算机设备

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: 20160818

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170818

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180903

Year of fee payment: 6