KR20080064796A - 전자 데이터 스냅샷 생성기 - Google Patents

전자 데이터 스냅샷 생성기 Download PDF

Info

Publication number
KR20080064796A
KR20080064796A KR1020087003836A KR20087003836A KR20080064796A KR 20080064796 A KR20080064796 A KR 20080064796A KR 1020087003836 A KR1020087003836 A KR 1020087003836A KR 20087003836 A KR20087003836 A KR 20087003836A KR 20080064796 A KR20080064796 A KR 20080064796A
Authority
KR
South Korea
Prior art keywords
snapshot
data
electronic file
file data
retrieved electronic
Prior art date
Application number
KR1020087003836A
Other languages
English (en)
Other versions
KR101246996B1 (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 KR20080064796A publication Critical patent/KR20080064796A/ko
Application granted granted Critical
Publication of KR101246996B1 publication Critical patent/KR101246996B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • 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/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Medical Informatics (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

전자 데이터의 스냅샷은 특정 시점의 파일에 대한 정보를 제공하기 위해 생성된다. 스냅샷은 수 인의 사용자들 간에 공유될 수 있다. 스냅샷은 요청된 스냅샷의 유형에 기초하여 생성된다. 스냅샷 유형은 정적 스냅샷, 출판된 아이템 스냅샷 및 인터랙티브 스냅샷을 포함한다. 각각의 유형의 스냅샷에서는 사용자가 민감한 정보를 입수할 수 없도록 하여 파일 데이터의 일부를 숨길 수 있다. 정적 스냅샷은 파일과 연관된 정적 데이터만을 저장함으로써 생성된다. 인터랙티브 스냅샷은 파일과 연관된 정적 데이터를 저장함으로써 생성되지만, 동적 파일 데이터에 대한 어떤 참조나 링크도 유지된다. 출판된 아이템 스냅샷은 특정 파일 객체와 특정 객체와 연관된 정적 데이터를 포함한다.
정적 스냅샷, 인터랙티브 스냅샷, 출판된 아이템 스냅샷, 정적 데이터, 동적 데이터, 공유, 사유정보

Description

전자 데이터 스냅샷 생성기{ELECTRONIC DATA SNAPSHOT GENERATOR}
전자 개체 문서 공유로 인해 서로 다른 사용자들은 동일한 문서를 손쉽게 액세스할 수 있게 되었다. 다수의 서로 다른 사용자들은 동시에 동일한 문서를 액세스하고 수정할 수도 있다. 동시 다발적으로 수정이 행해지면 문서의 가장 최신 버전에 모든 사용자의 수정 사항이 반영되어 있지 않을 수도 있기 때문에, 그 문서를 요청하는 후속 사용자가 혼란을 겪을 수 있다. 문서 내의 데이터 값은 시간에 따라 변화할 수도 있다. 따라서, 종전 데이터 값을 가지는 이전 버전의 문서가 필요하지만 입수할 수 없는 경우가 있다. 공유 문서는 사유 정보 또한 포함할 수 있다. 예를 들어, 공유 문서는 민감한 재정 정보나, 거래 비밀 또는 다른 기밀 정보를 포함할 수 있다. 조직은 공유 문서를 액세스할 수 있는 모든 사용자와 이런 정보를 공유하기를 바라지는 않을 것이다.
전자 데이터의 스냅샷은 특정 시점의 파일에 대한 정보를 제공하기 위해 생성된다. 스냅샷은 수 인의 사용자들 간에 공유될 수도 있다. 스냅샷은 요청된 스냅샷 유형에 기초하여 생성된다. 스냅샷 유형은 정적 스냅샷, 출판된 아이템 스냅샷(published item snapshot) 및 인터랙티브 스냅샷을 포함한다. 각각의 유형의 스냅샷에서는 사용자가 민감한 정보를 입수할 수 없도록 파일 데이터의 일부가 숨겨질 수 있다. 정적 스냅샷은 파일과 연관된 정적 데이터만을 저장함으로써 생성된다. 메타데이터와 같은 파일과 연관된 어떤 동적 데이터도 정적 스냅샷 내에 저장되지 않는다. 동적 데이터의 예시는 공식(fomula)과 외부 데이터 소스에 대한 참조(reference)를 포함한다. 인터랙티브 스냅샷은 파일과 연관된 정적 데이터를 저장함으로써 생성된다. 그러나 인터랙티브 스냅샷은 동적 파일 데이터에 대한 어떤 참조나 링크도 유지한다. 따라서, 인터랙티브 스냅샷에서 동적 데이터에 링크된 값은 수동으로 현재 값으로 리프레쉬될 수 있다. 출판된 아이템 스냅샷은 특정 파일 객체와 특정 객체와 연관된 정적 데이터를 포함한다.
본 발명은 컴퓨터 프로세스, 컴퓨팅 시스템으로서 또는 컴퓨터 프로그램 제품이나 컴퓨터 판독가능 매체와 같은 제조물로서 구현될 수 있다. 컴퓨터 프로그램 제품은 컴퓨터 시스템에 의해 판독가능하며 컴퓨터 프로세스를 실행하기 위한 명령어들로 이루어진 컴퓨터 프로그램이 인코딩된 컴퓨터 저장 매체일 수 있다. 컴퓨터 프로그램 제품은 또한 컴퓨터 시스템 컴퓨팅 시스템에 의해 판독가능하며 컴퓨터 프로세스를 실행하기 위한 명령어들로 이루어진 컴퓨터 프로그램이 인코딩된, 캐리어 상에 실려 전파된 신호일 수 있다.
이하의 상세한 설명을 읽고 연관된 도면을 재고(review)하면 본 발명을 특징짓는 장점들뿐만 아니라 상기 및 여러 가지 기타 특징들이 명확해질 것이다.
도 1은 본 발명의 다양한 실시예에서 이용되며 제공되는 컴퓨터 시스템을 도시하는 컴퓨터 시스템 아키텍처 다이어그램이다.
도 2는 본 발명의 실시예에 대한 예시적인 운영 환경을 도시하는 네트워크 아키텍처 다이어그램이다.
도 3은 워크북과 이에 대응하는 정적 스냅샷을 도시하는 기능 블록도(functional block diagram)이다.
도 4는 워크북과 이에 대응하는 출판된 아이템 스냅샷을 도시하는 기능 블록도이다.
도 5는 워크북과 이에 대응하는 인터랙티브 스냅샷을 도시하는 기능 블록도이다.
도 6은 정적 스냅샷을 생성하는 예시적인 프로세스의 특징을 보여주는 순서도(process diagram)이다.
도 7은 인터랙티브 스냅샷을 생성하는 예시적인 프로세스의 특징을 보여주는 순서도이다.
도 8은 출판된 아이템 스냅샷을 생성하는 예시적인 프로세스의 특징을 보여주는 순서도이다.
이제 동일 숫자가 동일 구성요소를 나타내는 도면을 참조하여, 본 발명의 다양한 특징이 기술될 것이다. 특히, 도 1과 해당 설명은 본 발명의 실시예들이 구현될 수 있는 적합한 컴퓨팅 환경에 대한 간단하고 일반적인 기술을 제공하려는 것이다. 본 발명은 서버 및 개인 컴퓨터 시스템 상에서 실행되는 일반적인 프로그램 모듈 환경에서 기술되지만, 당업자는 본발명이 기타 유형의 컴퓨터 시스템 및 프로 그램 모듈의 조합 내에서 또한 구현될 수 있다는 것을 인식할 것이다.
일반적으로, 프로그램 모듈은 루틴, 프로그램, 컴포넌트, 데이터 구조, 또는 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 기타 유형의 데이터 구조를 포함한다. 더욱이, 당업자는 본 발명이 핸드-헬드 장치, 멀티프로세서 시스템, 마이크로프로세서 기반 또는 프로그램가능한 가전 제품, 미니 컴퓨터, 메인 프레임 컴퓨터 등을 포함하는 기타 컴퓨터 시스템 구성과 함께 실시될 수 있음을 이해할 것이다. 본 발명은 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 태스크가 수행되는 분산 컴퓨팅 환경에서 실시되도록 설계된다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 매체 양쪽에 위치할 수 있다.
이제 도 1을 참조하여, 본 발명의 다양한 실시예에서 사용되는 컴퓨터(100)에 대한 예시적인 컴퓨터 아키텍처가 기술될 것이다. 도 1에 도시된 컴퓨터 아키텍처는, 중앙 처리 장치("CPU"; 110), 시스템 메모리(120), 랜덤 액세스 메모리("RAM"; 122), 판독 전용 메모리("ROM"; 124) 및 메모리를 CPU(110)에 연결시키는 시스템 버스(130)를 포함하는 통상적인 데스크톱 또는 랩톱 컴퓨터를 도시한다. 시동 중과 같은 때에, 컴퓨터 내의 구성요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템은 ROM(124)에 저장되어 있다. 컴퓨터(100)는 이하에서 매우 상세히 기술될 운영 체제(142), 애플리케이션 프로그램 및 기타 프로그램 모듈을 저장하기 위한 대용량 저장 장치 대용량 저장 장치를 더 포함한다.
메모리 저장장치(140)은 버스(130)에 연결되어 대용량 저장 장치 컨트롤러 (도시없음)를 통해 CPU에 연결된다. 대용량 저장장치(140) 및 이와 연관된 컴퓨터 판독가능 매체는 컴퓨터(100)에게 비휘발성 저장장치를 제공한다. 비록 여기 포함된 컴퓨터 판독가능 매체에 대한 설명으로서 하드 디스크나 CD-ROM과 같은 대용량 저장 장치를 언급하였지만, 당업자는 컴퓨터(100)에 의해 액세스 가능한 매체는 그 어떤 것이든지 컴퓨터 판독가능 매체가 될 수 있음을 이해하여야할 것이다.
예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함하지만 이에 제한되는 것은 아니다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장하는 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 고상(solid state) 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터(100)에 의해 액세스되고 원하는 정보를 저장할 수 있는 임의의 기타 매체를 포함하지만 이에 제한되는 것은 아니다.
본 발명의 다양한 실시예에 따르면, 컴퓨터(100)는 인터넷과 같은 네트워크(150)를 통한 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 컴퓨터(100)는 버스(130)에 접속된 네트워크 인터페이스 장치(network interface unit; 160)를 통해 네트워크(150)에 접속할 수 있다. 네트워크 인터페이스 장치(160)는 다른 유형의 네트워크 및 원격 컴퓨터 시스템으로 접속하는데 사용될 수 있음을 이해하여야할 것이다. 컴퓨터(100)는 키보드,마우스 또는 스타일러스(stylus; 도 1 내에 도시되지 않음)를 포함하는 수 개의 기타 장치로부터의 입력을 처리하고 수신하기 위하여 입/출력 컨트롤러(input/output controller; 170) 또한 포함할 수 있다. 유사하게, 입/출력 컨트롤러(170)는 디스플레이 화면, 프린터, 또는 기타 유형의 출력 장치로 출력을 제공할 수 있다.
상기에 간단히 언급된 것처럼, 수 개의 프로그램 모듈과 데이터 파일은, 네트워크화된 퍼스널 컴퓨터를 제어하는데 적합한, 이를테면 워싱턴(Washington)주 레드몬드(Redmond)시의 마이크로소프트 코포레이션(MICROSOFT CORPORATION)에서 나온 윈도우즈 엑스피(WINDOWS XP) 운영 체제와 같은 운영 체제(142)를 포함하여, 컴퓨터(100)의 RAM(122) 및 대용량 저장 장치(140) 내에 저장될 수 있다. 대용량 저장 장치(140) 및 RAM(122)은 하나 이상의 프로그램 모듈 또한 저장할 수 있다. 특히, 대용량 저장 장치(140) 및 RAM(122)는 웹 브라우저 애플리케이션 프로그램(144)을 저장할 수 있다. 당업자에게 알려진 바와 같이, 웹 브라우저 애플리케이션 프로그램(144)은 동작하여 HTML을 사용하여 포맷된 웹 페이지(146)와 같은 전자 문서를 요청하고, 수신하고, 표현(render)하고, 또한 전자 문서와의 상호 작용을 제공한다. 본 발명의 일 실시예에 따르면, 웹 브라우저 애플리케이션 프로그램(144)은 마이크로소프트 코포레이션에서 나온 인터넷 익스플로러(INTERNET EXPLORER) 웹 브라우저 애플리케이션 프로그램을 포함한다. 그러나, 모질라 파운데이션(MOZILLA FOUNDATION)에서 나온 파이어폭스(FIREFOX) 웹 브라우저 애플리케이션과 같이, 기타 제조사로부터 나온 기타 웹 브라우저 애플리케이션 프로그램 또한 본 발명의 다양한 특징을 실시하는데 사용될 수 있음을 이해하여야할 것이다.
이하에 더 상세히 기술될 바와 같이, 웹 페이지(146)는 스프레드시트 애플리케이션 프로그램(148)으로 작성된 스프레드시트 문서의 스냅샷에 대한 가시적인(veiwable) 표현을 포함한다. 스프레드시트 애플리케이션 프로그램(148)은 마이크로소프트 코포레이션의 엑셀(EXCEL) 스프레드시트 애플리케이션 프로그램 또는 기타 제조회사의 기타 스프레드시트 애플리케이션 프로그램을 포함할 수 있다. 스프레드시트 문서의 스냅샷을 생성하는 프로세스에 관한 추가적인 상세 사항은 도 2 내지 도 8을 참조하여 제공된다.
이제 도 2를 참조하여, 본 발명의 다양한 실시예를 위한 운영 환경을 도시하는 네트워크 아키텍처 다이어그램이 기술될 것이다. 도 2에 도시된 바와 같이, 컴퓨터(100)는 네트워크(150)에 연결된다. 애플리케이션 서버(210) 또한 네트워크(150)에 연결된다. 애플리케이션 서버(210)는 상기에 도 1을 참조하여 기술된 통상적인 컴퓨팅 컴포넌트들 중 일부 또는 전부를 포함할 수 있다. 부가적으로, 애플리케이션 서버(210)는 동작하여 애플리케이션 서버(210)이 액세스 가능하거나 애플리케이션 서버(210)에 저장된 문서에 대한 요청을 수신하고 이에 응답하기 위한 웹 서버 애플리케이션을 실행한다. 게다가, 애플리케이션 서버(210)는 동작하여 웹 애플리케이션(220)에 의해 생성된 페이지에 대한 요청을 수신하고 이에 응답한다. 웹 애플리케이션(220)은 애플리케이션 서버(210)에서 실행가능한 코드(다른 컴퓨터와 통신하기 위한 실행가능 코드)를 포함할 수 있고 템플릿, 그래픽, 오디오 파일, 및 당업자에게 알려진 기타 콘텐츠를 포함할 수 있다.
웹 애플리케이션(220)은 동작하여 컴퓨터(100)의 사용자가 네트워크(150)를 통하여 액세스 가능한 워크북 또는 스프레드시트의 스냅샷을 볼 수 있도록 인터페이스를 제공한다. 특히, 웹 애플리케이션(220)은 서버 애플리케이션 프로그래밍 인터페이스("API"; 222)를 이용한다. 본 발명의 본 실시예에 따르면 서버 API(222)가 동작하여 스프레드시트 계산 서버(230)와 통신하는 것이 가능해진다. 스프레드시트 서버(230)는 동작하여 스프레드시트 계산 서버 프로그램(232)을 실행한다. 스프레드시트 계산 서버 프로그램(232)은, 데이터 기억 장치(240) 내에 저장된 워크북(242)과 같은 스프레드시트를 검색 및 계산하기 위한 실행 프로그램을 포함한다. 여기에 기술된 본 발명의 상기 실시예들에서 스프레드시트 계산 서버(230)은 다수의 통상적인 하드웨어와 도 1을 참조하여 상기에 설명한 소프트웨어 컴포넌트를 포함할 수 있다.
컴퓨터(100)는 웹 브라우저 애플리케이션(144) 환경(context) 내에서 워크북(242)의 스냅샷에 대한 요청을 애플리케이션 서버(210)로 전송할 수 있다. 이런 요청에 응하여, 웹 애플리케이션(220)은 서버 API(222)를 통하여 스프레드시트 계산 서버(230)와 통신한다. 특히, 웹 애플리케이션(220)은 스프레드시트 계산 서버(230)로부터 워크북(242)에 대한 적절한 스냅샷을 요청한다.
이하에 상세하게 기술된 바와 같이, 스프레드시트 계산 서버 프로그램(232)은 데이터 기억 장치(240)로부터 적절한 워크북(242)을 로드(load)하고 요청된 스냅샷의 유형에 따라 워크북(242)을 처리함으로써 워크북(242)의 스냅샷을 생성한다. 스냅샷의 유형은 정적 스냅샷, 동적 스냅샷, 및 출판된 아이템 스냅샷을 포함한다. 스프레드시트 계산 서버 프로그램(232)은 워크북(242)의 스냅샷을 스프레드 시트의 내용을 표현하는데 적합한 포맷으로 변환할 수 있다. 일실시예에서, 워크북의 스냅샷은 엑셀 파일 포맷으로 변환될 수 있다. 스프레드시트 계산 서버 프로그램이 요청된 워크북(242)의 스냅샷을 적절한 포맷으로 변환하자마자, 포맷된 파일이 웹 애플리케이션(220)으로 반환된다. 애플리케이션 서버(210)는 포맷된 파일을 네트워크(150)을 통해 클라이언트(100)에 전달한다. 포맷된 파일은 클라이언트(100)에 저장되고 적절한 애플리케이션 프로그램을 통해 액세스될 수 있다.
스냅샷은 사용자가 추후에 스냅샷을 액세스하여 스냅샷이 생성되었을 때의 파일 데이터 상태를 확인할 수 있도록 특정 시점의 파일(예: 워크북)에 대한 정보를 제공한다. 워크북의 소유자는 요청 사용자에게 제출되는 각기 다른 유형의 스냅샷을 파악할 수 있다. 스냅샷은 정적 스냅샷, 동적 스냅샷, 출판된 아이템 스냅샷과 같은 각기 다른 유형의 스냅샷을 포함한다. 각각의 유형의 스냅샷에서 워크북 데이터의 일부는 요청 사용자로부터 숨겨질 수 있다. 숨겨진 데이터는 소유자가 요청자와 공유하고 싶지 않은 사유 정보를 포함할 수 있다.
워크북은 서로 다른 객체들(예: 테이블, 피봇 테이블, 셀, 일정 범위의 셀, 차트 등)을 포함할 수 있다. 워크북의 객체는 디스플레이된 값과 연관되고 메타데이터는 (예를들어, 포맷하기 위한) 상기 값과 연관된다. 일실시예에서, 메타데이터는 외부 데이터 소스에 대한 참조 또는 값을 생성하는 공식과 같은 동적 데이터에 해당할 수 있다.
도 3은 워크북 및 이에 대응하는 정적 스냅샷을 도시한다. 워크북(300)에 포함된 어떤 데이터는 수 개의 시트에 걸쳐 존재할 수도 있다. 한 시트는 외부 데 이터 소스(310)에 대한 참조(305)를 포함할 수 있다. 예를 들어, 참조(305)는 현재 주가 정보를 포함하는 URL에 대한 링크를 제공할 수 있다. 워크북(300)은 값(예: Y)을 계산하는데 사용하는 공식(315) 또한 포함할 수 있다. 공식(315)은 변수(320)의 값에 종속적일 수 있다. 예를 들어, 공식(315)은 고객의 수를 파악하는 변수를 사용할 수도 있다. 따라서 변수(320)의 값이 변화할 때 공식(315)의 값은 변화한다. 워크북(300)은 테이블(325) 및 차트(330)와 같은 객체 또한 포함할 수 있다. 어떤 워크북 데이터는 사유 정보(335)를 포함할 수도 있다. 사유정보의 예시는 코멘트(comment), 교정 부호, 삭제된 텍스트, 개인 정보, 이메일 헤더, 라우팅 슬립(routing slip), 사용자 이름, 잉크 주석(ink annotation), 파일 경로를 포함한다. 일실시예에서, 사유 정보는 공식과 연관될 수 있다. 예를 들어, 공식은 소유자가 요청 사용자와 공유하기를 원하지 않는 복잡한 계산 모델을 제공할 수 있다. 또 다른 실시예에서, 사유 정보는 외부 데이터 소스(310)과 연관된다. 예를 들어, 외부 데이터 소스(310)는 소유자가 요청 사용자와 공유하기를 원하지 않는 서버 이름, 연결 문자열, 쿼리, 자격 증명 등을 파악할 수 있다.
정적 스냅샷(350)은 적절한 시점에 오직 워크북(300)과 연관된 정적 객체 정보만을 저장하고 어떤 동적 워크북 데이터도 모두 삭제함으로써 생성된다. 정적 객체 정보의 예시는 테이블(325)과 차트(330)를 포함한다. 정적 스냅샷(350)은 정적 스냅샷(350)을 액세스하는 모든 사용자에게 동일한 워크북 데이터가 보여지는 것을 보장한다. 워크북 객체와 연관된 포맷 또한 정적 스냅샷과 함께 저장된다. 사유 정보(335)는 정적 스냅샷(350)에 포함되지 않는다. 워크북 객체와 연관된 어 떤 메타데이터도 정적 스냅샷(350)에 포함되지 않는다.
정적 객체 정보는 워크북 내에 표현된 공식 계산으로부터 값을 연산함으로써 생성될 수 있다. 동적 워크북 데이터로 구성된 공식은 정적 스냅샷에 저장되지 않는다. 단지, 공식 계산의 결과 값만이 저장된다. 예를 들어, 스냅샷이 생성되었을 때 고객의 숫자는 3(즉, X=3)이다. 공식의 값은 스냅샷이 생성될 때 존재하는 조건에 기초하여 계산되고 (즉, Y=5) 저장된다.
정적 객체 정보는 워크북에서 참조된 임의의 외부 데이터를 리프레쉬(refresh)함으로써 생성된다. 예컨데, 정적 스냅샷(350)이 생성될 때, 외부 데이터 소스(310)로부터 리프레쉬된 참조 주가는 $14.95 이다. 스냅샷이 생성될 때의 주가의 값(즉, $14.95)이 정적 스냅샷에 저장된다. 그리고 나서 상기 값은 외부 데이터 소스(310)로부터 (예를 들어, 링크(307)를 제거함으로써) 분리된다. 따라서, 상기 값은 후속적으로 갱신(update) 되지 못하고 상기 값의 원본 소스가 보존된다.
도 4는 워크북 및 이에 대응하는 출판된 아이템 스냅샷을 도시한다. 워크북(400)에 포함된 어떤 데이터는 수 개의 시트에 걸쳐서 존재할 수도 있다. 한 시트는 외부 데이터 소스(410)에 대한 참조(405)를 포함할 수 있다. 예컨대, 상기 참조(405)는 URL에 대한 링크(407)를 제공할 수 있다. 워크북(400)은 또한 공식(415)과 테이블(425), 이미지(430) 및 차트(330)와 같은 객체를 포함할 수 있다.
출판된 아이템 스냅샷(450)은 특정 워크북 객체를 포함한다. 워크북 소유자는 어느 객체가 출판된 아이템 스냅샷(450)에 포함되고 요청 사용자가 어느 객체를 이용가능하게 할지 특정할 수 있다; 특정되지 않은 객체는 출판된 아이템 스냅샷(450) 내에 포함되지 않는다. 예컨대, 워크북 소유자는 테이블(425), 이미지(430) 그리고 차트(435)를 선택하여 출판된 아이템 스냅샷(450)에 포함되게 할 수 있다. 출판된 아이템 스냅샷(450)은 외부 데이터 소스에 대한 어떤 참조도 제거된다는 점 때문에 정적 스냅샷과 유사하다. 예컨대, 외부 데이터 소스(410)에 대한 링크(407)는 제거된다.
일실시예에서, 출판(publication)을 위해 선택된 각각의 객체는 출판된 객체와 사용자 간의 상호작용을 단순화하도록 출판된 아이템 스냅샷(450) 내의 개별 시트에 배치된다. 예컨대, 이미지(430)와 차트(435)는 워크북(400) 내의 동일 시트 상에 포함된다. 출판된 아이템 스냅샷(450)이 생성될 때, 이미지(430)는 하나의 시트에 포함되고 차트는 다른 시트에 포함된다. 각각의 시트는 시트에 포함된 출판된 객체를 식별하도록 명명될 수 있다.
또 다른 실시예에서 출판된 아이템 스냅샷(450) 내에서 출판을 위해 선택된 각각의 객체는 시트 상에 출판된 객체가 시각적으로 쉽게 식별될 수 있도록 배치될 수 있다. 예컨대, 테이블(425)은 워크북 내의 시트의 우측 하단에 배치된다. 출판된 아이템 스냅샷(450)이 생성될 때, 테이블(425)은 출판된 아이템 스냅샷(450) 내의 시트의 좌측 상단에 배치된다. 스프레드시트는 상당히 클 수 있기 때문에 (예컨대 수천 개의 행과 수백 개의 열을 가지는 크기), 이러한 특징은 유용하다. 만일, 출판된 객체가, 출판된 아이템 스냅샷(450)이 사용자 인터페이스로 로드될 때 워크북 시트 내에서 보이는 부분이 아닌 부분인 위치로부터 복사된다면, 출판된 아이템 스냅샷(450)을 위해 생성된 새로운 시트를 보는 사용자는 시트가 비었다고 착각할 수 있다. 시트는 출판된 객체가 보일 수 있도록 스크롤 되어야 할 것이다.
도 5는 워크북과 이에 대응하는 인터랙티브 스냅샷을 도시한다. 인터랙티브 스냅샷(550)은 특정 시점에 워크북(500)과 연관된 객체 정보(예: 공식으로부터 얻은 값, 외부 데이터 소스에 대한 참조 등)를 저장함으로써 생성된다. 인터랙티브 스냅샷(550)은 워크북(500) 내의 객체와 연관된 메타데이터를 포함하는 동적 워크북 데이터에 대한 링크를 유지한다. 예컨대, 인터랙티브 스냅샷(550)은 값을 워크북(500) 내의 공식으로부터 분리하지 않는다. 인터랙티브 스냅샷(550)은 워크북(500) 내의 참조(505)와 외부 데이터 소스(510) 간의 링크(507)를 유지한다. 워크북에 포함된 코멘트 또한 인터랙티브 스냅샷(550)과 함께 저장될 수 있다. 워크북(500)과 연관된 임의의 사유 정보(535) 또한 인터랙티브 스냅샷(550)과 연관되어 있지만, 이 사유 정보(535)는 인터랙티브 스냅샷(550)을 요청하는 사용자로부터 숨겨질 수 있다. 인터랙티브 스냅샷(550)이 생성될 때 저장되는 값을 수동으로 현재값으로 리프레쉬할 수 있도록 하기 위해 인터랙티브 스냅샷(550)에서는 동적 워크북 데이터와 연관된 어떤 자동 갱신 특성도 비활성화될 수 있다. 따라서, 사용자는 워크북(500)의 현재 버전과 연관된 데이터를 보기 위해 인터랙티브 스냅샷(550)을 리프레쉬할 수 있다. 인터랙티브 스냅샷은 데이터 레코드를 수록하는데 유용할 수 있다.
이제 도 6 내지 도 8을 참조하여, 전자 데이터의 스냅샷을 생성하는 프로세 스를 도시하는 예시적인 루틴이 기술될 것이다. 여기에 기술된 본 발명의 실시예들이 스프레드시트 애플리케이션 프로그램 환경 내에서 제시되었지만, 본 발명은 문서 공유를 제공하는 기타 유형의 애플리케이션 프로그램 내에서도 활용될 수 있다. 예컨대, 여기에 기술된 본 발명의 실시예들은 전용 애플리케이션 프로그램의 필요없이 문서의 표현 및 문서와의 상호 작용을 가능하게 하기 위해서, 워드 프로세싱 애플리케이션 프로그램, 프리젠테이션 애플리케이션 프로그램, 작도(drawing) 또는 캐드(CAD ;computer aided design) 프로그램, 또는 데이터베이스 애플리케이션 프로그램 내에서 활용될 수 있다.
여기에 나타난 루틴의 설명을 읽을 때, 본 발명의 다양한 실시예에서 논리 연산은 (1)컴퓨터 시스템 상에서 실행되는 프로그램 모듈 또는 컴퓨터 구현 동작(computer implemented acts)의 시퀀스 및/또는 (2)컴퓨팅 시스템 내에서 상호 연결된 기계 논리 회로(machine logical circuit) 또는 회로 모듈로서 구현된다는 것이 이해될 것이다. 구현은 본 발명을 구현할 컴퓨팅 시스템의 성능 사양에 의존하는 선택의 문제이다. 따라서, 도 6 내지 도 8에서 도시된 논리적 연산 및 여기에 기술된 본 발명의 실시예는 연산으로서, 구조적 장치로서, 행위(act) 또는 모듈로서 다양하게 지칭될 수 있다. 당업자는 이 연산, 구조적 장치, 행위 및 모듈이 소프트웨어로써, 펌웨어로써, 특별한 목적의 디지털 로직으로써, 그리고 본 발명의 사상과 범주를 벗어나지 않는 범위 내에서 여기에 첨부된 청구항 내에 기술된 바에 따라 임의로 이들을 조합한 것으로서 인식할 것이다.
도 6은 정적 스냅샷을 생성하는 예시적인 프로세스의 특징을 나타내는 순서도이다. 프로세스는 애플리케이션이 클라이언트에 로드 되는 개시 블록에서 시작한다. 사용자는 클라이언트 측에서 정적 스냅샷 요청을 제출함으로써 정적 스냅샷의 생성을 초기화한다.
스프레드시트 계산 서버는 블록(600)에서 정적 스냅샷 요청을 수신한다. 스프레드시트 계산 서버는 정적 스냅샷 요청을 클라이언트로부터 직접 수신할 수 있다. 다른 방법으로, 정적 스냅샷 요청은 스프레드시트 계산 서버와 통신하는 웹 애플리케이션 프로그램을 통해 네트워크 상으로 전송될 수도 있다.
블록(610)으로 이동하면, 스프레드시트 계산 서버는 정적 스냅샷 요청에 연관된 워크북 데이터를 검색한다. 워크북 데이터는 스프레드시트 계산 서버와 통신하는 데이터 기억 장치로부터 검색될 수 있다. 워크북 데이터는 각기 다른 객체들(예: 테이블, 셀, 일정 범위의 셀, 차트 등)을 포함할 수도 있다. 워크북의 객체는 디스플레이된 값 및 (예를 들어 포맷하기 위해서) 값과 연관된 메타데이터와 연관될 수 있다. 일 실시예에서, 메타데이터는 외부 데이터 소스에 대한 참조 또는 값을 생성하는 공식과 같은 동적 데이터에 해당할 수 있다.
블록(620)으로 옮겨가면 외부 데이터 소스와 링크된 어떤 워크북 데이터도 리프레쉬 된다. 리프레쉬된 데이터는 정적 스냅샷이 생성될 때 현재 값을 제공한다. 블록(630)으로 진행되면, 워크북 데이터 내의 어떤 공식도 해당 값을 생성하기 위해 계산된다. 생성된 값은 정적 스냅샷에 저장된다.
블록(640)으로 이어지면, 워크북 데이터 내의 어떤 외부 데이터 참조도 외부 데이터 소스로부터 분리된다. 따라서, 외부 데이터 참조는 정적 스냅샷이 생성된 이후에는 갱신될 수 없다. 블록(650)으로 진행되면, 언제 정적 스냅샷이 액세스 되든지 값이 바뀌지 않도록 값은 공식으로부터 분리된다.
블록(660)으로 이동하면, 워크북 데이터 내의 어떤 사유 정보도 제거된다. 사유 정보는 워크북의 소유자가 정적 스냅샷을 액세스 하는 사용자와 공유하길 원하지 않는 워크북 데이터를 포함한다. 사유정보의 예시는 코멘트, 교정 부호, 삭제된 텍스트, 개인 정보, 이메일 헤더, 라우팅 슬립, 사용자 이름, 잉크 주석, 파일 경로를 포함한다.
블록(670)으로 옮겨가면, 워크북 데이터 내의 객체와 연관된 메타데이터가 제거된다. 그러나, 객체가 워크북 내에서와 동일한 방식으로 정적 스냅샷 내에 디스플레이될 수 있도록 객체와 연관된 어떤 포맷 정보도 유지된다.
블록(680)으로 진행되면, 정적 스냅샷은 저장된다. 정적 스냅샷은 특정 시점의 워크북 데이터에 대한 정보를 제공한다. 정적 스냅샷을 액세스하는 사용자들이 민감한 정보를 보는 것을 방지하도록 워크북 데이터의 일부분은 정적 스냅샷 내에 포함되지 않는다.
블록(690)으로 이어지면, 스프레드시트 애플리케이션 서버는 정적 스냅샷을 클라이언트 측에서 표현될 수 있는 포맷으로 변환한다. 일 실시예에서, 정적 스냅샷은 스프레드시트 파일 포맷으로 변환된다. 그리고나서 파일은 클라이언트 측에서 표현된다. 프로세스는 종료 블록에서 종결된다.
도 7은 인터랙티브 스냅샷을 생성하는 예시적인 프로세스의 특징을 보여주는 순서도이다. 프로세스는 애플리케이션이 클라이언트 상에 로드되는 개시 블록에서 시작한다. 사용자는 클라이언트 측에서 인터랙티브 스냅샷 요청을 제출함으로써 인터랙티브 스냅샷의 생성을 초기화한다.
스프레드시트 계산 서버는 블록(700)에서 인터랙티브 스냅샷 요청을 수신한다. 스프레드시트 계산 서버는 클라이언트로부터 직접 인터랙티브 스냅샷 요청을 수신할 수도 있다. 다른 방법으로, 인터랙티브 스냅샷 요청은 스프레드시트 계산 서버와 통신하는 웹 애플리케이션 프로그램을 통해 네트워크 상으로 전송될 수 있다.
블록(710)으로 이동하면, 스프레드시트 계산 서버는 인터랙티브 스냅샷 요청과 연관된 워크북 데이터를 검색한다. 워크북 데이터는 스프레드시트 계산 서버와 통신하는 데이터 기억장치로부터 검색될 수도 있다. 워크북 데이터는 서로 다른 객체를 포함할 수도 있다. 워크북의 객체는 디스플레이된 값 및 값과 연관된 메타데이터와 연관될 수 있다. 일 실시예에서, 메타데이터는 외부 데이터 소스에 대한 참조 또는 값을 생성하는 공식과 같은 동적 데이터에 해당할 수 있다.
블록(720)으로 옮겨가면, 외부 데이터 소스와 링크된 어떤 워크북 데이터도 리프레쉬된다. 리프레쉬된 데이터는 정적 스냅샷이 생성될 때 현재 값을 제공한다. 정적 스냅샷을 생성하는 프로세스과 달리, 워크북 데이터 내의 객체와 연관된 메타데이터는 유지된다. 예컨대, 워크북 내의 외부 데이터 참조는 외부 데이터 소스로부터 분리되지 않는다. 외부 데이터 소스와 외부 데이터 참조간의 링크를 유지하는 것은 외부 데이터 참조가 사용자 행위에 응답하여 갱신 되는 것을 가능하게 해준다. 블록(730)으로 진행되면, 워크북 내의 임의의 공식은 해당 값을 생성하기 위하여 계산된다. 생성된 값은 인터랙티브 스냅샷 내에 저장된다. 그러나, 생성된 값은 공식으로부터 분리되지 않는다. 값과 공식의 링크를 유지함으로써 사용자 행위에 응답하여 값이 갱신 되는 것이 가능하게 된다.
블록(740)으로 이어지면, 외부 데이터 소스에 대한 참조를 자동으로 갱신하는 특성은 비활성화된다. 따라서 외부 데이터 소스에 대한 참조는 오직 수동으로만 갱신될 수도 있다. 블록(750)으로 진행되면, 자동 공식 계산 특성은 비활성화된다. 따라서, 공식은 사용자 행위에 응답하여서만 다시 계산될(recalculate) 수 있다.
블록(760)으로 이동하면, 워크북 데이터 내의 임의의 사유 정보는 인터랙티브 스냅샷 내에서 숨겨진다. 사유 정보는 워크북의 소유자가 인터랙티브 스냅샷을 액세스하는 사용자와 공유하기를 원하지 않는 워크북 데이터를 포함한다. 사유 정보는 소유자가 인터랙티브 스냅샷 내의 사유정보를 공개하거나 사유 정보와 관련된 값을 갱신 할 수 있도록, 인터랙티브 스냅샷과 연관된 상태로 유지된다.
블록(770)으로 옮겨가면, 인터랙티브 스냅샷은 저장된다. 인터랙티브 스냅샷은 특정 시점의 워크북 데이터에 대한 정보를 제공한다. 워크북 데이터의 일부분은 인터랙티브 스냅샷을 액세스하는 사용자가 민감한 정보를 보는 것을 방지하도록 인터랙티브 스냅샷에 포함되지 않는다. 링크들은 워크북 내의 객체와 연관된 메타데이터를 포함하는 동적 데이터를 향해 연결된다. 동적 데이터의 예시는 값과 해당 공식 및 외부 데이터 참조와 외부 데이터 소스를 포함한다. 따라서, 인터랙 티브 스냅샷은 사용자 행위에 응답하여 수동으로 갱신될 수 있다.
블록(780)으로 진행되면, 스프레드시트 애플리케이션 서버는 인터랙티브 스냅샷을 클라이언트 측에서 표현될 수 있는 포맷으로 변환한다. 일 실시예에서, 인터랙티브 스냅샷은 스프레드시트 파일 포맷으로 변환된다. 그리고나서 파일은 클라이언트 측에서 표현된다.
블록(790)으로 이어지면, 인터랙티브 스냅샷 내의 임의의 동적 워크북 데이터는 사용자 행위에 응답하여 갱신될 수 있다. 사용자는 “리프레쉬” 또는 “갱신” 버튼을 클릭함으로써 동적 데이터의 갱신을 초기화할 수 있다. 인터랙티브 스냅샷의 동적 특징은 데이터를 기록할 때 유용하다. 프로세스는 종료 블록에서 종결된다.
도 8은 출판된 아이템 스냅샷을 생성하는 예시적인 프로세스의 특징을 나타내는 순서도이다. 프로세스는 애플리케이션이 클라이언트에 로드되는 개시 블록에서 시작한다. 사용자는 클라이언트 측에서 출판된 아이템 스냅샷 요청을 제출함으로써 출판된 아이템 스냅샷의 생성을 초기화한다.
스프레드시트 계산 서버는 블록(800)에서 출판된 아이템 스냅샷 요청을 수신한다. 스프레드시트 계산 서버는 출판된 아이템 스냅샷 요청을 클라이언트로부터 직접 수신할 수 있다. 다른 방법으로, 출판된 아이템 스냅샷 요청은 스프레드시트 계산 서버와 통신 하는 웹 애플리케이션 프로그램을 통해 네트워크 상으로 송신될 수도 있다.
블록(805)으로 이동하면, 스프레드시트 계산 서버는 출판된 아이템 스냅샷 요청에 연관된 워크북 데이터를 검색한다. 워크북 데이터는 스프레드시트 계산 서버와 통신하는 데이터 기억 장치로부터 검색될 수 있다. 워크북 데이터는 각기 다른 객체들(예: 테이블, 피봇 테이블, 셀, 일정 범위의 셀, 차트 등)을 포함할 수도 있다. 객체의 일부분은 출판된 아이템 스냅샷 내에서의 출판(publication)을 위해서 선택된다. 워크북의 객체는 디스플레이된 값 및 (예를 들어 포맷하기 위해서) 값과 연관된 메타데이터와 연관될 수 있다. 일 실시예에서, 메타데이터는 외부 데이터 소스에 대한 참조 또는 값을 생성하는 공식과 같은 동적 데이터에 해당할 수 있다.
블록(810)으로 옮겨가면 스프레드시트 계산 서버는 출판을 위해 선택된 객체를 워크북 데이터 내에 위치시킨다. 블록(815)으로 진행되면 외부 데이터 소스와 링크된 어떤 워크북 데이터도 리프레쉬 된다. 리프레쉬된 데이터는 출판된 아이템 스냅샷이 생성될 때 현재 값을 제공한다. 블록(820)으로 이어지면, 워크북 데이터 내의 어떤 공식도 해당 값을 생성하기 위해 계산된다. 생성된 값은 출판된 아이템 스냅샷에 저장된다. 블록(825)으로 진행되면, 값은 언제 출판된 아이템 스냅샷이 액세스되든지 값이 바뀌지 않도록 공식으로부터 분리된다. 블록(830)으로 이동하면, 객체 내의 어떤 외부 데이터 참조도 외부 데이터 소스로부터 분리된다. 따라서, 외부 데이터 참조는 출판된 아이템 스냅샷이 생성된 이후에는 갱신 될 수 없다.
블록(835)으로 옮겨가면, 객체 내의 어떤 사유 정보도 제거된다. 사유 정보는 워크북의 소유자가 출판된 아이템 스냅샷을 액세스 하는 사용자와 공유하길 원 하길 원하지 않는 워크북 데이터를 포함한다. 블록(840)으로 진행되면, 객체와 연관된 메타데이터가 제거된다. 그러나, 객체가 워크북 내에서와 동일한 방식으로 출판된 아이템 스냅샷 내에 디스플레이될 수 있도록 객체와 연관된 어떤 포맷 정보도 유지된다.
블록(845)으로 이어지면, 출판된 아이템 스냅샷의 객체를 위해 시트(sheet)가 생성된다. 블록(850)으로 진행되면, 객체는 시트로 복사된다. 시트가 표현될 때 객체는 사용자가 출판된 아이템 스냅샷을 액세스할 때 객체를 시트 상에서 볼 수 있도록 배치된다. 예컨대, 객체는 시트의 좌측 상단 부분 근처에 저장된다.
결정 블록(855)으로 이동하면, 워크북 데이터 내에 더 이상의 출판된(published) 객체가 존재하는지에 대한 판단이 내려진다. 만일 그 이상의 출판된 객체가 워크북 데이터 내에 존재하면, 프로세스는 블록(810)으로 진행된다. 만일 더 이상의 출판된 객체가 워크북 데이터 내에 존재하지 않는다면, 프로세스는 블록(860)에서 계속된다.
블록(860)으로 옮겨가면, 출판된 아이템 스냅샷은 저장된다. 출판된 아이템 스냅샷은 특정 시점의 워크북 데이터 내의 선택 객체에 대한 정보를 제공한다. 소정의 객체 데이터는 출판된 아이템 스냅샷을 액세스하는 사용자들이 민감한 정보를 보는 것을 방지하도록 출판된 아이템 스냅샷 내에 포함되지 않는다.
블록(865)으로 진행되면, 스프레드시트 애플리케이션 서버는 출판된 아이템 스냅샷을 클라이언트 측에서 표현될 수 있는 포맷으로 변환한다. 일 실시예에서, 출판된 아이템 스냅샷은 스프레드시트 파일 포맷으로 변환된다. 그리고나서 파일 은 클라이언트 측에서 표현된다. 프로세스는 종료 블록에서 종결된다.
전술한 바에 기초하여 본 발명의 다양한 실시예는 스냅샷을 생성하기 위한 방법, 시스템, 장치, 및 전자 데이터의 컴퓨터 판독가능 매체를 포함한다. 상기 명세, 예시 및 데이터는 본 발명의 구성의 사용 및 제조에 대한 완벽한 기술을 제공한다. 본 발명의 범주 및 사상을 벗어나지 않으면서 본 발명의 수많은 실시예들이 만들어 질 수 있기 때문에 본 발명의 권리 범위는 이하에 첨부된 청구항에 귀속한다.

Claims (20)

  1. 전자 파일 데이터의 스냅샷을 생성하는 방법으로서,
    상기 스냅샷에 대한 요청을 수신하는 단계;
    상기 요청된 스냅샷과 연관된 상기 전자 파일 데이터를 검색하는 단계 - 상기 검색된 전자 파일 데이터는 정적 데이터 및 동적 데이터를 포함함 - ;
    상기 동적 데이터의 현재 상태를 결정하는 단계;
    상기 검색된 전자 파일 데이터 내의 사유 정보를 파악하는 단계; 및
    상기 스냅샷을 저장하는 단계 - 상기 저장된 스냅샷은 상기 검색된 전자 데이터 및 상기 동적 데이터의 상기 현재 상태를 포함하고, 나아가 상기 파악된 사유정보는 상기 스냅샷이 액세스 되었을 때 상기 스냅샷 내에서 볼 수 없음 -
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 동적 데이터의 현재 상태를 결정하는 단계는 상기 검색된 전자 파일 데이터 내의 공식에 대한 값을 계산하는 단계를 포함하고,
    나아가 상기 저장된 스냅샷은 상기 계산된 값을 더 포함하는 방법.
  3. 제2항에 있어서,
    상기 저장된 스냅샷 내의 상기 계산된 값이 상기 공식을 참조하지 않도록 상 기 계산된 값을 상기 공식으로부터 분리하는 단계를 더 포함하는 방법.
  4. 제1항에 있어서,
    상기 동적 데이터의 현재 상태를 결정하는 단계는 외부 데이터 소스에 링크된 상기 검색된 전자 파일 데이터 내의 데이터를 리프레쉬하는 단계를 포함하고,
    나아가 상기 저장된 스냅샷은 상기 리프레쉬된 데이터를 더 포함하는 방법.
  5. 제4항에 있어서,
    상기 저장된 스냅샷 내의 상기 리프레쉬된 데이터가 상기 외부 데이터 소스를 참조하지 않도록 상기 리프레쉬된 데이터를 상기 외부 데이터 소스로부터 분리하는 단계를 더 포함하는 방법.
  6. 제1항에 있어서,
    상기 검색된 전자 파일 데이터로부터 상기 파악된 사유 정보를 제거하는 단계를 더 포함하는 방법.
  7. 제1항에 있어서,
    사용자 행위에 응답하여 상기 동적 데이터의 상기 현재 상태가 결정되도록 상기 동적 데이터의 상기 현재 상태를 자동으로 결정하는 기능을 비활성화시키는 단계를 더 포함하는 방법.
  8. 제1항에 있어서,
    상기 저장된 스냅샷이 상기 검색된 전자 데이터와 연관된 메타데이터를 포함하지 않도록 상기 검색된 전자 데이터와 연관된 메타데이터를 삭제하는 단계를 더 포함하는 방법.
  9. 제1항에 있어서,
    상기 검색된 전자 파일 데이터는 출판을 위해 선택된 객체인 방법.
  10. 제9항에 있어서,
    상기 객체를 위한 시트를 생성하는 단계; 및
    상기 시트에 상기 객체를 복사하는 단계 - 상기 스냅샷은 상기 시트를 포함함 -
    를 더 포함하는 방법.
  11. 제10항에 있어서,
    상기 객체를 복사하는 단계는 상기 스냅샷이 표현될 때 사용자 인터페이스 상에서 상기 객체를 볼 수 있도록 상기 시트의 일부분에 상기 객체를 복사하는 단계를 더 포함하는 방법.
  12. 전자 파일 데이터의 스냅샷을 생성하기 위한 시스템으로서,
    상기 스냅샷에 대한 요청이 생성되는 클라이언트;
    상기 서버와 연결되며 상기 요청된 스냅샷과 연관된 상기 전자 파일 데이터가 저장되는 데이터 기억장치; 및
    상기 클라이언트 및 상기 데이터 기억장치에 연결된 서버를 포함하며,
    상기 서버는 상기 클라이언트로부터 상기 스냅샷에 대한 상기 요청을 수신하고,
    상기 데이터 기억장치로부터 상기 요청된 스냅샷과 연관된 상기 전자 파일 데이터를 검색하고,
    외부 데이터 소스와 링크된 상기 검색된 전자 파일 데이터 내의 데이터를 리프레쉬하고,
    상기 검색된 전자 파일 데이터 내의 공식에 대한 값을 계산하고,
    상기 검색된 전자 파일 데이터 내의 사유 정보를 파악하고, 그리고
    상기 스냅샷을 저장하도록 구성되며,
    상기 저장된 스냅샷은 상기 검색된 전자 데이터, 상기 계산된 값 및 상기 리프레쉬된 데이터를 포함하고, 나아가 상기 파악된 사유정보는 상기 스냅샷이 액세스 되었을 때 상기 스냅샷 내에서 볼 수 없는 시스템.
  13. 제12항에 있어서,
    상기 서버는 상기 저장된 스냅샷 내의 상기 계산된 값이 상기 공식을 참조하 지 않도록 상기 값을 상기 공식으로부터 분리하도록 더 구성된 시스템.
  14. 제12항에 있어서,
    상기 서버는 상기 저장된 스냅샷 내의 상기 리프레쉬된 데이터가 상기 외부 데이터 소스를 참조하지 않도록 상기 리프레쉬된 데이터를 상기 외부 데이터 소스로부터 분리하도록 더 구성된 시스템.
  15. 제12항에 있어서,
    상기 서버는,
    상기 공식에 대한 상기 값과 연관된 자동 계산 특성을 비활성화시키고,
    사용자 행위에 응답하여 상기 계산된 값을 갱신하도록 더 구성된 시스템.
  16. 제12항에 있어서,
    상기 서버는,
    상기 외부 데이터 소스와 연결된 상기 데이터와 연관된 자동 리프레쉬 특성을 비활성화시키고,
    사용자 행위에 응답하여 상기 외부 데이터 소스에 연결된 상기 데이터를 갱신하도록 더 구성된 시스템.
  17. 제12항에 있어서,
    상기 서버는 상기 검색된 전자 파일 데이터로부터 상기 파악된 사유 정보를 제거하도록 더 구성된 시스템.
  18. 제12항에 있어서,
    상기 검색된 전자 파일 데이터는 출판을 위해 선택된 객체인 시스템.
  19. 컴퓨터에 의해 실행될 때 상기 컴퓨터가 전자 파일 데이터의 스냅샷을 생성하기 위한 방법을 수행하게 하는 컴퓨터 실행가능 명령어들을 저장한 컴퓨터 판독가능 매체로서,
    상기 방법은,
    상기 스냅샷에 대한 요청을 수신하는 단계;
    상기 요청된 스냅샷과 연관된 상기 전자 파일 데이터를 검색하는 단계;
    상기 검색된 전자 파일 데이터 내의 공식에 대한 값을 계산하는 단계;
    외부 데이터 소스와 링크된 상기 검색된 전자 파일 데이터 내의 데이터를 리프레쉬 하는 단계;
    상기 검색된 전자 파일 데이터 내의 사유 정보를 파악하는 단계; 및
    상기 스냅샷을 저장하는 단계를 포함하고,
    상기 저장된 스냅샷은 상기 검색된 전자 데이터, 상기 계산된 값 및 상기 리프레쉬된 데이터를 포함하고, 나아가 상기 파악된 사유정보는 상기 스냅샷이 액세스 되었을 때 상기 스냅샷 내에서 볼 수 없는 매체.
  20. 제19항에 있어서,
    상기 방법은 상기 검색된 전자 파일 데이터로부터 상기 파악된 사유 정보를 제거하는 단계를 더 포함하는 매체.
KR1020087003836A 2005-08-30 2006-08-29 전자 데이터 스냅샷 생성기 KR101246996B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/214,676 US7657571B2 (en) 2005-08-30 2005-08-30 Electronic data snapshot generator
US11/214,676 2005-08-30
PCT/US2006/034312 WO2007028067A1 (en) 2005-08-30 2006-08-29 Electronic data snapshot generator

Publications (2)

Publication Number Publication Date
KR20080064796A true KR20080064796A (ko) 2008-07-09
KR101246996B1 KR101246996B1 (ko) 2013-03-25

Family

ID=37805617

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087003836A KR101246996B1 (ko) 2005-08-30 2006-08-29 전자 데이터 스냅샷 생성기

Country Status (13)

Country Link
US (1) US7657571B2 (ko)
EP (1) EP1920352A4 (ko)
JP (1) JP4809897B2 (ko)
KR (1) KR101246996B1 (ko)
CN (1) CN101253495B (ko)
AU (1) AU2006284595B2 (ko)
BR (1) BRPI0615023A2 (ko)
CA (1) CA2616563C (ko)
MX (1) MX2008002501A (ko)
MY (1) MY153734A (ko)
NO (1) NO20080375L (ko)
RU (1) RU2419852C2 (ko)
WO (1) WO2007028067A1 (ko)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9009582B2 (en) * 2004-11-19 2015-04-14 Google Inc. Converting spreadsheet applications to web-based applications
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
US8307119B2 (en) 2006-03-31 2012-11-06 Google Inc. Collaborative online spreadsheet application
US8904340B2 (en) * 2007-02-13 2014-12-02 International Business Machines Corporation Use of temporary optimized settings to reduce cycle time of automatically created spreadsheets
US8006175B2 (en) * 2007-10-29 2011-08-23 Microsoft Corporation Calculation of spreadsheet data
US8352431B1 (en) * 2007-10-31 2013-01-08 Emc Corporation Fine-grain policy-based snapshots
US9747270B2 (en) 2011-01-07 2017-08-29 Microsoft Technology Licensing, Llc Natural input for spreadsheet actions
CN101951443A (zh) * 2010-09-25 2011-01-19 宇龙计算机通信科技(深圳)有限公司 一种文件保密方法、系统及移动终端
US9201892B2 (en) * 2011-08-30 2015-12-01 International Business Machines Corporation Fast snapshots
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
US9529926B2 (en) * 2012-04-23 2016-12-27 Excalibur Ip, Llc Snapshot refreshment for search results page preview
US20140189534A1 (en) * 2012-12-31 2014-07-03 Google Inc. Customizing shared web resource snapshots
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
US20150095214A1 (en) * 2013-09-27 2015-04-02 Richard AHN Electronic gifting process and apparatus
KR102169867B1 (ko) * 2014-01-22 2020-10-26 한국전자통신연구원 파일 수준의 스냅샷을 제공하는 분산 파일 시스템 및 그 동작 방법
US9645766B1 (en) 2014-03-28 2017-05-09 EMC IP Holding Company LLC Tape emulation alternate data path
US10257151B2 (en) 2014-10-27 2019-04-09 Phanto, Llc Systems and methods for enabling dialog amongst different participant groups with variable and association-based privacy
US10127115B2 (en) * 2016-03-18 2018-11-13 Microsoft Technology Licensing, Llc Generation and management of social graph
WO2018035492A1 (en) * 2016-08-18 2018-02-22 Rushline, LLC Systems and methods for enabling dialog amongst different participant groups with variable and association-based privacy
US10552633B2 (en) * 2017-03-23 2020-02-04 International Business Machines Corporation Privacy annotation from differential analysis of snapshots
US11429557B2 (en) 2018-10-11 2022-08-30 Dealvector, Inc. Templatization of spreadsheets in browser environments
US11429558B2 (en) 2018-10-11 2022-08-30 Dealvector, Inc. Mapping tests of spreadsheets in server-browser environments
WO2020077152A1 (en) * 2018-10-11 2020-04-16 Dealvector, Inc. Effective deployment of spreadsheets in browser environments
CN110989897B (zh) * 2019-11-21 2021-12-03 富途网络科技(深圳)有限公司 截屏图片的获取方法、装置、终端设备及存储介质
US20220318232A1 (en) * 2021-03-31 2022-10-06 Microsoft Technology Licensing, Llc Dynamically limiting the scope of spreadsheet recalculations
CN117692672B (zh) * 2023-12-05 2024-06-11 朴道征信有限公司 基于快照的视频信息发送方法、装置、电子设备和介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5963962A (en) 1995-05-31 1999-10-05 Network Appliance, Inc. Write anywhere file-system layout
EP0702815B1 (en) 1993-06-03 2000-08-23 Network Appliance, Inc. Write anywhere file-system layout
US7539637B2 (en) * 1998-04-24 2009-05-26 Starmine Corporation Security analyst estimates performance viewing system and method
US6275824B1 (en) * 1998-10-02 2001-08-14 Ncr Corporation System and method for managing data privacy in a database management system
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
US20020010743A1 (en) * 2000-02-11 2002-01-24 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
AU2001277868A1 (en) * 2000-07-11 2002-01-21 Juice Software, Inc. A method and system for integrating network-based functionality into productivity applications and documents
WO2002035314A2 (en) * 2000-10-24 2002-05-02 Doubleclick, Inc. Method and system for sharing anonymous user information
AU2002254564A1 (en) * 2001-04-10 2002-10-28 Latanya Sweeney Systems and methods for deidentifying entries in a data source
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
US7181450B2 (en) * 2002-12-18 2007-02-20 International Business Machines Corporation Method, system, and program for use of metadata to create multidimensional cubes in a relational database
CN1904879B (zh) * 2005-07-27 2011-01-12 国际商业机器公司 电子表格系统及获取电子表格文档的快照/历史信息的方法

Also Published As

Publication number Publication date
BRPI0615023A2 (pt) 2011-04-26
AU2006284595B2 (en) 2010-03-25
US7657571B2 (en) 2010-02-02
AU2006284595A1 (en) 2007-03-08
JP2009507303A (ja) 2009-02-19
MX2008002501A (es) 2008-04-07
CA2616563A1 (en) 2007-03-08
CN101253495B (zh) 2010-12-22
KR101246996B1 (ko) 2013-03-25
EP1920352A1 (en) 2008-05-14
JP4809897B2 (ja) 2011-11-09
CA2616563C (en) 2015-05-19
NO20080375L (no) 2008-02-06
RU2008107762A (ru) 2009-09-10
WO2007028067A1 (en) 2007-03-08
EP1920352A4 (en) 2012-04-04
CN101253495A (zh) 2008-08-27
US20070050416A1 (en) 2007-03-01
RU2419852C2 (ru) 2011-05-27
MY153734A (en) 2015-03-13

Similar Documents

Publication Publication Date Title
KR101246996B1 (ko) 전자 데이터 스냅샷 생성기
KR101311055B1 (ko) 전자 데이터 리포트의 명명 객체뷰
Buels et al. JBrowse: a dynamic web platform for genome visualization and analysis
US10042951B2 (en) Contextual commenting on the web
CN102132273B (zh) 注释网页内容
US8584009B2 (en) Automatically propagating changes in document access rights for subordinate document components to superordinate document components
MXPA05012559A (es) Manejo y uso de datos en un documento generado por computadora.
KR20060046282A (ko) 데이터 소스로서 워크북을 노출시키기 위한 방법, 시스템,및 장치
JP2006178946A (ja) ワークブックを表現するためのファイルフォーマット、方法およびコンピュータプログラム製品
JP2006178944A (ja) 文書を表すファイル・フォーマット、その方法、およびコンピュータ・プログラム製品
KR20080100174A (ko) 서버 파일을 서버 파일의 로컬 저장된 카피에 매핑하기위한 방법 및 컴퓨터 판독가능 매체
JP2008257444A (ja) 類似ファイル管理装置、その方法及びそのプログラム
US7720814B2 (en) Repopulating a database with document content
US7581168B2 (en) Method, system, and computer-readable medium for determining whether to reproduce chart images calculated from a workbook
US20050246387A1 (en) Method and apparatus for managing and manipulating digital files at the file component level
US20180144038A1 (en) Propagating Computable Dependencies within Synchronized Content Items Between First and Third-Party Applications
US20060136438A1 (en) Process server array for processing documents and document components and a method related thereto
US20180373688A1 (en) Sharing annotations to web pages
JP5398077B2 (ja) ストレージ装置に保存されたデータの重要性判定方法および保管システム並びにプログラム
Bastiman et al. Ante-Purgatory
GB2610894A (en) Conditional processing of annotated documents for automated document generation
de Vos et al. A Virtual Lab-Notebook for Multidimensional Microscopic Images

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170220

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180219

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee