KR102050116B1 - 웹 가젯과 스프레드시트 간의 상호 작용 기법 - Google Patents

웹 가젯과 스프레드시트 간의 상호 작용 기법 Download PDF

Info

Publication number
KR102050116B1
KR102050116B1 KR1020147012059A KR20147012059A KR102050116B1 KR 102050116 B1 KR102050116 B1 KR 102050116B1 KR 1020147012059 A KR1020147012059 A KR 1020147012059A KR 20147012059 A KR20147012059 A KR 20147012059A KR 102050116 B1 KR102050116 B1 KR 102050116B1
Authority
KR
South Korea
Prior art keywords
spreadsheet
gadget
gadgets
range
cells
Prior art date
Application number
KR1020147012059A
Other languages
English (en)
Other versions
KR20140094529A (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 KR20140094529A publication Critical patent/KR20140094529A/ko
Application granted granted Critical
Publication of KR102050116B1 publication Critical patent/KR102050116B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • 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/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
    • 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/177Editing, e.g. inserting or deleting of tables; using ruled lines

Abstract

가젯(gadget)은 스프레드시트 및 이 스프레드시트의 계산 엔진에 통합된다. 가젯은 시트 내의 (하나 이상의) 셀 범위에 결합된다. 결합된 범위 중의 하나 이상의 셀에 액세스(예컨대, 선택, 호버링, 편집, 삭제, 추가)하게 되면, 가젯이 이를 통지받게 된다. 가젯은 이 정보를 이용하여 가젯이 렌더링하는 디스플레이의 갱신 및/또는 일부 다른 동작을 수행할 수 있다. 가젯은 애플리케이션 프로그래밍 인터페이스(API)를 사용하여 상술한 결합과, 스프레드시트와의 통신, 및 스프레드시트 내의 동작을 수행한다. 가젯은 스프레드시트 내의 명명된 항목 객체이며, 따라서 가젯은 다른 객체로부터 다르게 보여지거나/디스플레이될 수 있다. 가젯으로부터의 유효 기간이 경과한 요청이 검출되도록 시도되어지며 또한 처리되지 않도록 금지되기 때문에 이 가젯은 최신 데이터 상에서 동작하지 않는다.

Description

웹 가젯과 스프레드시트 간의 상호 작용 기법{INTERACTION BETWEEN WEB GADGETS AND SPREADSHEETS}
본 발명은 스프레드시트에 관한 것으로, 특히 웹 가젯과 스프레드시트 간의 상호 작용에 관한 것이다.
스프레드시트(spreadsheet)는 정보의 분석, 관리, 및 공유와 같은 다양한 서로 다른 목적으로 사용되고 있다. 예를 들면, 사용자는 중요한 데이터의 추세(trend)를 추적하고 이를 하이라이트(highlight)하는 것을 돕는 시각화 툴을 구성할 수 있다. 다양한 개인 및 기업이 스프레드시트 애플리케이션에 맞춤 기능(custom functionality)을 추가하고자 시도하고 있으나 이들 추가 기능을 프로그램하는 것은 어렵고 또한 스프레드시트 애플리케이션에 의해서 노출되는 기능만으로 제한되어 버릴 수 있었다.
본 발명의 내용 항목은 이하의 발명을 실시하기 위한 구체적인 내용 항목에서 더욱 상세하게 설명될 개념을 선택하여 단순화된 형식으로 소개하기 위해 제공된다. 본 발명의 내용 항목은 특허청구범위에 기재된 발명의 대상의 주요 특징 또는 핵심 특징을 밝히고자 의도된 것이 아니며, 특허청구범위의 발명의 대상의 범위를 결정함에 있어서 도움을 주기 위한 것으로 사용되도록 의도된 것도 아니다.
가젯(gadget)은 스프레드시트 및 이 스프레드시트의 계산 엔진과 통합된다. 가젯은 시트 내의 (하나 이상의) 셀 범위 및/또는 객체와 결합될 수 있다. 설명을 위한 목적으로서, "셀 범위에 결합"이라는 용어는 스프레드시트 내의 셀 및 객체의 적어도 하나와 결합되는 것을 포함하고 있다. 결합된 범위의 하나 이상의 셀에 액세스(예컨대, 선택, 호버링, 편집, 삭제, 추가)하면, 가젯은 애플리케이션 프로그래밍 인터페이스(API, application programming interface) 또는 기타 시스템으로부터 이를 통지받을 수 있다. 가젯은 이 정보를 이용하여 가젯이 렌더링하는 디스플레이의 갱신 및/또는 일부 다른 동작을 수행할 수 있다. 가젯은 스프레드시트로부터 획득된 데이터를 렌더링할 수 있고, 한편으로는 스프레드시트 애플리케이션은 이 가젯을 보려는 임의의 비인가된 사용자에게 스프레드시트 자체 내의 계산의 상세 내역 및 백엔드 로직을 보호할 수 있다. 가젯은 애플리케이션 프로그래밍 인터페이스(API)를 사용하여 상술한 결합과, 스프레드시트와의 통신, 및 스프레드시트 내의 동작을 수행한다. 가젯은 스프레드시트 내의 명명된 항목(Named Item) 객체일 수 있으며, 따라서 가젯은 다른 객체와는 다르게 (예컨대, 선택되어 리포트, 대시 보드 ... 등에서 공개되어) 보여지거나 디스플레이될 수 있다. 일부 실시예의 가젯은 유효 기간이 경과한 요청을 검출하고 또한 이와 같은 요청을 금지하도록 시도하며, 따라서 가젯 또는 스프레드시트 애플리케이션이 최신의 데이터에 대해서는 동작하지 않도록 할 수 있다.
도 1은 예시적인 컴퓨팅 장치를 나타내고 있는 도면이다.
도 2는 가젯을 스프레트시트 및 스프레드시트 계산 엔진에 통합된 예시적인 시스템을 나타내고 있는 도면이다.
도 3은 가젯 및 스프레드시트의 예시적인 디스플레이를 나타내고 있는 도면이다.
도 4는 가젯을 포함하는 복수의 객체 소스에 걸쳐서 명명된 객체 뷰 리포트의 생성을 도시하는 기능 블록 다이아그램이다.
도 5는 가젯을 스프레드시트에 결합하기 위한 프로세스를 도시하고 있다.
도 6은 스프레드시트와 상호 작용하는 가젯에 대한 프로세스를 나타내는 도면이다.
이제 동일한 도면 부호가 동일한 구성 요소를 나타내는 도면을 참조하여 다양한 실시예에 대해서 설명하기로 한다. 특히, 도 1 및 이에 대응하는 설명은 각 실시예가 구현될 수 있는 적절한 계산 환경에 대한 간략하고, 일반적인 설명을 제공하고자 의도되었다.
일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 컴포넌트, 자료 구조, 및 기타 유형의 구조를 포함한다. 소지형 장치, 멀티프로세서 시스템, 마이크로 프로세서 기반 또는 프로그램 가능 소비자 가전, 미니 컴퓨터, 메인 프레임 컴퓨터 등을 포함하여, 다른 컴퓨터 시스템의 구성 또한 사용 가능하다. 또한 분산 컴퓨팅 환경은 통신 네트워크를 통해서 링크된 원격 처리 장치가 태스크를 수행하는 곳에서도 사용될 수 있다. 분산 컴퓨팅 환경에 있어서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치 모두에 위치하고 있을 수 있다.
도 1을 참조하면, 다양한 실시예에서 유용한 컴퓨터(100)에 대한 예시적인 컴퓨터 아키텍처가 도시되어 있다. 도 1에 나타낸 컴퓨터 아키텍처는 모바일 컴퓨팅 장치(예컨대, 스마트 폰, 노트북, 태블릿, ... 등) 또는 데스크톱 컴퓨터로서 구성될 수 있고, 또한 중앙 처리 장치(5)("CPU"), 랜덤 액세스 메모리(9)("RAM") 및 리드 온리 메모리("ROM")(10)를 포함하는 시스템 메모리(7), 및 메모리를 중앙 처리 장치("CPU")(5)에 접속시키는 시스템 버스(12)를 포함하고 있다.
시동(startup) 중에서와 같이 컴퓨터 내의 각 구성 요소 사이에서의 정보 전달을 용이하게 하는 기본 루틴을 포함하는 기본 입/출력 시스템은 ROM(10) 내에 저장되어 있다. 컴퓨터(100)는 운영 체제(16), 표 형식의 데이터로 작업하는 스프레드시트 애플리케이션 및/또는 기타 애플리케이션과 같은 애플리케이션 프로그램(24), 웹 브라우저(25), (예컨대, 스프레드시트와 같은) 파일(27), 및 가젯 관리자(26)를 더 포함하고 있으며, 이들에 대해서는 이하에서 더욱 상세하게 설명하기로 한다. 웹 브라우저(25)는 요청, 수신, 렌더링에 사용되고, 또한 웹 페이지, 비디오, 문서 등을 상호 작용적으로 제공한다. 일 실시예에 따르면, 웹 브라우저는 마이크로소프트 코포레이션(MICROSOFT CORPORATION)의 인터넷 익스플로러(INTERNET EXPLORER) 웹 브라우저 애플리케이션 프로그램을 포함한다.
대용량 저장 장치(14)는 버스(12)에 접속된 대용량 저장 장치 컨트롤러(미도시)를 통해서 CPU(5)에 접속된다. 대용량 저장 장치(14) 및 이와 연관된 컴퓨터 판독 가능 매체는 컴퓨터(100)용의 비휘발성 저장 장치를 제공한다. 본 명세서에 포함된 컴퓨터 판독 가능 매체에 대한 설명이, 하드 디스크 또는 CD-ROM 드라이브와 같은 대용량 저장 장치에 대해서 언급하고 있지만, 컴퓨터 판독 가능 매체는 컴퓨터(100)에 의해서 액세스될 수 있는 임의의 사용 가능한 매체일 수 있다.
예시적인 것으로, 컴퓨터 판독 가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있으나, 이에 한정되지는 않는다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장하기 위한 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 탈착식 및 비탈착식 매체를 포함하고 있다. 컴퓨터 저장 매체는 RAM, ROM, 삭제 가능한 프로그래머블 리드 온리 메모리(EPROM, Erasable Programmable Read Only Memory), 전기적으로 삭제 가능한 프로그래머블 리드 온리 메모리(EEPROM, Electrically Erasable Programmable Read Only Memory), 플래시 메모리 또는 기타 솔리드 스테이트 메모리 기술, CD-ROM, 디지털 다용도 디스크(DVD, digital versatile disk), 또는 기타 광학 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 소정의 정보를 저장하는데 사용될 수 있고 또한 컴퓨터(100)에 의해서 액세스될 수 있는 임의의 다른 매체를 포함하고 있다.
다양한 실시예에 따르면, 컴퓨터(100)는 인터넷과 같은 네트워크(18)를 통한 원격 컴퓨터로의 논리적 접속을 사용하는 네트워크 환경에서 동작할 수 있다. 컴퓨터(100)는 버스(12)에 접속된 네트워크 인터페이스 장치(20)를 통해서 네트워크(18)에 접속될 수 있다. 네트워크 접속은 무선 및/또는 유선일 수 있다. 네트워크 인터페이스 장치(20)는 또한 다른 유형의 네트워크 및 원격 컴퓨터 시스템에 접속하도록 이용될 수 있다. 컴퓨터(100)는 또한 터치 입력 장치(28)를 포함하는 다수의 기타 장치로부터의 입력을 수신하고 또한 처리하기 위한 입/출력 컨트롤러(22)를 포함하고 있을 수 있다. 터치 입력 장치는 단일/멀티 터치 입력이 인식(터치/비터치)되기만 한다면 어떠한 기술이라도 사용할 수 있다. 예를 들면, 이들 기술에는, 열, 손가락의 압력, 고속 캡쳐 카메라, 적외선 광, 광학 캡쳐, 동조 전자기 유도, 초음파 수신기, 트랜스듀서 마이크로 폰, 레이저 거리 측정기, 쉐도우 캡쳐 등의 기술이 포함될 수 있지만, 이에 한정되지는 않는다. 일 실시예에 따르면, 터치 입력 장치는 (예컨대, 터치 입력 장치의 일정한 거리 내이지만 터치 입력 장치를 물리적으로 터치하지는 않는) 근접한 터치를 검출하도록 구성될 수 있다. 터치 입력 장치(28)는 또한 디스플레이로서 동작할 수 있다. 입/출력 컨트롤러(22)는 또한 하나 이상의 디스플레이 스크린, 프린터, 또는 기타 유형의 출력 장치로 출력을 제공할 수 있다.
카메라 및/또는 일부 다른 검지 장치는 하나 이상의 사용자의 기록 및 컴퓨팅 장치의 사용자에 의해서 행해지는 동작 및/또는 제스처를 캡쳐하는데 사용될 수 있다. 검지 장치는 또한 구술되는 단어를, 예를 들어 마이크로 폰과 같은 것에 의해서 캡쳐할 수 있으며, 및/또는 키보드 및/또는 마우스(미도시)와 같은 것에 의해서 사용자로부터의 기타 입력을 캡쳐할 수도 있다. 검지 장치는 사용자의 이동을 검출할 수 있는 임의의 운동 검출 장치를 포함할 수 있다. 예를 들면, 카메라는 복수의 카메라 및 복수의 마이크로 폰을 포함하는 마이크로소프트 키넥트® 동작 캡쳐 장치를 포함할 수 있다.
본 발명의 각 실시예는 각 도면에서 도시된 컴포넌트/프로세스의 각각 또는 다수가 단일 집적 회로 상에 통합될 수 있는 단일 칩 시스템(SOC, system-on-a-chip)을 통해서 실시될 수 있다. 그와 같은 SOC 장치는 하나 이상의 프로세싱 장치, 그래픽 장치, 통신 장치, 시스템 가상화 장치 및 다양한 애플리케이션 기능을 포함하고 있을 수 있으며, 이들은 모두 단일 집적 회로로서 칩 기판 상에 통합될 (또는 "구워질") 수 있다. SOC를 통해서 동작하는 경우, 본 명세서에서 설명되는 기능의 전부/일부는 단일 집적 회로(칩) 상의 컴퓨팅 장치/시스템(100)의 다른 컴포넌트와 통합되어질 수 있다.
간략하게 상술한 바와 같이, 다수의 프로그램 모듈 및 데이터 파일은, 미국 워싱턴주 레드몬드에 소재하는 마이크로소프트 코포레이션(MICROSOFT CORPORATION)의 윈도우 7(WINDOWS 7®)과 같은 네트워크화된 개인 컴퓨터의 조작을 제어하기에 적합한 운영 체제(16)를 포함하여, 컴퓨터(100)의 대용량 저장 장치(12) 및 RAM(9)에 저장될 수 있다. 일 실시예에 따르면, 운영 체제는 터치 입력 장치(23)에 대한 지원을 포함하도록 구성되어진다. 다른 실시예에 따르면, 가젯 관리자(26)는 터치 입력 장치(28)로부터 수신되는 터치 입력의 일부/전부를 처리하도록 이용될 수 있다.
대용량 저장 장치(14) 및 RAM(9)은 또한 하나 이상의 프로그램 모듈을 저장할 수 있다. 특히, 대용량 저장 장치(14) 및 RAM(9)은, 예를 들어 스프레드시트 애플리케이션과 같은 하나 이상의 애플리케이션 프로그램(24)을 저장할 수 있다. 일 실시예에 따르면, 스프레드시트 애플리케이션은 마이크로소프트 엑셀(MICROSOFT EXCEL)이다. 애플리케이션의 조작과 연동하여, 가젯 관리자(26)를 사용하면 하나 이상의 가젯과 스프레드시트가 통합된다. 가젯 관리자(26)는 애플리케이션/프로세서로서 및/또는 리소스(예컨대, 서비스, 데이터, ... 등)를 서로 다른 테넌트(예컨대, 마이크로소프트 오피스 365(MICROSOFT OFFICE 365), 마이크로소프트 쉐어포인트 온라인(MICROSOFT SHAREPOINT ONLINE) 등)로 제공하는 클라우드 기반의 멀티 테넌트 서비스의 일부로서 구성될 수 있다.
일반적으로, 가젯 관리자(26)는 입력 및 가젯과 스프레드시트를 포함하고 있는 콜을 처리하도록 구성된다. 가젯은 다른 서버(예컨대, 19)에 의해서 호스트되고 또한 스프레드시트 애플리케이션과 관련된 표준 웹 기술(예컨대, XML, HTML, FLASH, JAVASCRIPT, ... 등)을 사용하는 당사자 및/또는 제 3 자 웹 확장 프로그램일 수 있다. 일부 가젯은 시트의 콘텐트와 통합되어 있을 수 있고, 반면 기타 가젯은 시트로부터 분리되어 있을 수 있다. 가젯은 스프레드시트와 함께 온라인 및/또는 오프라인에서 사용될 수 있고, 또한 링크를 통해서 액세스될 수 있다. 가젯은 시트 내의 (하나 이상의) 셀 범위에 결합된다. 결합된 범위 중의 하나 이상의 셀에 액세스(예컨대, 선택, 호버링, 편집, 삭제, 추가)하게 되면, 가젯이 이를 통지받게 된다. 가젯은 이 정보를 이용하여 가젯이 렌더링하는 디스플레이의 갱신 및/또는 일부 다른 동작을 수행할 수 있다. 가젯은 스프레드시트로부터 획득된 데이터를 렌더링할 수 있고, 한편으로는 스프레드시트 애플리케이션은 이 가젯을 보려는 임의의 비인가된 사용자에게 스프레드시트 자체 내의 계산의 상세 내역 및 백엔드 로직을 보호할 수 있다. 가젯은 애플리케이션 프로그래밍 인터페이스(API, Application Programming Interface)(29)를 사용하여 스프레드시트와 통신한다. API(29)는 가젯을 스프레드시트에 결합시키고, 스프레드시트로부터 콘텐트 획득/스프레드시트로 콘텐트를 투입하고, 스프레드시트의 디스플레이를 변경시키고, 스프레드시트의 사용자 인터페이스의 디스플레이를 요청하는 등의 기능을 포함하고 있다. 일 실시예에 따르면, 가젯은 스프레드시트 내의 명명된 항목 객체이며, 따라서 이 가젯은 다른 객체와는 다르게 (예컨대, 선택되어 리포트, 대시 보드, ... 등에서 전자적으로 디스플레이/공개되어) 보여지거나/디스플레이될 수 있다. 가젯으로부터의 유효 기간이 경과한 요청이 검출되도록 시도되며 또한 처리되지 않도록 금지되기 때문에 이 가젯은 최신 데이터 상에서 동작하지 않는다. 가젯 관리자(26)의 조작과 관련하여 추가적으로 상세 내용에 대해서 이하에서 제공하기로 한다.
도 2는 가젯을 스프레드시트 및 스프레드시트 계산 엔진에 통합시킨 예시적인 시스템을 나타내고 있다. 도시된 바와 같이, 시스템(200)은 애플리케이션 프로그램(24), 서비스(210), 가젯 관리자(26), 데이터 저장 장치(240), 가젯 사이트(260), 및 입력 장치/디스플레이(202)를 포함하고 있다. 일 실시예에 따르면, 디스플레이(202)는 터치 스크린 장치이다.
일 실시예에 따르면, 애플리케이션 프로그램(24)은 터치 감지식 입력 장치(202)로부터의 입력을 수신하도록 구성된 스프레드시트 애플리케이션이다. 예를 들면, 가젯 관리자(26)는 사용자의 손가락(예컨대, 손(256)의 손가락)에 반응하여 메뉴 옵션의 선택, 가젯 컴포넌트(예컨대, 인터액티브 바 차트 내의 바를 선택하기), 스프레드시트의 하나 이상의 셀의 선택(예컨대, 스프레드시트(250)), 스프레드시트 내의 하나의 열/행의 선택(예컨대, 선택(252)) 등에 대한 정보를 애플리케이션(24) 및/또는 서비스(210)로 제공할 수 있다.
도시되어 있는 바와 같이, 서비스(210)는 클라우드 기반 및/또는 엔터프라이즈 기반의 서비스이며, 이는 하나 이상의 생산성 향상 애플리케이션(예컨대, 마이크로소프트 엑셀(MICROSOFT EXCEL), 마이크로소프트 쉐어포인트(MICROSOFT SHAREPOINT))과 관련된 서비스를 제공하도록 구성되어 있다. 서비스(210)는 또한 클라이언트 기반의 애플리케이션으로서 구성될 수 있다. 시스템(200)이 생산성 향상 서비스 및/또는 콘텐트 매니지먼트 서비스를 나타내고 있지만, 기타 서비스/애플리케이션을 구성하여 표 형식의 데이터를 분할하도록 할 수도 있다. 애플리케이션 프로그램(24)의 기능은 서비스(210) 내에 포함되어 있을 수 있다.
도시되어 있는 바와 같이, 서비스(210)는 리소스(215) 및 서비스를 임의의 숫자의 테넌트(예컨대, 테넌트 1-N)로 제공하는 멀티 테넌트 서비스이다. 일 실시예에 따르면, 멀티 테넌트 서비스(210)는 서비스에 가입한 테넌트에게 리소스/서비스(215)를 제공하고 또한 각각의 테넌트의 데이터가 다른 테넌트의 데이터로부터 분리 및 보호되도록 유지되는 클라우드 기반의 서비스이다. 예를 들면, 서비스(210)는 생산성 향상 애플리케이션(예컨대, 스프레드시트, 콘텐트 매니지먼트, 워드 프로세싱, 프리젠테이션, 메시징, ...) 등에 대응하는 서비스를 제공하도록 구성될 수 있다.
도시되어 있는 바와 같이, 터치 입력 시스템(200)은 터치 입력(예컨대, 손가락으로 터치 스크린을 접촉 또는 터치 스크린에 거의 접촉함)이 수신되면 검출하는 터치 스크린 입력 장치(202)를 포함하고 있다. 사용자의 터치 입력을 검출하는 임의 유형의 터치 스크린을 이용할 수 있다. 예를 들면, 터치 스크린은 터치 입력을 검출하는 정전식 소재로 이루어진 하나 이상의 층을 포함하고 있을 수 있다. 정전식 소재에 추가하여 또는 이를 대신하여 기타 센서가 사용될 수 있다. 예를 들면, 적외선(IR) 센서가 사용될 수 있다. 일 실시예에 따르면, 터치 스크린은 터치 가능한 표면과 접촉하여 또는 위에서 물체를 검출하도록 구성된다. 이 설명에서는 "위에서"라는 단어를 사용하였지만, 터치 패널 시스템의 방향과는 무관함을 이해하여야 한다. "위에서"라는 단어는 모든 그와 같은 방향에 적용 가능하다는 것을 의도하고 있다. 터치 스크린은 터치 입력이 수신되는 곳의 위치(예컨대, 시작점, 중간점, 및 종료점)를 결정하도록 구성되어질 수 있다. 터치 가능한 표면과 물체의 실제 접촉은 임의의 적절한 수단, 예를 들면, 터치 패널에 접속된 진동 센서 또는 마이크로 폰에 의한 것을 포함하는 수단에 의해서 검출될 수 있다. 접촉을 검지하기 위한 센서에 대한 예의 비포괄적인 목록은 압력 기반 메커니즘, 미세 가공 가속도계, 압전 장치, 정전 센서, 저항 센서, 유도 센서, 레이저 진동 측정기, 및 LED 진동 측정기를 포함하고 있다.
가젯 관리자(26)는 터치 스크린(202)으로부터의 수신된 터치 입력을 처리하도록 구성되어 있다. 예를 들면, 사용자는 스프레드시트(250) 내의 하나 이상의 셀을 선택(예컨대, 선택(252))하여 가젯(예컨대, 가젯(254))과 결합시킬 수 있다. 현재의 실시예에 있어서, 사용자가 셀(252)을 선택하면 셀 범위가 식별되어 가젯(254)과 결합된다.
가젯은 웹 상의 다른 콘텐트와 마찬가지로 동일한 방식으로 구성될 수 있는 웹 콘텐트를 포함하고 있다. 일반적으로, 가젯은 순식간에 정보를 디스플레이하고 또한 빈번하게 사용되는 툴로의 용이한 액세스를 제공하도록 구성된다. 예를 들면, 가젯(254)은 스프레드시트로부터의 (예컨대, 셀(252)로부터의) 데이터를 획득할 수 있을 뿐만 아니라 스프레드시트 내에 데이터를 위치시킬 수도 있는 인터액티브 바 차트를 디스플레이하도록 생성될 수 있다. 예를 들면, 사용자는 바 차트의 바를 선택하고 이 바를 드래그하여 새로운 값을 줄 수 있다. 도시된 실시예에 있어서, 사용자는 위치(A4)에서의 셀 값에 대응하는 가장 오른쪽의 바를 선택하였다. 사용자가 바를 조정한 이후에는, A4에서의 값은 가젯의 의해서 스프레드시트에 갱신된다(예컨대, 현재의 값은 가젯에 의해서 결정되는 바와 같이 5이다). 가젯은 스프레드시트로부터 획득되는 콘텐트를 나타내는 것 뿐만 아니라, 가젯은 스프레드시트의 디스플레이가 변경되도록 할 수도 있다. 현재의 실시예에 있어서, 가젯(254)이 표시되면, 이 가젯과 관련된 각 셀은 다른 셀로부터 (예컨대, 관련된 셀 주위의 경계선, 하이라이트된 셀, 셀 서식의 변경 등에 의해서) 구별되어진다.
가젯은 대부분의 임의의 바람직한 조작을 수행하도록 구성되어질 수 있다. 예를 들면, 가젯은 주식 시세를 디스플레이하고, 뉴스 헤드라인을 갱신하고, 슬라이드 쇼를 디스플레이하고, 스프레드시트의 데이터와 (예컨대, 값을 설정/값을 획득하는 등) 상호 작용하도록 구성될 수 있다.
가젯은 서로 다른 프로그래밍 기술을 사용하여 구축될 수 있으며, 서로 다른 프로그래밍 기술에는 XML, HTML, JavaScript, ADOBE FLASH 등과 같은 기술이 있을 수 있다. 가젯은 네트워크 사이트(예컨대, 가젯 웹 사이트(260)), 로컬 머신에서 동작할 수 있고, 및/또는 스프레드시트 내에 포함되어 있을 수도 있다. 이 사이트는 제 3 자에 의해서 호스트되거나 및/또는 서비스(210)에 의해서 호스트될 수 있다. 가젯은 스프레드시트와 함께 온라인 및/또는 오프라인에서 사용될 수 있고, 또한 링크를 통해서 액세스될 수 있다.
가젯은 스프레드시트 및 스프레드시트 계산 엔진(222)과 통합된다. 일부 가젯은 시트의 콘텐트와 통합되어 있을 수 있고, 반면 기타 가젯은 시트로부터 분리되어 있을 수 있다. 상술한 바와 같이, 가젯은 시트 내의 (하나 이상의) 셀 범위에 결합될 수 있다.
결합된 범위 중의 하나 이상의 셀이 상호 작용(예컨대, 선택, 호버링, 편집, 삭제, 추가)하게 되면, 가젯이 이를 통지받게 된다. 가젯은 이 정보를 이용하여 가젯이 렌더링하는 디스플레이의 갱신 및/또는 일부 다른 동작을 수행할 수 있다.
가젯은 애플리케이션 프로그래밍 인터페이스(API, Application Programming Interface)(230)를 사용하여 스프레드시트와 통신한다. API(230)는 가젯을 스프레드시트에 결합시키고, 스프레드시트로부터 콘텐트 획득/스프레드시트로 콘텐트를 투입하고, 스프레드시트의 디스플레이를 변경시키고, 스프레드시트의 사용자 인터페이스의 디스플레이를 요청하는 등의 기능을 포함하고 있다.
가젯은 스프레드시트의 다른 객체(표, 차트, 범위, ... 등)와 마찬가지로 스프레드시트의 객체로 취급된다. 일 실시예에 따르면, 가젯은 또한 스프레드시트 내의 명명된 항목(Named Item) 객체일 수 있으며, 따라서 가젯은 다른 객체와는 다르게 (예컨대, 선택되어 리포트, 대시 보드, ... 등에서 공개되어) 보여지거나/디스플레이될 수 있다. (도 4 및 관련된 설명 참조).
가젯은 스프레드시트와 비동기적으로 통신하도록 구성되어진다. 이와 같기 때문에, 가젯으로부터 스프레드시트로의 콜은 유효 기간이 경과하여 있을 수 있다(예컨대, 이 콜에서 언급된 데이터가 현재의 데이터가 아닐 수 있다). 유효 기간이 경과된 콜이 수신되는 경우에, 가젯은 이를 통지받게 되고, 콜은 처리되지 않고 따라서 무시될 수 있는 데이터에 대해서 가젯이 동작하지 않는다.
데이터 저장 장치(240)는 하나 이상의 가젯과 관련되어질 수 있는 스프레드시트를 저장할 수 있다. 사용자는 스프레드시트 애플리케이션 및/또는 일부 다른 애플리케이션과 관련된 사용자 인터페이스로부터 파일/워크북(workbook)을 열 수 있다.
가젯은 사용자의 액세스 허가에 따라서 다르게 데이터를 디스플레이할 수 있다. 예를 들면, 스프레드시트가 스프레드시트 내의 데이터에 액세스하는 것을 제한할 수 있고 및/또는 가젯이 제한을 규정할 수도 있다. 예를 들면, 사용자가 액세스할 필요가 없는 뷰는 가젯 내에 나타나지 않지만, 사용자가 액세스해야 하는 뷰는 가젯 내에 디스플레이된다. 가젯은 스프레드시트로부터 획득된 데이터를 렌더링할 수 있고, 한편으로는 스프레드시트 애플리케이션은 이 가젯을 보려는 임의의 비인가된 사용자에게 스프레드시트 자체 내의 계산의 상세 내역 및 백엔드 로직을 보호할 수 있다.
도 3은 가젯 및 스프레드시트의 예시적인 디스플레이를 나타내고 있는 도면이다.
도시되어 있는 바와 같이, 디스플레이(310)는 두 개의 가젯, 가젯(254) 및 가젯(318)과 관련되어 있는 스프레드시트를 나타내고 있다. 가젯(254)은 도 2에서 설명한 바와 같은 가젯이고, 또한 선택된 범위(252)에 결합되어 있다.
가젯(318)은 사용자가 값을 디스플레이할 수 있도록 및 스프레드시트 내로 값을 입력할 수 있도록 허용하는 가젯이다. 예를 들면, 가젯(318)은 입력 박스를 보여주고 스프레드시트 내에 위치하게 될 수 있는 값을 입력하도록 한다. 현재의 실시예에 있어서, 사용자가 먼저 값 1, 2, 3, 및 4를 입력하고 사용자가 저장 옵션을 선택한 이후에 결합된 위치(316)에 입력되도록 한다. 현재의 실시예에 있어서, 가젯은 API를 사용하여 입력 박스 중의 현재의 선택에 반응하여 스프레드시트의 뷰(view)를 조절(예컨대, 사용자가 입력 박스에 값 2를 입력하여 대응하는 셀 위치가 하이라이트되도록)한다. 사용자는 또한 스프레드시트 내의 값을 변경하여 가젯이 이 값을 다시 디스플레이하고 또한 갱신하도록 할 수도 있다. 달리 말하자면, 가젯에 가해진 변경은 스프레드시트 내에 나타내어질 수 있고 또한 스프레드시트에 가해진 변경은 가젯 내에 나타내어질 수 있다.
디스플레이(320)는 스프레드시트(322)와 함께 이 스프레드시트의 디스플레이에 근접한 사용자 지정 작업 창 내에 디스플레이된 가젯(324)을 나타내고 있다. 현재의 실시예에 있어서, 가젯(324)은 스프레드시트의 외부로부터 획득된 콘텐트를 검색하고 또한 이 검색으로부터의 결과를 스프레드시트 내에 제공, 디스플레이, 및 저장하도록 구성된다. 예를 들면, 가젯(324)은 하나 이상의 검색 서비스를 사용하여 하나 이상의 위치로부터의 소스에 대해서 검색할 수 있다. 사용자는 하나 이상의 반환된 결과를 스프레드시트(322) 내에 저장하도록 결정할 수 있다. 사용자가 결과 저장 버튼을 선택하여 결과를 저장하도록 선택하는 것에 반응하여, 스프레드시트는 사용자 인터페이스 선택 방법을 디스플레이하거나 및/또는 사용자가 스프레드시트 내의 어느 곳에 이 결과를 저장하도록 할 것인지를 선택하도록 허용하는 터치 모드 내에 사용자를 위치시킬 수 있다. 예를 들면, API 콜이 어떤 위치를 선택하도록 터치 입력을 허용하는 것에 반응하여, 사용자는 콘텐트를 저장하도록 하는 위치로서 열 1을 선택한다. 이 선택에 따라서, 스프레드시트는 위치를 가젯(324)으로 반환하며, 따라서 가젯은 소정의 위치 내에 이 결과를 위치시킬 수 있다.
도 4는 가젯을 포함하는 복수의 객체 소스에 걸쳐서 명명된 객체 뷰 리포트의 생성을 도시하는 기능 블록 다이아그램이다. 리포트의 명명된 객체 뷰는 서로 다른 전자적인 객체 소스로부터 생성될 수 있다. 다이아그램에서 나타낸 바와 같이, 전자적인 데이터 객체 소스는, 예를 들면, 워크북(400)과 같은 워크북, 가젯(401), 및 데이터 소스(403)로부터 획득된다. 그러나, 전자적인 객체 소스는 객체와 관련되어 있을 수 있는 임의의 파일/데이터 소스일 수도 있다. 예를 들면, 공통 데이터 소스로서의 웹 페이지로부터 생성되는 하나 이상의 객체는 명명된 객체 뷰 내에 디스플레이될 수 있다. 객체가 획득되고 또한 리포트 내에 디스플레이되는 경우 객체는 객체 소스 내에 저장될 수도 있고 저장되지 않을 수도 있다. 예를 들면, 객체는 전자 파일 내에 아직 저장되지 않았지만 컴퓨팅 장치의 메모리 내에는 저장되어 있는 신규하게 생성된 객체일 수 있다.
워크북은 서로 다른 시트 상에 복수의 객체를 포함하고 있을 수 있다. 객체는 개별적으로 선택되거나 조작될 수 있는 워크북 내의 임의의 항목일 수 있다. 예를 들면, 워크북(400) 내의 객체는 테이블(402), 가젯(404), 단일 데이터 셀(406), 및 바 그래프(408)를 포함하고 있을 수 있다. 기타 객체 또한 워크북(400) 내에 포함되어 있을 수 있다. 도시되어 있는 바와 같이, 가젯(401)은 파이 차트(410), 명명된 범위(412), 이미지(414), 및 피봇 테이블(416)을 포함하고 있다. 데이터 소스(403)는 텍스트 박스(418), 및 라인 그래프(420)를 포함하고 있다. 객체 중의 일부는 공통 데이터 소스로부터의 데이터를 사용하고 있을 수 있다. 예를 들면, 워크북(400) 내의 바 그래프(408), 가젯(401) 내의 파이 차트(410), 및 데이터 소스(403)로부터의 라인 그래프(420)는 동일한 데이터 소스로부터 생성될 수 있다. 일 실시예에 있어서, 객체는 복수의 더 작은 객체를 포함하도록 정의될 수 있다. 예를 들면, 객체는 워크북 중의 복수의 페이지에 대응할 수 있다. 다른 실시예에 있어서, 객체는 동적 정보를 포함하고 있으며, 따라서 이 객체의 크기는 시간에 따라서 변동될 수 있다. 예를 들면, 명명된 범위(412)는 워크북 (예컨대, 워크북(400) 및/또는 일부 다른 워크북(미도시)) 내에 포함되어 있는 셀 범위에 대응할 수 있다. 셀 범위는 스프레드시트의 처리에 반응하여 크기가 증가하거나 감소할 수 있다. 명명된 범위는 다른 데이터 소스로부터의 어떤 범위에 대응할 수 있다. 예를 들면, 웹 페이지는 시간에 따라서 변동되는 일련의 값을 포함하고 있을 수 있다.
리포트는 이벤트(예컨대, 사용자가 워크북을 열거나, 사용자 인터페이스 내의 명명된 객체 뷰(NOV, Named Object View) 옵션을 선택하거나, 검색을 수행하거나 하는 등)에 반응하여 자동으로 생성될 수 있다. 예를 들면, 인가된 사용자 또는 관리자인 사용자는 서버로부터 하나 이상의 워크북, 웹 페이지, 및/또는 데이터 소스에 액세스하여 리포트(430)를 생성할 수 있다. 다르게는, 워크북, 웹 페이지, 및/또는 데이터 소스는 클라이언트에서 액세스될 수 있다. 리포트 내에 공개되는 객체는 자동으로/수동으로 선택될 수 있다. 예를 들면, 사용자는 객체의 일부/부분을 선택하여 리포트 내에 공개할 수 있다. 예를 들면, 사용자는 수동으로 워크북(300) 내의 가젯(404), 가젯(401) 내의 명명된 범위(412), 및 데이터 소스(403) 내의 텍스트 박스(418)와 라인 그래프(420)를 선택하여 리포트(430)에 나타나도록 할 수 있다. 바 그래프(408)와 파이 차트(410)는 자동으로 선택되어 공개될 수 있는데, 이는 이들이 공통 데이터(예컨대, 동일한 데이터 소스)를 사용하여 생성되기 때문이다. 사용자는 퍼블리셔 인터페이스로부터 파일/워크북을 열 수 있다. 일 실시예에 있어서, 객체와 관련된 이름이 퍼블리셔 인터페이스에 제공된다. 사용자는 목록으로부터 공개할 객체를 선택할 수 있다. 일 실시예에 있어서, 객체는 복수의 워크북으로부터 공개되도록 선택될 수 있다.
사용자는 이름에 의해서 리포트(430) 내에 포함되어질 객체를 선택할 수 있고, 따라서 각각의 공개된 객체는 용이하게 식별될 수 있다. 일 실시예에 있어서, 공개된 객체 이름은 자동으로 생성될 수 있다. 예를 들면, 테이블(402)은 "표", "표 1", 또는 일부 다른 고유 이름과 같이 자동으로 식별될 수 있다. 사용자는 자동으로 생성된 이름을 변경할 수 있다. 다른 실시예에 있어서, 사용자는 공개된 객체에 대한 이름을 정의한다. 예를 들면, 가젯(404)은 "급여 가젯"(Payroll Gadget)으로 정의될 수 있다. 마찬가지로, 명명된 범위(412)는 "내 데이터"(my data)로 정의될 수 있다.
선택된 객체는 리포트(430) 내에 공개된다. 예를 들면, 가젯("급여 가젯")(406), 명명된 범위("내 데이터")(412), 텍스트 박스(418), 및 라인 그래프(420)는 리포트(430) 내에 공개된다. 워크북(400), 가젯(401), 및 데이터 소스(403) 중의 비선택된 부분은 리포트(430) 내에 공개되지 않는다.
일 실시예에 따르면, 동일한 데이터 소스를 이용하는 객체 소스를 검색하여 객체 소스로부터 객체를 획득한다. 예를 들면, 다양한 객체 소스가 동일한 데이터 소스를 사용하여 객체(예컨대, 테이블, 차트, 그래프 등)를 생성할 수 있다. 현재의 실시예에 있어서, 바 그래프(408) 및 파이 차트(410)는 상술한 동일한 데이터를 사용하여 생성되었다. 사용자는 데이터 소스를 사용하여 생성된 모든 객체를 살펴 보기를 희망할 수 있다. 데이터 소스는 자동/수동으로 선택될 수 있다. 예를 들면, 데이터 소스는 선택된 객체로부터 결정될 수 있으며 및/또는 데이터 소스는 사용자로부터의 (예컨대, 사용자 인터페이스 요소를 통한) 입력으로부터 결정될 수 있다. 사용자는 이어서 NOV 모드를 선택하고 사용자는 데이터 소스로부터 획득된 서로 다른 뷰를 통해서 순환함으로써 선택된 객체를 볼 수 있다.
다른 예시는 사용자가 웹 페이지를 본 다음 그 데이터를 변경하고, 사용자의 데이터 해석에 특유한 독특하고 흥미있는 뷰를 생성할 수 있는 경우를 포함하고 있다. 사용자는, 특히 오늘날의 사회적으로 연결되는 인터넷 환경에서 이들 뷰를 공유하기를 원할 수 있다. 본 예시에 있어서는, 사용자에게는 웹 페이지로부터의 데이터를 사용하여 복수의 뷰를 각각 형성한 여러 친구가 있다고 가정한다. 이들 각각의 친구는 서로 다른 뷰를 저장하는데 사용된 하나 이상의 객체 소스(예컨대, 파일)를 가지고 있을 수 있다. 하나 이상의 뷰는 또한 메모리 내에 저장될 수 있다. 리포트가 생성되어 웹 페이지로부터 생성된 뷰가 보여지게 되면, 서로 다른 사용자에 의해서 생성된 뷰를 포함하고 있는 서로 다른 객체 소스 또한 유사한 객체에 대해서 검색될 수 있다. 서로 다른 객체 소스로부터의 객체가 획득되고 또한 이들 객체는 리포트 내에 포함된다. 다양한 뷰의 객체를 통해서 순환하면, 사각각의 객체 소스에 개별적으로 액세스하지 않고도 사용자는 서로 다른 모든 뷰를 볼 수 있게 된다.
일 실시예에 따르면, 객체 소스의 허가가 뒤따른다. 사용자가 액세스하지 않아도 되는 뷰는 도시되지 않지만, 사용자가 액세스해야 하는 뷰는 디스플레이된다. 예를 들면, 사용자가 급여 가젯(406)으로부터의 디스플레이를 보고 있는 경우 사용자는 보도록 권한이 부여되지 않은 (예컨대, 다른 사용자의 급여 정보의 뷰와 같은) 급여 뷰에 대해서는 액세스할 수 없다.
클라이언트에서의 사용자에게는 리포트(430)의 명명된 객체 뷰가 표시되어진다. 일 실시예에 따르면, 리포트는 객체가 어디에서 획득되었는지는 구별하지 않는다. 다른 실시예에 따르면, 사용자는 객체에 질의하여 이 객체가 어디에 위치해 있는지를 결정할 수 있다. 예를 들면, 사용자는 디스플레이된 객체 상에 마우스를 위치시키고 마우스의 오른쪽을 클릭하여 그 위치를 알아내거나 및/또는 이 객체를 열고 또한 관련된 객체 소스가 어디에서 획득되었는지를 알아낼 수 있다.
리포트 렌더링 장치는 요청이 있는 경우에 공개된 객체를 마크업 언어(ML, Markup Language)로 전환한다. 예를 들면, 객체 소스 중의 하나(예컨대, 워크북(400))는 서버로부터 액세스된다. 공개된 객체의 ML 버전은 클라이언트로 포워딩되어 웹 브라우저를 통해서 디스플레이된다. 일 실시예에 있어서, 공개된 객체는 사용자 인터페이스(450) 상에 렌더링된다. 예를 들면, 사용자 인터페이스(450)는 웹 부품(web part)일 수 있다. 웹 부품은 단일 목적을 갖는 모듈 형식의 정보 유닛이다. 웹 부품은 다수의 웹 페이지 중의 기본 구성 블록을 형성한다. 하나 보다 많은, 즉 두 개 이상의 웹 부품은 클라이언트의 대시 보드 상에 동시에 디스플레이될 수 있으며, 따라서 서로 다른 공개된 객체를 나란히 볼 수 있게 된다. 예를 들면, 사용자는 텍스트 박스(418)와 라인 그래프(420)를 선택하여 서로 다른 웹 부품 상에 디스플레이할 수 있는데, 텍스트 박스(418)가 라인 그래프(420)에 나타낸 데이터를 상세하게 설명하고 있기 때문이다.
공개된 객체의 이름을 포함하고 있는 툴 바(tool bar) 또한 사용자 인터페이스(450) 상에 렌더링될 수 있다. 툴 바를 사용하여 특정한 공개된 객체에 액세스할 수 있다. 예를 들면, 툴 바는 공개된 객체의 이름 목록을 포함하고 있는 드롭 다운 메뉴(460)이다. 구체적으로, 이 드롭 다운 메뉴(360)는 "급여 가젯", "내 데이터", 텍스트 박스, 및 라인 그래프에 대한 선택 가능한 항목을 포함하고 있다. 기타 객체 또한 사용자 인터페이스 내에 포함되어 있을 수 있다. 리포트 중의 명명된 객체 뷰는 가장 먼저 공개된 객체(예컨대, "급여 가젯")와 함께 사용자 인터페이스(550) 상에 렌더링된다. 다른 공개된 객체는 사용자의 입력에 반응하여 사용자 인터페이스(450)에 렌더링될 수 있다. 예를 들면, 사용자는 드롭 다운 메뉴(460)로부터의 입력을 선택할 수 있으며, 따라서 사용자 인터페이스(450)가 갱신되고 또한 선택된 입력에 대응하는 공개된 객체가 사용자 인터페이스(450) 상에 렌더링될 수 있다. 따라서, 각각의 공개된 객체는 클라이언트에서 개별적으로 사용자에게 디스플레이될 수 있다. 리포트 중의 명명된 객체 뷰는 공개된 객체에 대한 사용자의 주의에 초점을 집중한다. 객체 소스 중의 비공개된 객체는 사용자에게 디스플레이되지 않는다.
이제 도 5 및 6을 참조하면, 스프레드시트를 사용하여 가젯을 생성하고 사용하는 예시적인 프로세스를 도시하고 있다. 본 명세서에서 설명한 각 루틴의 설명을 읽는다면, 다양한 실시예의 논리적인 조작이 (1) 컴퓨터 시스템 상에서 실행되는 컴퓨터로 구현된 동작 순서 또는 프로그램 모듈로서, 및/또는 (2) 컴퓨팅 시스템 내의 상호 접속된 논리 회로 또는 회로 모듈로서 구현되는 것임을 잘 이해할 것이다. 이 구현은 본 발명을 구현한 컴퓨팅 시스템의 성능 요구 조건에 따라서 취사 선택할 수 있다. 따라서, 본 명세서에서 도시한 논리적 조작 및 본 명세서에서 설명한 실시예의 구성은 조작, 구조 장치, 동작 또는 모듈 등과 같이 다양하게 언급된다. 이들 조작, 구조 장치, 동작, 및 모듈은 소프트웨어로, 펌웨어로, 전용 디지털 로직으로, 및 이들을 임의로 조합하여 구현될 수 있다.
도 5는 가젯을 스프레드시트에 결합하기 위한 프로세스를 도시하고 있다.
시작 단계 이후에, 프로세스(500)는 단계(510)로 흘러가며, 여기에서 API가 제공되어 가젯과 스프레드시트 사이에서 상호 작용할 수 있다. API는 다양한 기능을 제공할 수 있다. 예를 들면, API는 가젯을 스프레드시트에 결합하기, 스프레드시트로부터 콘텐트 획득/스프레드시트로 콘텐트를 투입하기, 스프레드시트의 디스플레이를 변경하기, 스프레드시트의 사용자 인터페이스의 디스플레이를 요청하기, 가젯과 관련되어 있는 데이터를 스프레드시트 내에는 저장하지만 스프레드시트의 셀 내에는 저장하지 않기 등에 대한 기능을 제공할 수 있다.
단계(520)로 이동하면, 셀 범위가 선택되어 가젯에 결합된다. 이 선택은 스프레드시트 내의 하나 이상의 셀의 사용자 선택 및/또는 API를 통해 이루어지는 선택일 수 있다. 예를 들면, 사용자는 스프레드시트와 관련된 사용자 인터페이스의 터치 입력을 사용하여 스프레드시트의 하나 이상의 셀을 선택하거나, 및/또는 API와 관련된 콜 내의 셀 범위의 객체의 이름(예컨대, A1:A9, B1:F3, 표 1, 범위 이름, 항목 이름 등)을 제공할 수 있다. 일 실시예에 따르면, 범위의 선택은 터치 입력을 사용한다. 예를 들면, 사용자는 제스처를 수행하여 스프레드시트의 하나 이상의 셀을 선택할 수 있다. 추가적으로, 일부 실시예에 따르면, 사용자가 단지 손가락(또는 기타 물체)을 터치면의 표면에 근접하여 위치시키기만 하여도 터치 입력이 수신되고 검출될 수 있다. 셀은 스프레드시트의 하나 이상의 행과 하나 이상의 열 내의 여러 셀을 포함하고 있을 수 있다. 선택을 사용하여 가젯과 결합되는 범위를 식별할 수 있다.
단계(530)로 옮겨가면, 가젯과 스프레드시트 사이에서의 결합이 확립된다. 이 결합은 가젯에 대한 고유한 이름, 가젯에 대한 링크, 및 스프레드시트의 셀 범위가 가젯과 관련되도록 규정할 수 있다.
단계(540)로 이동하면, 결합 정보가 저장된다. 일 실시예에 따르면, 결합 정보는 스프레드시트 파일 내에 저장되며, 따라서 스프레드시트 파일을 복사하는 경우, 가젯 및 결합 정보가 이 복사와 함께 이동된다.
다른 실시예에 따르면, 이 결합은 다른 위치에 저장되며, 따라서 가젯이 스프레드시트 파일의 일부가 되지 않도록 할 수 있다.
이후에, 이 프로세스는 종료 단계로 흘러가며, 다른 동작을 처리하도록 반환된다.
도 6은 스프레드시트와 상호 작용하는 가젯에 대한 프로세스를 나타내는 도면이다.
시작 단계 이후에, 프로세스(600)는 단계(610)로 흘러가며, 여기에서 가젯에 결합되어진 범위가 상호 작용(예컨대, 스프레드시트 내의 하나 이상의 셀이 선택되거나, 호버링되거나, 편집되거나, 삭제되거나, 추가되는 등)을 하는지에 대한 결정이 행해진다.
단계(620)로 이동하면, 가젯은 이 상호 작용에 대해서 통지받게 된다. 일 실시예에 따르면, 통지는 가젯에게 결합된 범위가 변경되었음을 제공한다. 이 통지는 기타 정보를 포함하고 있을 수 있다. 예를 들면, 통지는 상호 작용한 특정 셀(들) 및/또는 변경된 데이터를 포함하고 있을 수 있다.
단계(630)로 전환하면, 콜은 가젯으로부터 수신된다. 일 실시예에 따르면, 콜은 API 요청을 통해서 수신된다. 본 명세서에서 설명한 바와 같이, 이 요청은 가젯을 스프레드시트에 결합하기, 스프레드시트로부터 콘텐트를 획득하기/스프레드시트로 콘텐트를 투입시키기, 스프레드시트의 디스플레이를 변경하기, 스프레드시트의 사용자 인터페이스의 디스플레이를 요청하기 등과 관련되어 있을 수 있다.
단계(640)로 이동하면, 상술한 요청의 유효 기간이 경과하였는지에 대한 결정이 행해질 수 있다. 예를 들면, 가젯이 콜을 행하였을 때의 시간과 스프레드시트가 이 콜을 수신하였을 때의 시간 사이에서 스프레드시트에 대해서 변경이 행해질 수 있다. 다른 실시예에 있어서, (예컨대, 네트워크 위치에서의) 스프레드시트 애플리케이션은 워크북을 동시에 편집하는 복수의 사용자를 가지고 있을 수 있다. 콜의 유효 기간이 경과한 경우에는, 프로세스는 단계(650)로 이동한다. 콜의 유효 기간이 경과하지 않은 경우에는, 프로세스는 단계(660)로 흘러간다.
단계(650)에서, 통지는 가젯으로 전송되며, 이 통지는 가젯으로 하여금 요청의 유효 기간이 지났다는 것과 또한 이 요청이 스프레드시트 내의 가장 최신 데이터와 관련되지 있지 않을 수 있음을 고지한다. 이 통지에 반응하여, 가젯은 스프레드시트로부터 최신의 데이터를 획득하고 또한 요청을 재실행하거나 및/또는 일부 다른 조작(예컨대, 조작 취소하기)을 수행할 수 있다.
단계(660)에서, 조작이 수행된다. 이 조작은 다양한 서로 다른 동작과 관련되어 있을 수 있다. 예를 들면, 조작은 스프레드시트로부터 콘텐트를 획득하기/스프레드시트로 콘텐트를 투입시키기, 스프레드시트의 디스플레이를 변경하기, 스프레드시트의 사용자 인터페이스의 디스플레이를 요청하기, 가젯을 식별하여 공개하기 등일 수 있다.
단계(670)로 계속 진행하면, 디스플레이가 갱신될 수 있다. 스프레드시트 디스플레이가 갱신되거나 및/또는 가젯 디스플레이가 갱신될 수 있다.
이후에, 이 프로세스는 종료 단계로 흘러가며, 다른 동작을 처리하도록 반환된다.
상술한 발명의 상세한 설명, 예시 및 데이터는 본 발명의 구성의 제조 및 사용에 대한 완전한 설명을 제공한다. 본 발명의 다수의 실시예가 본 발명의 사상 및 범주를 벗어나지 않는 범위에서 행해질 수 있기 때문에, 본 발명은 이하에 첨부한 특허청구범위 내에 속한다.

Claims (20)

  1. 가젯을 스프레드시트와 통합하는 방법에 있어서,
    상기 가젯이 상기 스프레드시트와 통신하도록 하기 위한 애플리케이션 프로그래밍 인터페이스(API)를 제공하는 단계 - 상기 API는 상기 스프레드시트의 하나 이상의 셀로부터 콘텐트를 획득하는 기능과, 상기 스프레드시트의 하나 이상의 셀 내에 콘텐트를 위치시키는 기능을 포함함 - 와,
    상기 가젯에 결합할 상기 스프레드시트의 셀 범위에 대한 선택을 수신하는 단계 - 상기 선택된 셀 범위는 상기 스프레드시트의 하나 이상의 셀을 포함함 - 와,
    상기 스프레드시트의 상기 선택된 셀 범위 및 상기 가젯 간의 결합(binding)을 결정하는 단계와,
    상기 결합을 상기 스프레드시트 내에 저장하는 단계와,
    상기 선택된 셀 범위와의 상호 작용을 판정하는 단계와,
    상기 상호 작용에 응답하여 자동으로 상기 가젯에게 제 1 통지를 제공하는 단계와,
    상기 API를 사용하여 상기 가젯으로부터의 콜(call)을 수신하는 단계와,
    상기 수신된 콜과 관련된 상기 스프레드시트에 대한 조작(operation)을 수행하는 단계와,
    상기 조작을 수행하는 단계 이후에, 상기 선택된 셀 범위를 변경하는 입력을 수신하여 상기 변경된 셀 범위를 포함하도록 상기 결합을 조정하는 단계와,
    상기 입력에 응답하여 자동으로 상기 가젯에제 제 2 통지를 제공하는 단계를 포함하는
    가젯을 스프레드시트와 통합하는 방법.
  2. 제 1 항에 있어서,
    상기 가젯을 상기 스프레드시트 내의 명명된 항목(named item)으로서 노출시켜 상기 가젯이 상기 스프레드시트 내의 다른 객체와 상이하게 디스플레이될 수 있게 하는 단계를 더 포함하는
    가젯을 스프레드시트와 통합하는 방법.
  3. 제 1 항에 있어서,
    상기 선택된 셀 범위에 대한 상기 상호 작용을 판정하는 단계는, 상기 선택된 셀 범위 내의 셀이 삭제되는 경우와, 상기 선택된 셀 범위 내에 셀이 추가되는 경우와, 상기 선택된 셀 범위 내의 셀이 편집되는 경우와, 상기 선택된 셀 범위 내의 셀이 호버링되는 경우와, 상기 선택된 셀 범위 내의 셀이 선택되는 경우 중의 적어도 하나의 경우를 판정하는 단계를 포함하는
    가젯을 스프레드시트와 통합하는 방법.
  4. 제 1 항에 있어서,
    상기 API는 상기 가젯 상에서 발생하는 동작에 응답하여 상기 스프레드시트의 하나 이상의 셀의 디스플레이를 변경하는 기능을 더 포함하는
    가젯을 스프레드시트와 통합하는 방법.
  5. 제 1 항에 있어서,
    상기 스프레드시트 내의 상기 선택된 셀 범위와의 상호 작용에 응답하여 상기 가젯의 디스플레이를 자동으로 갱신하는 단계를 더 포함하는
    가젯을 스프레드시트와 통합하는 방법.
  6. 제 1 항에 있어서,
    상기 결합은 상기 입력에 응답하여 자동으로 갱신되는
    가젯을 스프레드시트와 통합하는 방법.
  7. 제 1 항에 있어서,
    상기 API를 사용하여 상기 가젯으로부터의 상기 콜을 수신하는 단계는 상기 콜의 유효 기간이 경과하였는지(out of date)를 결정하는 단계와, 상기 콜의 유효 기간이 경과한 경우 상기 콜의 실행을 금지하는 단계와, 상기 콜의 유효 기간이 경과한 것을 상기 가젯에게 고지하는 단계를 포함하는
    가젯을 스프레드시트와 통합하는 방법.
  8. 제 1 항에 있어서,
    상기 스프레드시트의 디스플레이의 측면에 연결된(docked) 태스크 판(task pane)에 상기 가젯을 디스플레이하는 단계를 더 포함하는
    가젯을 스프레드시트와 통합하는 방법.
  9. 제 1 항에 있어서,
    상기 가젯이 상기 스프레드시트 애플리케이션에 의해 지원되지 않는지 판정하는 단계와,
    지원되지 않는 경우 상기 가젯과 연관된 웹사이트에 액세스하는 링크를 디스플레이하는 단계를 더 포함하는
    가젯을 스프레드시트와 통합하는 방법.
  10. 제 1 항에 있어서,
    상기 API는 결합을 생성하고, 스프레드시트로부터의 콘텐트, 상기 스프레드시트 내의 위치 및 상기 콘텐트의 유형 중 적어도 하나를 선택하기 위한 사용자 선택 인터페이스를 디스플레이하는 기능을 더 포함하는
    가젯을 스프레드시트와 통합하는 방법.
  11. 가젯을 스프레드시트에 통합시키기 위한 컴퓨터 실행 가능 명령을 갖는 컴퓨터 판독 가능 저장 매체에 있어서,
    상기 컴퓨터 실행가능 명령어는,
    상기 가젯이 상기 스프레드시트와 통신하도록 하기 위한 애플리케이션 프로그래밍 인터페이스(API)를 제공하는 것 - 상기 API는 상기 스프레드시트의 하나 이상의 셀로부터 콘텐트를 획득하는 기능과, 상기 스프레드시트의 하나 이상의 셀 내에 콘텐트를 위치시키는 기능과, 결합을 생성하는 기능과, 상기 스프레드시트로부터의 콘텐트, 상기 스프레드시트 내의 위치 및 콘텐트의 유형 중의 적어도 하나를 선택하기 위한 사용자 선택 인터페이스를 디스플레이하는 기능을 포함함 - 과,
    상기 가젯에 결합할 상기 스프레드시트의 셀 범위에 대한 선택을 수신하는 것 - 상기 선택된 셀 범위는 상기 스프레드시트의 하나 이상의 셀을 포함함 - 과,
    상기 스프레드시트의 상기 선택된 셀 범위 및 상기 가젯 간의 결합을 결정하는 것과,
    상기 결합을 상기 스프레드시트 내에 저장하는 것과,
    상기 선택된 셀 범위와의 상호 작용이 상기 선택된 셀 범위 내의 셀이 삭제되는 경우와, 상기 선택된 셀 범위 내에 셀이 추가되는 경우와, 상기 선택된 셀 범위 내의 셀이 편집되는 경우와, 상기 선택된 셀 범위 내의 셀이 호버링되는 경우와, 상기 선택된 셀 범위 내의 셀이 간접적으로 변경되는 경우와, 상기 선택된 범위 내의 셀이 변경되는 다른 셀에 결합되는 경우와, 상기 선택된 셀 범위 내의 상기 셀이 갱신되는 계산을 포함하고 있는 경우와, 상기 선택된 셀 범위 내의 셀이 선택되는 경우 중의 적어도 하나인 상기 선택된 셀 범위와의 상호 작용을 판정하는 것과,
    상기 상호 작용에 응답하여 자동으로 상기 가젯에게 제 1 통지를 제공하는 것과,
    상기 API를 사용하여 상기 가젯으로부터의 콜을 수신하는 것과,
    상기 수신된 콜과 관련된 상기 스프레드시트에 대한 조작을 수행하는 것과,
    상기 조작을 수행하는 것 이후에, 상기 선택된 셀 범위를 변경하는 입력을 수신하여 상기 변경된 셀 범위를 포함하도록 상기 결합을 조정하는 것과,
    상기 입력에 응답하여 자동으로 상기 가젯에제 제 2 통지를 제공하는 것을 포함하는
    컴퓨터 판독 가능 저장 매체.
  12. 제 11 항에 있어서,
    상기 가젯을 상기 스프레드시트 내의 명명된 항목으로서 노출시켜 상기 가젯이 리포트 내에 공개되도록 하는 것을 더 포함하는
    컴퓨터 판독 가능 저장 매체.
  13. 제 11 항에 있어서,
    상기 API는,
    상기 가젯 상에서 발생하는 동작에 응답하여 상기 스프레드시트의 하나 이상의 셀의 디스플레이를 변경하는 기능을 더 포함하는
    컴퓨터 판독 가능 저장 매체.
  14. 제 11 항에 있어서,
    상기 스프레드시트 내의 상기 셀 범위와의 상호 작용에 응답하여 상기 가젯의 디스플레이를 자동으로 갱신하는 것을 더 포함하는
    컴퓨터 판독 가능 저장 매체.
  15. 제 11 항에 있어서,
    상기 결합은 상기 입력에 응답하여 자동으로 갱신되는
    컴퓨터 판독 가능 저장 매체.
  16. 제 11 항에 있어서,
    상기 API를 사용하여 상기 가젯으로부터의 상기 콜을 수신하는 것은 상기 콜의 유효 기간이 경과하였는지를 결정하는 것과, 상기 콜의 유효 기간이 경과한 경우 상기 콜의 실행을 금지하는 것과, 유효 기간이 경과한 요청을 상기 가젯에게 고지하는 것을 포함하는
    컴퓨터 판독 가능 저장 매체.
  17. 가젯을 스프레드시트에 통합하는 시스템에 있어서,
    디스플레이와,
    프로세서 및 컴퓨터 판독 가능 매체와,
    상기 컴퓨터 판독 가능 매체 상에 저장되고 또한 상기 프로세서 상에서 실행되는 운영 환경과,
    동작들을 수행하도록 구성된 프로세스를 포함하되,
    상기 동작들은,
    상기 가젯이 상기 스프레드시트와 통신하도록 하기 위한 애플리케이션 프로그래밍 인터페이스(API)를 제공하는 것 - 상기 API는 상기 스프레드시트의 하나 이상의 셀로부터 콘텐트를 획득하는 기능과, 상기 스프레드시트의 하나 이상의 셀 내에 콘텐트를 위치시키는 기능과, 결합을 생성하는 기능과, 상기 스프레드시트로부터의 콘텐트, 상기 스프레드시트 내의 위치, 콘텐트의 유형 중의 적어도 하나를 선택하기 위한 사용자 선택 인터페이스를 디스플레이하는 기능을 포함함 - 과,
    터치 입력을 통해 상기 가젯에 결합할 상기 스프레드시트의 셀 범위에 대한 선택을 수신하는 것 - 상기 선택된 셀 범위는 상기 스프레드시트의 하나 이상의 셀을 포함함 - 과,
    상기 스프레드시트의 상기 선택된 셀 범위 및 상기 가젯 간의 결합을 결정하는 것과,
    상기 결합을 상기 스프레드시트 내에 저장하는 것과,
    상기 가젯을 상기 스프레드시트 내의 명명된 항목으로서 노출시켜 상기 가젯이 리포트 내에 공개되도록 하는 것과,
    상기 스프레드시트 및 상기 가젯 모두를 디스플레이하여, 상기 가젯이 디스플레이되는 동안, 상기 선택된 셀 범위가 상기 스프레드시트의 디스플레이의 다른 셀과 구별되도록 하는 것과,
    상기 선택된 셀 범위와의 상호 작용을 판정하는 것 - 상기 선택된 셀 범위와의 상호 작용은 상기 선택된 셀 범위 내의 셀이 삭제되는 경우와, 상기 선택된 셀 범위 내에 셀이 추가되는 경우와, 상기 선택된 셀 범위 내의 셀이 편집되는 경우와, 상기 선택된 셀 범위 내의 셀이 호버링되는 경우와, 상기 선택된 셀 범위 내의 셀이 선택되는 경우 중의 적어도 하나임 - 과,
    상기 상호 작용에 응답하여 상기 가젯으로 통지를 자동으로 제공하는 것과,
    상기 API를 사용하여 상기 가젯으로부터의 콜을 수신하는 것과,
    상기 수신된 콜과 관련된 상기 스프레드시트에 대한 조작을 수행하는 것과,
    상기 조작을 수행하는 것 이후에, 상기 선택된 셀 범위를 변경하는 입력을 수신하여 상기 변경된 선택된 셀 범위를 포함하도록 상기 결합을 조정하는 것과,
    상기 상호 작용에 응답하여 자동으로 상기 가젯에게 통지를 제공하는 것을 포함하는
    가젯을 스프레드시트와 통합하는 시스템.
  18. 제 17 항에 있어서,
    상기 스프레드시트 내의 상기 선택된 셀 범위와의 상호 작용에 응답하여 상기 가젯의 디스플레이를 자동으로 갱신하는 것을 더 포함하는
    가젯을 스프레드시트와 통합하는 시스템.
  19. 제 17 항에 있어서,
    상기 결합은 상기 입력에 대해 수행된 변경에 응답하여 자동으로 갱신되는
    가젯을 스프레드시트와 통합하는 시스템.
  20. 제 17 항에 있어서,
    상기 API를 사용하여 상기 가젯으로부터의 상기 콜을 수신하는 것은 상기 콜의 유효 기간이 경과하였는지를 판정하는 것과, 상기 콜의 유효 기간이 경과한 경우 상기 콜의 실행을 금지하는 것과, 유효 기간이 경과한 요청을 상기 가젯에 고지하는 것을 포함하는
    가젯을 스프레드시트와 통합하는 시스템.

KR1020147012059A 2011-11-04 2012-11-02 웹 가젯과 스프레드시트 간의 상호 작용 기법 KR102050116B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/289,663 US9053083B2 (en) 2011-11-04 2011-11-04 Interaction between web gadgets and spreadsheets
US13/289,663 2011-11-04
PCT/US2012/063133 WO2013067236A1 (en) 2011-11-04 2012-11-02 Interaction between web gadgets and spreadsheets

Publications (2)

Publication Number Publication Date
KR20140094529A KR20140094529A (ko) 2014-07-30
KR102050116B1 true KR102050116B1 (ko) 2019-11-28

Family

ID=47855801

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147012059A KR102050116B1 (ko) 2011-11-04 2012-11-02 웹 가젯과 스프레드시트 간의 상호 작용 기법

Country Status (6)

Country Link
US (2) US9053083B2 (ko)
EP (1) EP2774024A4 (ko)
JP (1) JP6141858B2 (ko)
KR (1) KR102050116B1 (ko)
CN (2) CN107256208B (ko)
WO (1) WO2013067236A1 (ko)

Families Citing this family (138)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110145689A1 (en) * 2005-09-09 2011-06-16 Microsoft Corporation Named object view over multiple files
US8930331B2 (en) 2007-02-21 2015-01-06 Palantir Technologies Providing unique views of data based on changes or rules
US9348499B2 (en) 2008-09-15 2016-05-24 Palantir Technologies, Inc. Sharing objects that rely on local resources with outside servers
US9747270B2 (en) 2011-01-07 2017-08-29 Microsoft Technology Licensing, Llc Natural input for spreadsheet actions
US9298687B2 (en) * 2010-11-29 2016-03-29 Red Hat, Inc. Automatic spreadsheet formula output validation
US9547693B1 (en) 2011-06-23 2017-01-17 Palantir Technologies Inc. Periodic database search manager for multiple data sources
US9092482B2 (en) 2013-03-14 2015-07-28 Palantir Technologies, Inc. Fair scheduling for mixed-query loads
US8799240B2 (en) 2011-06-23 2014-08-05 Palantir Technologies, Inc. System and method for investigating large amounts of data
US8732574B2 (en) 2011-08-25 2014-05-20 Palantir Technologies, Inc. System and method for parameterizing documents for automatic workflow generation
US8504542B2 (en) 2011-09-02 2013-08-06 Palantir Technologies, Inc. Multi-row transactions
US9053083B2 (en) 2011-11-04 2015-06-09 Microsoft Technology Licensing, Llc Interaction between web gadgets and spreadsheets
US9171099B2 (en) 2012-01-26 2015-10-27 Microsoft Technology Licensing, Llc System and method for providing calculation web services for online documents
US9348677B2 (en) 2012-10-22 2016-05-24 Palantir Technologies Inc. System and method for batch evaluation programs
US9380431B1 (en) 2013-01-31 2016-06-28 Palantir Technologies, Inc. Use of teams in a mobile application
US10037314B2 (en) 2013-03-14 2018-07-31 Palantir Technologies, Inc. Mobile reports
US8917274B2 (en) 2013-03-15 2014-12-23 Palantir Technologies Inc. Event matrix based on integrated data
US8909656B2 (en) 2013-03-15 2014-12-09 Palantir Technologies Inc. Filter chains with associated multipath views for exploring large data sets
US8937619B2 (en) 2013-03-15 2015-01-20 Palantir Technologies Inc. Generating an object time series from data objects
US10275778B1 (en) 2013-03-15 2019-04-30 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive investigation based on automatic malfeasance clustering of related data in various data structures
US8868486B2 (en) 2013-03-15 2014-10-21 Palantir Technologies Inc. Time-sensitive cube
US8788405B1 (en) 2013-03-15 2014-07-22 Palantir Technologies, Inc. Generating data clusters with customizable analysis strategies
US9760262B2 (en) * 2013-03-15 2017-09-12 Microsoft Technology Licensing, Llc Gestures involving direct interaction with a data visualization
US9965937B2 (en) 2013-03-15 2018-05-08 Palantir Technologies Inc. External malware data item clustering and analysis
US8799799B1 (en) 2013-05-07 2014-08-05 Palantir Technologies Inc. Interactive geospatial map
US9489368B2 (en) 2013-06-14 2016-11-08 Microsoft Technology Licensing, Llc Suggesting a set of operations applicable to a selected range of data in a spreadsheet
US20140372856A1 (en) 2013-06-14 2014-12-18 Microsoft Corporation Natural Quick Functions Gestures
US10664652B2 (en) 2013-06-15 2020-05-26 Microsoft Technology Licensing, Llc Seamless grid and canvas integration in a spreadsheet application
US20140372932A1 (en) * 2013-06-15 2014-12-18 Microsoft Corporation Filtering Data with Slicer-Style Filtering User Interface
US10133720B2 (en) * 2013-06-15 2018-11-20 Microsoft Technology Licensing, Llc Showing presence of multiple authors in a spreadsheet
US9223773B2 (en) 2013-08-08 2015-12-29 Palatir Technologies Inc. Template system for custom document generation
US9335897B2 (en) 2013-08-08 2016-05-10 Palantir Technologies Inc. Long click display of a context menu
US8713467B1 (en) 2013-08-09 2014-04-29 Palantir Technologies, Inc. Context-sensitive views
US9785317B2 (en) 2013-09-24 2017-10-10 Palantir Technologies Inc. Presentation and analysis of user interaction data
US8938686B1 (en) 2013-10-03 2015-01-20 Palantir Technologies Inc. Systems and methods for analyzing performance of an entity
US8812960B1 (en) 2013-10-07 2014-08-19 Palantir Technologies Inc. Cohort-based presentation of user interaction data
US9116975B2 (en) 2013-10-18 2015-08-25 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores
US8924872B1 (en) 2013-10-18 2014-12-30 Palantir Technologies Inc. Overview user interface of emergency call data of a law enforcement agency
US9021384B1 (en) 2013-11-04 2015-04-28 Palantir Technologies Inc. Interactive vehicle information map
US8868537B1 (en) 2013-11-11 2014-10-21 Palantir Technologies, Inc. Simple web search
US9105000B1 (en) 2013-12-10 2015-08-11 Palantir Technologies Inc. Aggregating data from a plurality of data sources
US9734217B2 (en) 2013-12-16 2017-08-15 Palantir Technologies Inc. Methods and systems for analyzing entity performance
US20150169531A1 (en) * 2013-12-17 2015-06-18 Microsoft Corporation Touch/Gesture-Enabled Interaction with Electronic Spreadsheets
US9552615B2 (en) 2013-12-20 2017-01-24 Palantir Technologies Inc. Automated database analysis to detect malfeasance
US9875226B1 (en) * 2013-12-20 2018-01-23 Google Llc Performing server-side and client-side operations on spreadsheets
US10356032B2 (en) 2013-12-26 2019-07-16 Palantir Technologies Inc. System and method for detecting confidential information emails
US9043696B1 (en) 2014-01-03 2015-05-26 Palantir Technologies Inc. Systems and methods for visual definition of data associations
US8832832B1 (en) 2014-01-03 2014-09-09 Palantir Technologies Inc. IP reputation
US10747950B2 (en) 2014-01-30 2020-08-18 Microsoft Technology Licensing, Llc Automatic insights for spreadsheets
US10831356B2 (en) * 2014-02-10 2020-11-10 International Business Machines Corporation Controlling visualization of data by a dashboard widget
US9483162B2 (en) 2014-02-20 2016-11-01 Palantir Technologies Inc. Relationship visualizations
US9009827B1 (en) 2014-02-20 2015-04-14 Palantir Technologies Inc. Security sharing system
US9727376B1 (en) 2014-03-04 2017-08-08 Palantir Technologies, Inc. Mobile tasks
US8924429B1 (en) 2014-03-18 2014-12-30 Palantir Technologies Inc. Determining and extracting changed data from a data source
US10152469B2 (en) * 2014-04-08 2018-12-11 Adobe Systems Incorporated Analytics report segments and controls
US9857958B2 (en) 2014-04-28 2018-01-02 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive access of, investigation of, and analysis of data objects stored in one or more databases
US9009171B1 (en) 2014-05-02 2015-04-14 Palantir Technologies Inc. Systems and methods for active column filtering
US9535974B1 (en) 2014-06-30 2017-01-03 Palantir Technologies Inc. Systems and methods for identifying key phrase clusters within documents
US9619557B2 (en) 2014-06-30 2017-04-11 Palantir Technologies, Inc. Systems and methods for key phrase characterization of documents
US9202249B1 (en) 2014-07-03 2015-12-01 Palantir Technologies Inc. Data item clustering and analysis
US10572496B1 (en) 2014-07-03 2020-02-25 Palantir Technologies Inc. Distributed workflow system and database with access controls for city resiliency
US9256664B2 (en) 2014-07-03 2016-02-09 Palantir Technologies Inc. System and method for news events detection and visualization
US9785773B2 (en) 2014-07-03 2017-10-10 Palantir Technologies Inc. Malware data item analysis
US9021260B1 (en) 2014-07-03 2015-04-28 Palantir Technologies Inc. Malware data item analysis
US10013412B2 (en) * 2014-08-25 2018-07-03 Purple Robot Software, Inc. Peer to peer spreadsheet processing
US9454281B2 (en) 2014-09-03 2016-09-27 Palantir Technologies Inc. System for providing dynamic linked panels in user interface
US9767172B2 (en) 2014-10-03 2017-09-19 Palantir Technologies Inc. Data aggregation and analysis system
US9501851B2 (en) 2014-10-03 2016-11-22 Palantir Technologies Inc. Time-series analysis system
US9785328B2 (en) 2014-10-06 2017-10-10 Palantir Technologies Inc. Presentation of multivariate data on a graphical user interface of a computing system
US9984133B2 (en) 2014-10-16 2018-05-29 Palantir Technologies Inc. Schematic and database linking system
US9229952B1 (en) 2014-11-05 2016-01-05 Palantir Technologies, Inc. History preserving data pipeline system and method
US9043894B1 (en) 2014-11-06 2015-05-26 Palantir Technologies Inc. Malicious software detection in a computing system
US10362133B1 (en) 2014-12-22 2019-07-23 Palantir Technologies Inc. Communication data processing architecture
US9367872B1 (en) 2014-12-22 2016-06-14 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures
US9348920B1 (en) 2014-12-22 2016-05-24 Palantir Technologies Inc. Concept indexing among database of documents using machine learning techniques
US10552994B2 (en) 2014-12-22 2020-02-04 Palantir Technologies Inc. Systems and interactive user interfaces for dynamic retrieval, analysis, and triage of data items
US9817563B1 (en) 2014-12-29 2017-11-14 Palantir Technologies Inc. System and method of generating data points from one or more data stores of data items for chart creation and manipulation
US9335911B1 (en) 2014-12-29 2016-05-10 Palantir Technologies Inc. Interactive user interface for dynamic data analysis exploration and query processing
US9870205B1 (en) 2014-12-29 2018-01-16 Palantir Technologies Inc. Storing logical units of program code generated using a dynamic programming notebook user interface
US10372879B2 (en) 2014-12-31 2019-08-06 Palantir Technologies Inc. Medical claims lead summary report generation
US10387834B2 (en) 2015-01-21 2019-08-20 Palantir Technologies Inc. Systems and methods for accessing and storing snapshots of a remote application in a document
US9727560B2 (en) 2015-02-25 2017-08-08 Palantir Technologies Inc. Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags
EP3611632A1 (en) 2015-03-16 2020-02-19 Palantir Technologies Inc. Displaying attribute and event data along paths
US9886467B2 (en) 2015-03-19 2018-02-06 Plantir Technologies Inc. System and method for comparing and visualizing data entities and data entity series
US9454785B1 (en) 2015-07-30 2016-09-27 Palantir Technologies Inc. Systems and user interfaces for holistic, data-driven investigation of bad actor behavior based on clustering and scoring of related data
US9996595B2 (en) 2015-08-03 2018-06-12 Palantir Technologies, Inc. Providing full data provenance visualization for versioned datasets
US9456000B1 (en) 2015-08-06 2016-09-27 Palantir Technologies Inc. Systems, methods, user interfaces, and computer-readable media for investigating potential malicious communications
US9600146B2 (en) 2015-08-17 2017-03-21 Palantir Technologies Inc. Interactive geospatial map
US10489391B1 (en) 2015-08-17 2019-11-26 Palantir Technologies Inc. Systems and methods for grouping and enriching data items accessed from one or more databases for presentation in a user interface
US10102369B2 (en) 2015-08-19 2018-10-16 Palantir Technologies Inc. Checkout system executable code monitoring, and user account compromise determination system
US10528209B2 (en) * 2015-08-20 2020-01-07 Lenovo Enterprise Solutions (Singapore) Pte. Ltd Displaying indicator when data of cell that is not visible changes
US10853378B1 (en) 2015-08-25 2020-12-01 Palantir Technologies Inc. Electronic note management via a connected entity graph
US11150917B2 (en) 2015-08-26 2021-10-19 Palantir Technologies Inc. System for data aggregation and analysis of data from a plurality of data sources
US9485265B1 (en) 2015-08-28 2016-11-01 Palantir Technologies Inc. Malicious activity detection system capable of efficiently processing data accessed from databases and generating alerts for display in interactive user interfaces
US10706434B1 (en) 2015-09-01 2020-07-07 Palantir Technologies Inc. Methods and systems for determining location information
US9576015B1 (en) 2015-09-09 2017-02-21 Palantir Technologies, Inc. Domain-specific language for dataset transformations
US10296617B1 (en) 2015-10-05 2019-05-21 Palantir Technologies Inc. Searches of highly structured data
US20170124043A1 (en) 2015-11-02 2017-05-04 Microsoft Technology Licensing, Llc Sound associated with cells in spreadsheets
US9990349B2 (en) 2015-11-02 2018-06-05 Microsoft Technology Licensing, Llc Streaming data associated with cells in spreadsheets
JP6578897B2 (ja) * 2015-11-10 2019-09-25 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
US9542446B1 (en) 2015-12-17 2017-01-10 Palantir Technologies, Inc. Automatic generation of composite datasets based on hierarchical fields
US10089289B2 (en) 2015-12-29 2018-10-02 Palantir Technologies Inc. Real-time document annotation
US9823818B1 (en) 2015-12-29 2017-11-21 Palantir Technologies Inc. Systems and interactive user interfaces for automatic generation of temporal representation of data objects
US9612723B1 (en) 2015-12-30 2017-04-04 Palantir Technologies Inc. Composite graphical interface with shareable data-objects
US10140279B2 (en) * 2016-01-13 2018-11-27 Dropbox, Inc. Techniques for providing user interface enhancements for spreadsheets and tables
US10698938B2 (en) 2016-03-18 2020-06-30 Palantir Technologies Inc. Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags
US10191897B1 (en) 2016-04-19 2019-01-29 Workday, Inc. Data flow view for a spreadsheet
US10719188B2 (en) 2016-07-21 2020-07-21 Palantir Technologies Inc. Cached database and synchronization system for providing dynamic linked panels in user interface
US10324609B2 (en) 2016-07-21 2019-06-18 Palantir Technologies Inc. System for providing dynamic linked panels in user interface
US10437840B1 (en) 2016-08-19 2019-10-08 Palantir Technologies Inc. Focused probabilistic entity resolution from multiple data sources
US10318630B1 (en) 2016-11-21 2019-06-11 Palantir Technologies Inc. Analysis of large bodies of textual data
US10216494B2 (en) 2016-12-03 2019-02-26 Thomas STACHURA Spreadsheet-based software application development
US10540153B2 (en) 2016-12-03 2020-01-21 Thomas STACHURA Spreadsheet-based software application development
US11726753B2 (en) 2016-12-03 2023-08-15 Thomas STACHURA Spreadsheet-based software application development
US10460602B1 (en) 2016-12-28 2019-10-29 Palantir Technologies Inc. Interactive vehicle information mapping system
CN106886437B (zh) * 2017-01-24 2021-08-31 北京奇虎科技有限公司 应用程序更新方法与装置
US10846469B2 (en) 2017-03-07 2020-11-24 Microsoft Technology Licensing, Llc Dynamically registered functions for calculations engines
US10140280B2 (en) 2017-03-07 2018-11-27 Microsoft Technology Licensing, Llc Asynchronous dynamic functions for calculation engines
US10862979B2 (en) 2017-04-07 2020-12-08 Microsoft Technology Licensing, Llc Techniques for supporting remote micro-services as native functions in spreadsheet applications
US10791105B2 (en) 2017-04-07 2020-09-29 Microsoft Technology Licensing, Llc Credential-based proactive discovery of remote micro-services by spreadsheet applications
US10552529B2 (en) * 2017-05-03 2020-02-04 International Business Machines Corporation Data change alerts in a collaborative environment
KR101774265B1 (ko) * 2017-05-23 2017-09-12 주식회사 한글과컴퓨터 멀티 쓰레드 기반의 스프레드시트 문서 제공 장치 및 그의 동작 방법
US10956406B2 (en) 2017-06-12 2021-03-23 Palantir Technologies Inc. Propagated deletion of database records and derived data
US10403011B1 (en) 2017-07-18 2019-09-03 Palantir Technologies Inc. Passing system with an interactive user interface
PL3718000T3 (pl) * 2017-12-03 2024-02-05 Thomas Stachura Tworzenie aplikacji programowej w oparciu o arkusz kalkulacyjny
US10705805B1 (en) * 2017-12-12 2020-07-07 Amazon Technologies, Inc. Application authoring using web-of-sheets data model
US11019002B2 (en) * 2017-12-15 2021-05-25 Google Llc Secure electronic messaging with dynamic content
CN107861671A (zh) * 2017-12-19 2018-03-30 深圳市富途网络科技有限公司 一种卡片式展示股票右侧栏信息的方法
US20190220157A1 (en) * 2018-01-17 2019-07-18 Not For Profit Strategic Planning Llc Method and system for graph data management
US11599369B1 (en) 2018-03-08 2023-03-07 Palantir Technologies Inc. Graphical user interface configuration system
US10754822B1 (en) 2018-04-18 2020-08-25 Palantir Technologies Inc. Systems and methods for ontology migration
US10885021B1 (en) 2018-05-02 2021-01-05 Palantir Technologies Inc. Interactive interpreter and graphical user interface
US11586603B1 (en) 2018-05-23 2023-02-21 Amazon Technologies, Inc. Index sheets for robust spreadsheet-based applications
US11119630B1 (en) 2018-06-19 2021-09-14 Palantir Technologies Inc. Artificial intelligence assisted evaluations and user interface for same
CN111950241A (zh) * 2019-05-16 2020-11-17 珠海金山办公软件有限公司 一种显示表格数据的方法、系统、终端和存储介质
US11663199B1 (en) * 2020-06-23 2023-05-30 Amazon Technologies, Inc. Application development based on stored data
US11714796B1 (en) 2020-11-05 2023-08-01 Amazon Technologies, Inc Data recalculation and liveliness in applications
US11507197B1 (en) 2021-06-04 2022-11-22 Zouheir Taher Fadlallah Capturing touchless inputs and controlling an electronic device with the same
US11853480B2 (en) * 2021-06-04 2023-12-26 Zouheir Taher Fadlallah Capturing touchless inputs and controlling a user interface with the same

Family Cites Families (227)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5339392A (en) 1989-07-27 1994-08-16 Risberg Jeffrey S Apparatus and method for creation of a user definable video displayed document showing changes in real time data
JPH03268185A (ja) * 1990-03-19 1991-11-28 Nec Home Electron Ltd 表計算方法及びシステム
GB9009930D0 (en) 1990-05-02 1990-06-27 Int Computers Ltd Electronic spreadsheet
US5212788A (en) 1990-05-22 1993-05-18 Digital Equipment Corporation System and method for consistent timestamping in distributed computer databases
US5555403A (en) 1991-11-27 1996-09-10 Business Objects, S.A. Relational database access system using semantically dynamic objects
US6578027B2 (en) 1996-08-20 2003-06-10 Business Objects, Sa Relational database access system using semantically dynamic objects
US5623282A (en) 1991-12-31 1997-04-22 Microsoft Corporation Method and system for the direct manipulation of cells in an electronic spreadsheet program or the like
US5416895A (en) 1992-04-08 1995-05-16 Borland International, Inc. System and methods for improved spreadsheet interface with user-familiar objects
US5371675A (en) 1992-06-03 1994-12-06 Lotus Development Corporation Spreadsheet program which implements alternative range references
US5423034A (en) 1992-06-10 1995-06-06 Cohen-Levy; Leon Network file management with user determined hierarchical file structures and means for intercepting application program open and save commands for inputting and displaying user inputted descriptions of the location and content of files
JP3613401B2 (ja) * 1992-07-06 2005-01-26 マイクロソフト コーポレーション オブジェクトの名称を付けて結び付ける方法及びシステム
JP3462512B2 (ja) * 1992-07-10 2003-11-05 株式会社日立製作所 グラフ修正方法
US5403639A (en) 1992-09-02 1995-04-04 Storage Technology Corporation File server having snapshot application data groups
DE69318571T2 (de) 1992-12-01 1998-09-17 Microsoft Corp Verfahren und system für die in-ort-wechselwirkung mit eingebetteten objekten
US5452447A (en) 1992-12-21 1995-09-19 Sun Microsystems, Inc. Method and apparatus for a caching file server
AU6826694A (en) 1993-05-10 1994-12-12 Apple Computer, Inc. System for automatically determining the status of contents added to a document
ATE409907T1 (de) 1993-06-03 2008-10-15 Network Appliance Inc Verfahren und vorrichtung zum beschreiben beliebiger bereiche eines dateisystems
US5963962A (en) 1995-05-31 1999-10-05 Network Appliance, Inc. Write anywhere file-system layout
JPH0737008A (ja) 1993-06-29 1995-02-07 Hitachi Ltd 表計算処理装置の表示制御方法
US6216138B1 (en) 1994-04-22 2001-04-10 Brooks Automation Inc. Computer interface system for automatically generating graphical representations of computer operations linked together according to functional relationships
US5604854A (en) 1994-04-22 1997-02-18 Borland International, Inc. System and methods for reformatting multi-dimensional spreadsheet information
JPH07334696A (ja) * 1994-06-10 1995-12-22 Hitachi Ltd 表作成システム
US6160549A (en) 1994-07-29 2000-12-12 Oracle Corporation Method and apparatus for generating reports using declarative tools
US5727161A (en) 1994-09-16 1998-03-10 Planscan, Llc Method and apparatus for graphic analysis of variation of economic plans
US5694608A (en) 1995-01-27 1997-12-02 Borland International, Inc. Non-modal database system wth methods for incremental maintenance of live reports
US5893125A (en) 1995-01-27 1999-04-06 Borland International, Inc. Non-modal database system with methods for incremental maintenance
US5619631A (en) * 1995-06-07 1997-04-08 Binaryblitz Method and apparatus for data alteration by manipulation of representational graphs
US6157934A (en) 1995-10-24 2000-12-05 Ultimus, L.L.C. Method and apparatus for using distributed spreadsheets in a client/server architecture for workflow automation
US5890174A (en) 1995-11-16 1999-03-30 Microsoft Corporation Method and system for constructing a formula in a spreadsheet
GB2311151B (en) 1996-02-29 2000-11-15 Jba Holdings Plc An object browser and manipulation system
EP0798655A3 (en) 1996-03-25 1999-05-19 Sun Microsystems, Inc. Internet-enabled graphical user interface with toolbar icons having built-in links to world-wide web documents and an integrated web browser
US6434578B1 (en) 1996-06-26 2002-08-13 Microsoft Corporation Generating instruction sequences using independently executable pane renderers
US5745714A (en) 1996-07-19 1998-04-28 International Business Machines Corporation Method and system in a data processing system for the association and display of a plurality of objects
US5899988A (en) 1997-02-28 1999-05-04 Oracle Corporation Bitmapped indexing with high granularity locking
US6097391A (en) 1997-03-31 2000-08-01 Menai Corporation Method and apparatus for graphically manipulating objects
US5978818A (en) 1997-04-29 1999-11-02 Oracle Corporation Automated hypertext outline generation for documents
US6256651B1 (en) 1997-06-20 2001-07-03 Raja Tuli Time management workflow software
US6269403B1 (en) 1997-06-30 2001-07-31 Microsoft Corporation Browser and publisher for multimedia object storage, retrieval and transfer
US5987481A (en) 1997-07-01 1999-11-16 Microsoft Corporation Method and apparatus for using label references in spreadsheet formulas
JP4149574B2 (ja) 1997-08-29 2008-09-10 ゼロックス コーポレイション ユーザインターフェースサポートデバイス、及び情報入力方法
US6038639A (en) 1997-09-09 2000-03-14 Storage Technology Corporation Data file storage management system for snapshot copy operations
US6003012A (en) 1997-12-05 1999-12-14 Square D Company Methodology and computer-based tools for design, production and sales of customized switchboards
US9292111B2 (en) 1998-01-26 2016-03-22 Apple Inc. Gesturing with a multipoint sensing device
US6009455A (en) 1998-04-20 1999-12-28 Doyle; John F. Distributed computation utilizing idle networked computers
US7539637B2 (en) 1998-04-24 2009-05-26 Starmine Corporation Security analyst estimates performance viewing system and method
US6289352B1 (en) 1998-05-29 2001-09-11 Crystal Decisions, Inc. Apparatus and method for compound on-line analytical processing in databases
US6460059B1 (en) 1998-08-04 2002-10-01 International Business Machines Corporation Visual aid to simplify achieving correct cell interrelations in spreadsheets
US6625603B1 (en) 1998-09-21 2003-09-23 Microsoft Corporation Object type specific access control
US6501491B1 (en) 1998-09-21 2002-12-31 Microsoft Corporation Extensible user interface for viewing objects over a network
US6275824B1 (en) 1998-10-02 2001-08-14 Ncr Corporation System and method for managing data privacy in a database management system
US6298334B1 (en) 1998-10-15 2001-10-02 Netdecide Corporation Object-based numeric-analysis engine
US6360246B1 (en) 1998-11-13 2002-03-19 The Nasdaq Stock Market, Inc. Report generation architecture for remotely generated data
US6023691A (en) 1998-12-22 2000-02-08 Ac Properties B.V. Goal based stimulator utilizing a spreadsheet architecture
US6549878B1 (en) 1998-12-31 2003-04-15 Microsoft Corporation System and method for editing a spreadsheet via an improved editing and cell selection model
US6199099B1 (en) 1999-03-05 2001-03-06 Ac Properties B.V. System, method and article of manufacture for a mobile communication network utilizing a distributed communication network
EP1037157A1 (en) 1999-03-05 2000-09-20 International Business Machines Corporation Method and system for processing different cell protection modes in an electronic spreadsheet
US6662341B1 (en) 1999-05-20 2003-12-09 Microsoft Corporation Method and apparatus for writing a windows application in HTML
US7650355B1 (en) 1999-05-21 2010-01-19 E-Numerate Solutions, Inc. Reusable macro markup language
AU5062000A (en) 1999-06-11 2001-03-13 Cci Europe A/S A content management computer system for managing publishing content objects
US6626959B1 (en) 1999-06-14 2003-09-30 Microsoft Corporation Automatic formatting of pivot table reports within a spreadsheet
US6701485B1 (en) * 1999-06-15 2004-03-02 Microsoft Corporation Binding spreadsheet cells to objects
US6613098B1 (en) 1999-06-15 2003-09-02 Microsoft Corporation Storage of application specific data in HTML
US6631497B1 (en) 1999-07-19 2003-10-07 International Business Machines Corporation Binding data from data source to cells in a spreadsheet
US7644366B1 (en) 1999-07-30 2010-01-05 Computer Associates Think, Inc. Method and system for displaying a plurality of discrete files in a compound file
US6507865B1 (en) 1999-08-30 2003-01-14 Zaplet, Inc. Method and system for group content collaboration
JP2001092444A (ja) 1999-09-21 2001-04-06 Sony Corp 情報処理装置及び情報処理方法並びにプログラム格納媒体
US6832351B1 (en) 1999-10-01 2004-12-14 Microsoft Corporation Method and system for previewing and printing customized business forms
JP2001109741A (ja) 1999-10-13 2001-04-20 Toshiba Corp Htmlデータ作成方法及びhtmlデータ作成システム
CA2311866A1 (en) 2000-01-06 2001-07-06 International Business Machines Corporation Method and system in an electronic spreadsheet for adding or removing elements from a cell named range according to different modes
JP2003521061A (ja) 2000-01-25 2003-07-08 オートデスク,インコーポレイテッド インターネット上で建築図面へのアクセスを提供し、処理する方法および装置
WO2001059675A1 (en) 2000-02-11 2001-08-16 Ryan Mark H Method and system for distributing and collecting spreadsheet information
US6484186B1 (en) 2000-02-15 2002-11-19 Novell, Inc. Method for backing up consistent versions of open files
US6651075B1 (en) 2000-02-16 2003-11-18 Microsoft Corporation Support for multiple temporal snapshots of same volume
US6757869B1 (en) 2000-03-20 2004-06-29 International Business Machines Corporation Method and apparatus for providing access to a legacy application on a distributed data processing system
US7725385B2 (en) 2000-03-29 2010-05-25 American Express Travel Related Services Company, Inc. System and method for facilitating the handling of a dispute using disparate architectures
US20020015059A1 (en) 2000-04-17 2002-02-07 Clarke Hernan Jose Method and system for publishing reports to a network
US20020070953A1 (en) 2000-05-04 2002-06-13 Barg Timothy A. Systems and methods for visualizing and analyzing conditioned data
JP2001357088A (ja) 2000-06-16 2001-12-26 Denso Corp パラメトリック機能を有する3次元モデリングシステムと、同システムによるパラメータ編集方法
US7117435B1 (en) 2000-06-21 2006-10-03 Microsoft Corporation Spreadsheet fields in text
US6632249B2 (en) 2000-06-23 2003-10-14 Microsoft Corporation Method for providing web-based services to an application program module
WO2002003595A2 (en) 2000-07-05 2002-01-10 Xml Ind Llc XML-BASED INSURANCE MARKET PLACE METHOD AND ARCHITECTURE
WO2002005065A2 (en) 2000-07-11 2002-01-17 Juice Software, Inc. A method and system for integrating network-based functionality into productivity applications and documents
AU2001288597A1 (en) 2000-09-01 2002-03-13 Togethersoft Corporation Methods and systems for animating a workflow and a project plan
JP3790661B2 (ja) 2000-09-08 2006-06-28 インターナショナル・ビジネス・マシーンズ・コーポレーション アクセス制御システム
US6988241B1 (en) 2000-10-16 2006-01-17 International Business Machines Corporation Client side, web-based spreadsheet
US7930252B2 (en) 2000-10-24 2011-04-19 Google, Inc. Method and system for sharing anonymous user information
US7055105B2 (en) 2000-10-27 2006-05-30 Siemens Aktiengesellschaft Drop-enabled tabbed dialogs
JP2002140159A (ja) 2000-10-30 2002-05-17 Motoaki Fujimoto センサー付き携帯情報機器
WO2002039245A2 (en) 2000-11-09 2002-05-16 Change Tools, Inc. A user definable interface system, method and computer program product
JP2003050964A (ja) 2000-11-30 2003-02-21 Kokusai Zunou Sangyo Kk 表計算ウェブサーバシステムおよび表計算ウェブシステム
US7206997B2 (en) 2000-12-18 2007-04-17 General Motors Corporation Functional visualization of spreadsheets
US6901407B2 (en) 2001-01-12 2005-05-31 Rick D. Curns System and method for updating project management scheduling charts
US6873344B2 (en) 2001-02-22 2005-03-29 Sony Corporation Media production system using flowgraph representation of operations
TWI251751B (en) 2001-02-27 2006-03-21 Ibm Method and system in an electronic spreadsheet for handling graphical objects referring to working ranges of cells in a copy/cut and paste operation
US6906717B2 (en) 2001-02-27 2005-06-14 Microsoft Corporation Multiple chart user interface
US7552139B2 (en) 2001-03-19 2009-06-23 Xerox Corporation Represented object groups
US20030061305A1 (en) 2001-03-30 2003-03-27 Chyron Corporation System and method for enhancing streaming media delivery and reporting
US6775675B1 (en) 2001-04-04 2004-08-10 Sagemetrics Corporation Methods for abstracting data from various data structures and managing the presentation of the data
WO2002084531A2 (en) 2001-04-10 2002-10-24 Univ Carnegie Mellon Systems and methods for deidentifying entries in a data source
US6801910B1 (en) 2001-06-19 2004-10-05 Microstrategy, Incorporated Method and system for guiding drilling in a report generated by a reporting system
US6691100B1 (en) 2001-06-20 2004-02-10 Microstrategy, Incorporated HTML/DHTML web interface system and method
US7013312B2 (en) 2001-06-21 2006-03-14 International Business Machines Corporation Web-based strategic client planning system for end-user creation of queries, reports and database updates
US20030033329A1 (en) 2001-06-22 2003-02-13 Bergman Eric D. Method and apparatus for entry and editing of spreadsheet formulas
US20030011638A1 (en) 2001-07-10 2003-01-16 Sun-Woo Chung Pop-up menu system
US20030044762A1 (en) 2001-08-29 2003-03-06 Assessment Technology Inc. Educational management system
US7031979B2 (en) 2001-08-31 2006-04-18 Hewlett-Packard Development Company, L.P. Report generation system and method
JP2003108440A (ja) 2001-09-28 2003-04-11 Toshiba Corp データ公開方法、データ公開プログラム、データ公開装置
US6907428B2 (en) 2001-11-02 2005-06-14 Cognos Incorporated User interface for a multi-dimensional data store
CN1591401A (zh) 2001-11-09 2005-03-09 无锡永中科技有限公司 一种使用应用程序的各个版本进行数据处理的方法
US20030120999A1 (en) 2001-12-21 2003-06-26 Miller Michelle A. Calculating in spreadsheet cells without using formulas
JP4291999B2 (ja) 2002-01-18 2009-07-08 株式会社インターネットディスクロージャー 書類作成システム及び作成管理プログラム
US7231657B2 (en) 2002-02-14 2007-06-12 American Management Systems, Inc. User authentication system and methods thereof
US7441197B2 (en) 2002-02-26 2008-10-21 Global Asset Protection Services, Llc Risk management information interface system and associated methods
US7650576B2 (en) * 2002-03-07 2010-01-19 Business Objects Americas Method and system for creating graphical and interactive representations of input and output data
US6993533B1 (en) 2002-03-25 2006-01-31 Bif Technologies Corp. Relational database drill-down convention and reporting tool
US7015911B2 (en) 2002-03-29 2006-03-21 Sas Institute Inc. Computer-implemented system and method for report generation
US20040003353A1 (en) 2002-05-14 2004-01-01 Joey Rivera Workflow integration system for automatic real time data management
EP1367514A1 (en) 2002-05-29 2003-12-03 Framtidsforum I & M AB Method in connection with a spreadsheet program
US20030226105A1 (en) 2002-05-29 2003-12-04 Mattias Waldau Method in connection with a spreadsheet program
US20030233257A1 (en) 2002-06-13 2003-12-18 Gregor Matian Interactive patient data report generation
US7574652B2 (en) 2002-06-20 2009-08-11 Canon Kabushiki Kaisha Methods for interactively defining transforms and for generating queries by manipulating existing query data
US20040064449A1 (en) 2002-07-18 2004-04-01 Ripley John R. Remote scoring and aggregating similarity search engine for use with relational databases
US7058902B2 (en) 2002-07-30 2006-06-06 Microsoft Corporation Enhanced on-object context menus
US7945846B2 (en) 2002-09-06 2011-05-17 Oracle International Corporation Application-specific personalization for data display
US20040117731A1 (en) 2002-09-27 2004-06-17 Sergey Blyashov Automated report building system
JP2004145713A (ja) 2002-10-25 2004-05-20 Toukei Computer Co Ltd ブラウザのみで動作する「表計算」「ワープロ」ソフトによるドキュメント作成・管理システム
US20040100501A1 (en) 2002-11-25 2004-05-27 Dornback Jason Robert Method of dragging and dropping defined objects to or from a web page
US7266763B2 (en) 2002-11-26 2007-09-04 Microsoft Corporation User defined spreadsheet functions
US20040123246A1 (en) 2002-12-23 2004-06-24 Ju Wu Apparatus and method for creating new reports from discrete reports
US20040128147A1 (en) 2002-12-26 2004-07-01 Sundar Vallinayagam Method and system to implement complex pricing rules
US7949937B2 (en) 2002-12-31 2011-05-24 Business Objects Software Ltd Apparatus and method for delivering portions of reports
US7660843B1 (en) 2003-01-21 2010-02-09 Novell, Inc. Method and apparatus for dynamically delivering a gadget
US20040168115A1 (en) 2003-02-21 2004-08-26 Bauernschmidt Bill G. Method and system for visualizing data from multiple, cached data sources with user defined treemap reports
US6990632B2 (en) 2003-02-28 2006-01-24 Microsoft Corporation Method and system for inferring a schema from a hierarchical data structure for use in a spreadsheet
US7017112B2 (en) 2003-02-28 2006-03-21 Microsoft Corporation Importing and exporting markup language data in a spreadsheet application document
US7917382B2 (en) 2003-03-05 2011-03-29 Teradata Us, Inc. Integration of visualizations, reports, and data
US20040181748A1 (en) 2003-03-10 2004-09-16 International Business Machines Corporation Thin client framework deployment of spreadsheet applications in a web browser based environment
US7188308B2 (en) 2003-04-08 2007-03-06 Thomas Weise Interface and method for exploring a collection of data
US7007229B2 (en) 2003-04-11 2006-02-28 Sas Institute Inc. Computer-implemented system and method for web-based data access
US20040221233A1 (en) 2003-04-29 2004-11-04 David Thielen Systems and methods for report design and generation
US20060168536A1 (en) * 2003-06-05 2006-07-27 Swiss Reinsurance Company Method and terminal for generating uniform device-independent graphical user interfaces
CA2433523C (en) 2003-06-26 2010-06-29 Ibm Canada Limited - Ibm Canada Limitee Mehtod of displaying local and remote data objects and of interacting with same
US7299223B2 (en) 2003-07-16 2007-11-20 Oracle International Corporation Spreadsheet to SQL translation
US7047380B2 (en) 2003-07-22 2006-05-16 Acronis Inc. System and method for using file system snapshots for online data backup
US20050097146A1 (en) 2003-08-21 2005-05-05 Konstantinou Alexander V. Methods and systems for autonomously managing a network
US7406483B2 (en) 2003-09-02 2008-07-29 International Business Machines Corporation Provisioning of software components via workflow management systems
US20050068290A1 (en) 2003-09-28 2005-03-31 Denny Jaeger Method for creating and using user-friendly grids
EP1683049A1 (en) 2003-10-29 2006-07-26 Sap Ag Sytems and methods for searching and displaying reports
US7640496B1 (en) 2003-10-31 2009-12-29 Emc Corporation Method and apparatus for generating report views
US20050108052A1 (en) 2003-11-03 2005-05-19 Omaboe Nortey J. Proces for diagnosic system and method applying artificial intelligence techniques to a patient medical record and that combines customer relationship management (CRM) and enterprise resource planning (ERP) software in a revolutionary way to provide a unique-and uniquely powerful and easy-to-use-tool to manage veterinary or human medical clinics and hospitals
US20050165829A1 (en) 2003-11-04 2005-07-28 Jeffrey Varasano Systems, Methods and Computer Program Products for Developing Enterprise Software Applications
US7424154B2 (en) 2003-11-10 2008-09-09 Microsoft Corporation Boxed and lined input panel
US7650644B2 (en) 2003-11-25 2010-01-19 Sap Aktiengesellschaft Object-based access control
US7676785B2 (en) 2004-02-13 2010-03-09 Microsoft Corporation Hosted application as a designer in an integrated development environment
US8468444B2 (en) 2004-03-17 2013-06-18 Targit A/S Hyper related OLAP
US7584502B2 (en) 2004-05-03 2009-09-01 Microsoft Corporation Policy engine and methods and systems for protecting data
US8352423B2 (en) 2004-05-07 2013-01-08 Inceptia Llc Apparatus and method for providing streaming data
US20050268215A1 (en) 2004-06-01 2005-12-01 Microsoft Corporation Method and apparatus for viewing and interacting with a spreadsheet from within a web browser
US7673340B1 (en) 2004-06-02 2010-03-02 Clickfox Llc System and method for analyzing system user behavior
US20060013462A1 (en) 2004-07-15 2006-01-19 Navid Sadikali Image display system and method
CN101300564A (zh) 2004-07-16 2008-11-05 科格洛斯公司 用于具有多维数据存储器的企业规划系统的电子表格用户接口
KR101128572B1 (ko) 2004-07-30 2012-04-23 애플 인크. 터치 감지 입력 장치용 제스처
JP2006048110A (ja) * 2004-07-30 2006-02-16 Casio Comput Co Ltd 演算制御装置及びプログラム
US7698287B2 (en) 2004-09-30 2010-04-13 Microsoft Corporation Design of spreadsheet functions for working with tables of data
US7415481B2 (en) 2004-09-30 2008-08-19 Microsoft Corporation Method and implementation for referencing of dynamic data within spreadsheet formulas
US7584414B2 (en) 2005-02-01 2009-09-01 Microsoft Corporation Export to excel
US7680823B2 (en) 2005-05-17 2010-03-16 International Business Machines Corporation Custom report generation
CN1877505B (zh) 2005-06-10 2012-06-20 鸿富锦精密工业(深圳)有限公司 数位信息阅读装置及其控制方法
CN1904879B (zh) * 2005-07-27 2011-01-12 国际商业机器公司 电子表格系统及获取电子表格文档的快照/历史信息的方法
DE102005039608A1 (de) 2005-08-19 2007-03-01 Ormecon Gmbh Zusammensetzung mit intrinsisch leitfähigem Polymer
US7657571B2 (en) 2005-08-30 2010-02-02 Microsoft Corporation Electronic data snapshot generator
EP1922939B1 (en) 2005-09-08 2010-05-26 Ajinomoto Co., Inc. Process for producing an albumen free whole meat product and said product
US7752536B2 (en) 2005-09-09 2010-07-06 Microsoft Corporation Designating, setting and discovering parameters for spreadsheet documents
US20110145689A1 (en) 2005-09-09 2011-06-16 Microsoft Corporation Named object view over multiple files
US20070061699A1 (en) 2005-09-09 2007-03-15 Microsoft Corporation Named object view of electronic data report
JP2009042796A (ja) 2005-11-25 2009-02-26 Panasonic Corp ジェスチャー入力装置および方法
US7730425B2 (en) 2005-11-30 2010-06-01 De Los Reyes Isabelo Function-oriented user interface
US7908549B2 (en) 2005-12-08 2011-03-15 Microsoft Corporation Spreadsheet calculation as part of workflow
US9501463B2 (en) 2005-12-08 2016-11-22 Microsoft Technology Licensing, Llc Spreadsheet cell-based notifications
US7587661B2 (en) * 2006-01-19 2009-09-08 Microsoft Corporation Identifying design issues in electronic forms
US7667686B2 (en) 2006-02-01 2010-02-23 Memsic, Inc. Air-writing and motion sensing input for portable devices
US7676763B2 (en) 2006-02-21 2010-03-09 Sap Ag Method and system for providing an outwardly expandable radial menu
US8307119B2 (en) 2006-03-31 2012-11-06 Google Inc. Collaborative online spreadsheet application
WO2007121557A1 (en) 2006-04-21 2007-11-01 Anand Agarawala System for organizing and visualizing display objects
JP4290717B2 (ja) * 2006-08-29 2009-07-08 日本ユニシス株式会社 業務処理フロー図作成編集支援システムおよび支援プログラム
JP2008123199A (ja) 2006-11-10 2008-05-29 Nec Saitama Ltd 携帯電話機
US8468244B2 (en) 2007-01-05 2013-06-18 Digital Doors, Inc. Digital information infrastructure and method for security designated data and with granular data stores
US8316105B2 (en) 2007-03-22 2012-11-20 Microsoft Corporation Architecture for installation and hosting of server-based single purpose applications on clients
US20080271127A1 (en) 2007-04-24 2008-10-30 Business Objects, S.A. Apparatus and method for creating stand-alone business intelligence widgets within an authentication framework
US7702754B2 (en) 2007-05-23 2010-04-20 Sap Ag Enhanced widget architecture
US8578330B2 (en) 2007-06-11 2013-11-05 Sap Ag Enhanced widget composition platform
KR20090013551A (ko) 2007-08-02 2009-02-05 에스케이 텔레콤주식회사 제스쳐 인식 전자책 단말기 및 그 제어방법
US20090254846A1 (en) 2008-04-02 2009-10-08 Microsoft Corporation Interactive host-aware advertising
US8826181B2 (en) 2008-06-28 2014-09-02 Apple Inc. Moving radial menus
US8245156B2 (en) 2008-06-28 2012-08-14 Apple Inc. Radial menu selection
US8539444B2 (en) * 2008-06-30 2013-09-17 International Business Machines Corporation System and method for platform-independent, script-based application generation for spreadsheet software
US20100031152A1 (en) 2008-07-31 2010-02-04 Microsoft Corporation Creation and Navigation of Infinite Canvas Presentation
US8279174B2 (en) 2008-08-27 2012-10-02 Lg Electronics Inc. Display device and method of controlling the display device
US9081471B2 (en) 2008-09-19 2015-07-14 Oracle International Corporation Providing modal window views for widgets on web pages
US8255789B2 (en) 2008-09-30 2012-08-28 Apple Inc. Providing spreadsheet features
US20100100854A1 (en) 2008-10-16 2010-04-22 Dell Products L.P. Gesture operation input system
US20100131529A1 (en) 2008-11-26 2010-05-27 Vishal Kasera Open entity extraction system
US8351910B2 (en) 2008-12-02 2013-01-08 Qualcomm Incorporated Method and apparatus for determining a user input from inertial sensors
CN102246126B (zh) 2008-12-15 2015-11-25 惠普开发有限公司 基于手势的编辑模式
JP2010152801A (ja) * 2008-12-26 2010-07-08 Fxcm Japan Inc 外国為替取引プログラム及び外国為替取引システム
US9383897B2 (en) 2009-01-29 2016-07-05 International Business Machines Corporation Spiraling radial menus in computer systems
KR101617645B1 (ko) 2009-02-24 2016-05-04 삼성전자주식회사 디스플레이 제어 방법 및 이를 이용한 장치
US9053260B2 (en) 2009-04-13 2015-06-09 Honeywell International Inc. Utilizing spreadsheet user interfaces with flowsheets of a CPI simulation system
US8601389B2 (en) 2009-04-30 2013-12-03 Apple Inc. Scrollable menus and toolbars
US8549432B2 (en) 2009-05-29 2013-10-01 Apple Inc. Radial menus
US8281233B2 (en) 2009-06-15 2012-10-02 Microsoft Corporation Architecture to expose internal business data on a website
CN102096582A (zh) 2009-12-11 2011-06-15 谷歌公司 离线小工具集成开发环境
US9465532B2 (en) 2009-12-18 2016-10-11 Synaptics Incorporated Method and apparatus for operating in pointing and enhanced gesturing modes
JP5528229B2 (ja) 2010-06-23 2014-06-25 キヤノン株式会社 文書生成装置、文書生成システム、文書アップロード方法及びプログラム
KR20120001336A (ko) 2010-06-29 2012-01-04 삼성전자주식회사 컨텐트 변환 방법 및 그 장치
CN101882108A (zh) * 2010-06-30 2010-11-10 三一重机有限公司 嵌入式软件自动测试系统及其方法
US8825745B2 (en) * 2010-07-11 2014-09-02 Microsoft Corporation URL-facilitated access to spreadsheet elements
US8773370B2 (en) 2010-07-13 2014-07-08 Apple Inc. Table editing systems with gesture-based insertion and deletion of columns and rows
US20120072820A1 (en) 2010-09-19 2012-03-22 Weinman Jr Joseph Bernard Systems and Computer Program Products for Conducting Multi-Window Multi-Aspect Processing and Calculations
US9747270B2 (en) 2011-01-07 2017-08-29 Microsoft Technology Licensing, Llc Natural input for spreadsheet actions
US8924842B2 (en) * 2011-02-25 2014-12-30 Hewlett-Packard Development Company, L.P. Method and system to build interactive documents
WO2012129670A1 (en) 2011-03-31 2012-10-04 Smart Technologies Ulc Manipulating graphical objects γν a multi-touch interactive system
US9330080B2 (en) * 2011-06-27 2016-05-03 Sap Se Methods and systems to facilitate providing spreadsheet and database data to users via a social network
US8744821B2 (en) 2011-07-07 2014-06-03 Xldyn, Llc Spreadsheet-based templates for supporting the systems engineering process
US20130061122A1 (en) 2011-09-07 2013-03-07 Microsoft Corporation Multi-cell selection using touch input
US9053083B2 (en) 2011-11-04 2015-06-09 Microsoft Technology Licensing, Llc Interaction between web gadgets and spreadsheets
US9171099B2 (en) 2012-01-26 2015-10-27 Microsoft Technology Licensing, Llc System and method for providing calculation web services for online documents

Also Published As

Publication number Publication date
EP2774024A1 (en) 2014-09-10
EP2774024A4 (en) 2015-08-19
CN102981702B (zh) 2017-05-17
US9053083B2 (en) 2015-06-09
US20130117651A1 (en) 2013-05-09
JP6141858B2 (ja) 2017-06-07
JP2014534536A (ja) 2014-12-18
CN102981702A (zh) 2013-03-20
CN107256208A (zh) 2017-10-17
WO2013067236A1 (en) 2013-05-10
US9514116B2 (en) 2016-12-06
CN107256208B (zh) 2020-10-09
KR20140094529A (ko) 2014-07-30
US20150347372A1 (en) 2015-12-03

Similar Documents

Publication Publication Date Title
KR102050116B1 (ko) 웹 가젯과 스프레드시트 간의 상호 작용 기법
US10324592B2 (en) Slicer elements for filtering tabular data
US8990686B2 (en) Visual navigation of documents by object
JP6088520B2 (ja) 狭小ディスプレイ・デバイスのためのロール・ユーザー・インターフェース
US10762277B2 (en) Optimization schemes for controlling user interfaces through gesture or touch
US9177022B2 (en) User pipeline configuration for rule-based query transformation, generation and result display
US20130191785A1 (en) Confident item selection using direct manipulation
US20140304648A1 (en) Displaying and interacting with touch contextual user interface
KR102033801B1 (ko) 인플레이스 방식으로 값을 편집하는 사용자 인터페이스 제공 기법
US20130191779A1 (en) Display of user interface elements based on touch or hardware input
EP2972981A1 (en) Systems and methods for interacting with records via a publisher and an information feed
US20110271201A1 (en) Decentralized Contextual Collaboration Across Heterogeneous Environments
US20230385534A1 (en) Electronic document management system with a content status designation interface

Legal Events

Date Code Title Description
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right