CN105593848B - 在协作式环境中对共享电子文档的更新 - Google Patents

在协作式环境中对共享电子文档的更新 Download PDF

Info

Publication number
CN105593848B
CN105593848B CN201480045290.XA CN201480045290A CN105593848B CN 105593848 B CN105593848 B CN 105593848B CN 201480045290 A CN201480045290 A CN 201480045290A CN 105593848 B CN105593848 B CN 105593848B
Authority
CN
China
Prior art keywords
client
change
electronic document
zone
action
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201480045290.XA
Other languages
English (en)
Other versions
CN105593848A (zh
Inventor
M·迈尔斯克夫
T·希夫尼
N·库萨姆普德
T·瓦列
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN105593848A publication Critical patent/CN105593848A/zh
Application granted granted Critical
Publication of CN105593848B publication Critical patent/CN105593848B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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/197Version control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Computing Systems (AREA)
  • Document Processing Apparatus (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

描述了用于管理共享电子文档环境中的多个联网设备之间的信息交换的系统和方法。在一实施例中,执行一种计算机实现的在协作式联网环境中交换信息的方法。该方法可包括从第一客户端接收第一活动区域,接收对共享电子文档的改变的指示,以及确定第一客户端要求更新。该确定步骤可包括确定该改变将影响第一活动区域,以及确定要发送给第一客户端的相关改变数据。另外,该方法可包括向第一客户端发送相关改变数据。

Description

在协作式环境中对共享电子文档的更新
背景
联网计算机系统向人们提供了通过使用连接到网络的计算机或终端来进行协作的机会。被称为用户的这些人可以通过共享电子文档的方式来与其他用户协作。当一个用户能够同时访问另一用户能够访问的电子文档的电子文档时,发生共享电子文档。例如,当一用户与一电子表格交互的同时,另一用户可以与该相同的电子表格交互。
在共享电子文档的过程期间,常常发生对文档的改变。这些改变取决于用户与文档的当前交互而可能影响用户体验或者可能不影响用户体验。例如,初始用户可以对共享电子文档作出改变,并且在一些实例中,向另一用户提供关于该改变的信息可能是有价值的。该价值可能由于另一用户正在与共享电子文档中受到该改变影响的一部分进行交互而产生。其他时候,在另一用户接收到关于该改变的信息方面可能存在较少的价值。例如,当另一用户正在与共享电子文档中不受该改变影响的一部分交互(例如正在查看该部分)时,发送改变可能存在很少的价值。
由此,期望管理被称为客户端计算机的用户计算机如何以及何时接收关于共享电子文档中作出的改变的信息。管理这一信息交换的先前尝试包括客户端以常规间隔请求关于对共享电子文档的改变的信息。然而,这常常导致网络上存在大量不需要的话务以及使信息在机器之间行进的长延迟。例如,即便没有对共享电子文档的改变,客户端也会发送请求。
另外,大部分的客户端计算资源被用在先前尝试中以管理处理对共享电子文档的改变。这通常是因为共享电子文档包含大量信息而发生。由此,响应于请求来发送电子文档中包含的所有信息常常是不切实际的。先前的变通方法是发送使得客户端足以重新创建共享电子文档改变的经压缩的和/或经编码的信息。然而,对这一信息的解压缩和转换常常消耗客户端的计算能力。
各实施例正是对于这些和其它一般考虑事项而做出的。而且,尽管讨论了相对具体的问题,但是应当理解,各实施例不应被限于解决本背景技术中所标识的具体问题。
概述
提供本概述来以简化形式介绍将在以下详细描述部分中进一步描述的一些概念。本概述并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
描述了用于管理共享电子文档环境中的多个联网设备之间的信息交换的系统和方法。在一实施例中,执行一种计算机实现的在协作式联网环境中交换信息的方法。该方法可包括从第一客户端接收第一活动区域,接收对共享电子文档的改变的指示,以及确定第一客户端要求更新。该确定步骤可包括确定该改变将影响第一活动区域,以及确定要发送给第一客户端的相关改变数据。另外,该方法可包括向第一客户端发送相关改变数据。
在另一实施例中,一种计算机可读存储介质存储计算机可执行指令。这些指令在被执行时可以执行一种在协作式联网环境中交换信息的方法。该方法可包括从第一客户端接收第一活动区域,接收对共享电子文档的改变的指示,以及确定第一客户端要求更新。该确定步骤可包括确定该改变将影响第一活动区域,确定要发送给第一客户端的相关改变数据。另外,该方法可包括向第一客户端发送相关改变数据。
另外,一种用于在协作式联网环境中交换信息的系统可被使用。在一实施例中,该系统可包括电耦合至输入设备、输出设备、网络通信设备、存储设备、以及存储器的计算机处理器。网络通信设备可接收关于共享电子文档的信息。输出设备可以通过视图来显示关于共享电子文档的信息。网络通信设备可以发送关于共享电子文档的活动区域的信息。网络通信设备可以附加地接收关于共享电子文档的相关改变数据。另外,网络通信设备可接收相关改变数据,并且共享电子文档的活动区域可基于相关改变数据来更新。
附图简述
参考以下附图描述非限制性和非穷尽的实施例,其中:
图1解说了一种用于管理与对共享电子文档的改变有关的信息交换的联网系统的一实施例。
图2解说了适于管理与对共享电子文档的改变有关的信息交换的客户端和服务器模块的环境的一实施例。
图3解说了具有被视图周界所界定的活动区域的共享电子文档的一实施例。
图4解说了具有包括视图与非可见区域相组合的活动区域的共享电子文档的一实施例。
图5解说了包括具有非可见区域和可见区域的活动区域的共享电子文档的一实施例。
图6解说了包括可见活动区域和可见非活动区域的共享电子文档的一替换实施例。
图7解说了向客户端传达相关改变数据的服务器的一实施例。
图8解说了一种用于响应于对共享电子文档的改变来确定是否要向客户端发送信息的方法。
图9解说了一种用于响应于对共享电子文档的改变来确定要向客户端发送什么信息的方法。
图10解说了一种客户端接收相关改变数据的方法。
图11解说了其中可以实现各实施例的合适的操作环境的一个示例。
图12A解说了其中可以实现各实施例的移动计算设备的一个实施例。
图12B是解说适于实现各实施例的移动计算设备的一个实施例的架构的框图。
图13是可在其中实施本公开的各实施例的分布式计算系统的简化框图。
详细描述
以下将参考形成本发明一部分并示出各具体示例性实施例的附图更详尽地描述各个实施例。然而各实施例被实现为许多不同的形式并且不应将其解释为限制在此处描述的实施例;相反地,提供这些实施例以使得本公开变得透彻和完整,并且将本发明的范围完全传达给本领域普通技术人员。因此,这些实施例可采用硬件实现形式、全软件实现形式或者结合软件和硬件方面的实现形式。因此,以下详细描述并非是局限性的。
用户可以与共享电子文档环境中的各种类型的电子文档交互。电子文档的一些示例包括电子表格、演示幻灯片、文字处理文档、以及图像文档。尽管本公开可以在电子表格的上下文中对电子文档作出引用,但此类公开不应在受限的意义上被采纳。例如,本公开可以使用词语“活动区域”来指代电子表格的特定区域,诸如当前在视图中的单元格或者预定数目的单元格(无论该单元格是否在视图中)。例如,本公开可以引用两个或更多个单元格作为活动区域。尽管“单元格”在传统上是在电子表格应用的上下文中进行讨论的,但具有可确定且不相连的边界的电子文档的活动区域的概念也适用于其他电子文档。例如,在文字处理文档中,活动区域可以是页面、页脚区域、页眉区域、文本框、图像框等。类似地,对于演示幻灯片,活动区域可以是个体幻灯片、幻灯片内的文本框、页眉区域、页脚区域等。图像文件可具有作为活动区域示例的层和图像框。因而,构想了本领域技术人员将领会本公开的格实施例可包括许多其他形式的电子文档。同样,构想了本领域技术人员可以标识和使用其他预定边界条件来确定活动区域。
公开了用于管理共享电子文档环境中客户端与服务器之间的信息流的系统和方法的各实施例。在一实施例中,当共享电子文档被改变时,信息流发生。例如,多个用户可能正在访问电子文档,并且该电子文档可被存储在服务器上。第一用户可以改变电子文档,例如,将信息输入到电子表格的一单元格中。例如,因为第二用户实际上正在查看的信息现在过时或者不准确,所以第二用户接收与该改变有关的信息可能是有用的。或者,可能第二用户正在查看链接到其内容已经被第一用户改变的单元格的单元格。附加地,因为第二用户很快将与被改变的单元格或者链接到被改变的单元格的单元格交互,所以第二用户接收信息可能是有用的。然而,在其他实例中,因为被更新的信息不影响第二用户与电子文档的交互,例如,当第二用户正在查看该文档的不相关、不受影响的部分时,第二用户接收与该改变有关的被更新的信息可能没用。
图1解说了一种用于管理与对共享电子文档101的改变有关的信息交换的联网系统100的实施例。如所解说的,第一客户端102和第二客户端104通过网络106连接到服务器108。在一实施例中,数据库114也连接到网络106。第一客户端102具有第一客户端活动区域110,而第二客户端具有第二客户端当前活动区域112。在各实施例中,响应于对共享电子文档101的改变,服务器106基于该改变是否影响活动区域110和/或112来确定是否要向客户端102和106发送更新。
第一客户端102和第二客户端104连接到网络106。客户端102和104可以是任何计算机系统,包括有线和无线计算系统、移动计算系统(例如,移动电话、上网本、平板或板式计算机、以及膝上型计算机)、以及台式计算机等。如所解说的,第一客户端计算机102是台式计算机,而第二客户端计算机104是平板。然而,本领域技术人员将领会,客户端102和104仅仅是示例性设备,并且其他设备也可用于达成本文所述的功能性。
第一客户端102具有第一客户端活动区域110,而第二客户端104具有第二客户端活动区域112。一般而言,活动区域是共享电子文档中用户正在或者将可能与其交互的区域。活动区域包括有助于支持用户的当前交互或在一些情形中用户潜在的不远的将来的交互的区域。在各实施例中,第一客户端活动区域110是第一客户端102的视图。作为视图的活动区域110是与显示在第一客户端102的计算机显示器、监视器、或其他输出设备上的共享电子文档101有关的信息。类似地,第二客户端活动区域112可以是第二客户端104的视图。此类视图是与显示在第二客户端104的计算机显示器、监视器、或其他输出设备上的共享电子文档101有关的当前信息。客户端102和104通常包括物理硬件,诸如一个或多个计算机处理器、存储器、通信连接、和/或输入/输出设备,并且可以确定并中继视图和/或活动区域信息。
网络106促进各个客户端、服务器与数据库之间的通信。存在能够采用以允许各个设备彼此通信的多种类型的网络。通信可以通过使用无线和/或其他技术来发生。例如,网络106可以是因特网或局域网(“LAN”)。在一特定实施例中,网络106可以是紧耦合商业网络,其中服务器系统相对“专用”于LAN环境中的少量计算机。
服务器108服务于一个或多个客户端的请求,该客户端诸如客户端102和104。在一实施例中,服务器108是服务于其他计算机程序(诸如客户端的计算机程序)的请求的计算机、或链接在一起的一系列计算机。服务器108包括运行以服务于客户端(诸如第一客户端102和第二客户端104)的需要的计算机程序。服务器108通常还包括物理硬件,诸如一个或多个计算机处理器、存储器、一个或多个硬盘驱动器、通信连接、以及输入/输出设备。
通过网络106,第一客户端102和第二客户端104向服务器108请求服务。例如,客户端102可以请求服务器108渲染网页。这一网页可以例如是包括电子文档(诸如电子表格101)的渲染的网页。另外,服务器108可以通过递送HTML脚本、小程序、C++代码、或其他计算机指令来对来自第一客户端102或第二客户端104的请求作出响应。这些指令在被执行时向第一客户端102和第二客户端104提供对电子文档(诸如电子表格101)的渲染。
数据库114是经组织的数据集合。通常,数据库管理系统被用来管理存储在数据库114上的数据的收集、组织和检索。如所解说的,数据库114是联网数据库,尽管它不必是联网数据库。在各实施例中,数据库114存储与服务于客户端的需要有关的信息。另外,数据库114可以存储与第一客户端102和第二客户端104有关的信息。
使用第一客户端计算机系统102或第二客户端计算机系统104的用户可以与共享电子文档的渲染交互。例如,用户可以通过视图来查看共享电子文档的渲染。另外,用户作出与共享电子文档相关联的改变信息,诸如将数字输入到电子表格的一单元格中,以及用户可以作出的许多潜在编辑。编辑文档导致对本地和服务器108两者上的共享电子文档的更新。例如,如果使用第一客户端102的用户将数据输入到共享电子文档的一单元格中,则客户端102可以通过网络106向服务器108发送信息。服务器108将恰当地解读该数据并且改变共享电子文档。
另外,服务器108可以通过网络106向第二客户端104发送已经被确定为与另一客户端(诸如客户端104)相关的数据,作为另一客户端的活动区域的结果。相关改变数据接着将导致电子文档在第二客户端104上的渲染恰当地改变。这一改变可以影响或者可以不影响通过第二客户端视图112显示的信息。即,尽管它可以不改变所显示的信息,但它还是基于第二客户端的活动区域被发送到第二客户端。
相关改变数据被概念化为已经由服务器基于客户端的活动区域被确定为相关且响应于对共享电子文档的改变而被发送的数据。相关改变数据不要求客户端向服务器请求信息。此外,相关改变数据不必响应于对共享电子文档的每一改变而被发送到接收方客户端。
由此,在一实施例中,当接收到影响客户端的活动区域的对电子文档的一部分的改变时,相关改变数据将被发送到该客户端。相关改变数据可以通过任何快速通信信道来发送,快速通信信道诸如长轮询架构、套接字架构、或任何其他快速通信架构。初始改变不必对客户端的活动区域中的区域作出。例如,电子表格中的初始改变可以通过公式和链接等改变多得多的单元格,并且电子表格中的一些信息可以由于该初始改变而被间接修改。该间接修改可以针对客户端的活动区域的单元格。在这种情形中,客户端将接收相关改变数据。
图2解说了适于管理与对共享电子文档201的改变有关的信息交换的客户端和服务器模块的环境200的一实施例。客户端202和客户端204通过使用实时通信模块208通信地耦合至服务器206。实时通信模块将信息发送到块选择器逻辑模块210。块选择器逻辑模块210通信地耦合至数据模块212。另外,块选择器逻辑模块210将信息发送到渲染模块214。此外,渲染模块214将信息发送到实时通信模块208。
客户端202和客户端204访问来自服务器206的一个或多个共享电子文档201。在各实施例中,第一客户端202使用web浏览器来向服务器206发送请求以访问共享电子文档201。服务器206可以通过向第一客户端202发送共享电子文档201的渲染来作出响应。第二客户端204也可使用web浏览器来向服务器206发送请求。
在访问共享电子文档201之后,客户端将发送与其当前活动区域有关的信息。例如,第一客户端202将向服务器206发送关于第一客户端活动区域216的信息。服务器206使用实时通信模块208来接收该信息,其中实时通信模块208是被配置成从一个或多个客户端接收消息并解读消息的模块。实时通信模块208将该信息发送给数据模块212,其中数据模块212是被配置成接收、解读、分类、更新、存储、和/或检索与共享电子文档201有关的信息的模块。在各实施例中,数据模块212将与第一客户端活动区域216有关的信息存储在本地或联网数据库220中。
服务器206存储客户端的活动区域信息的过程可以重复。例如,第二客户端204可以正在访问共享电子文档201。在一实施例中,第二客户端204将具有第二客户端活动区域218。第二客户端204将与第二客户端活动区域218有关的信息发送到服务器206。服务器206将使用实时通信模块208来接收该信息,并且服务器206将使用数据模块212来存储该信息。在其他实施例中,块选择器逻辑模块212存储该信息。
当访问共享电子文档201时,第一客户端202可以改变共享电子文档201的信息。例如,共享电子文档201可以是电子表格,而第一客户端202可以将数字输入到电子表格的一单元格中。在这一示例中,该改变可以通过以下过程来发生。第一客户端202将信息发送到服务器206,服务器206使用实时通信模块208来接收该信息。实时通信模块208接着与数据模型212通信以更新共享电子文档201。在替换实施例中,块选择器逻辑模块从实时通信模块208接收信息。
响应于客户端改变共享电子文档201,诸如第一客户端202改变共享电子文档201,数据块选择器模块210确定是否要向正在访问该共享电子文档201的其他客户端(诸如第二客户端204)发送更新。另外,在一些实施例中,数据块选择器模块210确定是否要向请求该改变的同一客户端发送更新。
数据块选择器模块210可以接收共享电子文档201已经被一客户端(诸如第一客户端202)改变的指示。这一指示可来自于实时通信模块208。或者该指示可来自于数据模块214。本领域技术人员将领会,该指示可来自于图2中未示出的其他模块。
在各实施例中,在接收到共享电子文档201已经被客户端202改变的指示之后,块选择器逻辑模块210向数据模型模块214发送请求。该请求包括对关于正在访问与该改变相关联的共享电子文档的客户端的当前活动区域有关的信息的请求。例如,块选择器逻辑模块210可以请求关于第一客户端活动区域216和第二客户端活动区域218的信息。数据模块212接着检索由块选择器模块210请求的信息并且将该信息递送到块选择器模块210。
块选择器逻辑模块210接着使用第一客户端活动区域216和第二客户端活动区域218以及电子文档已经被改变的指示来确定是否要向一客户端发送更新。例如,块选择器逻辑模块210可能已经接收到第一客户端202已经对共享文档作出改变的指示。块选择器逻辑模块210接着可基于第二客户端活动区域218来确定第二客户端204应当接收与该改变有关的信息。这一信息被称为“相关改变数据”并且参考图1更详细地讨论。另外,确定是否要向一客户端发送更新参考图8更详细地讨论。
如果块选择器逻辑模块确定相关改变数据应当被发送到一客户端(诸如第二客户端204),则块选择器组件确定要向该客户端发送什么信息。例如,块选择器逻辑模块208可以确定相关改变数据应当包括足以使得第二客户端204显示新视图的新信息。块选择器逻辑模块可以确定不同的和/或附加的信息应当被发送到第二客户端204。确定要发送什么相关改变数据参考图9更详细地讨论。
在确定要发送什么相关改变数据之后,块选择器逻辑模块210接着向数据模块212发送对相关改变数据的请求。例如,块选择器逻辑模块212可以请求足以向第二客户端204发送新视图的相关改变数据。在其他实施例中,块选择器逻辑模块212可以发送足以使得第二客户端204更新第二客户端活动区域218的信息。在各实施例中,数据选择器模块212将相关改变数据发送到块选择器逻辑模块210,并且块选择器逻辑模块210评估该相关改变数据。此外,块选择器逻辑模块210接着可以将相关改变数据发送到渲染模块214。在其他实施例中,数据模块212将相关改变数据直接发送到渲染模块214。
渲染模块214是将包括相关改变数据在内的信息渲染成客户端可使用的格式的模块。例如,该格式可以是适于由存储在一客户端(诸如第二客户端204)上的web浏览器解读的格式。一旦相关改变数据被渲染,渲染模块214就将经渲染的相关改变数据传送到实时通信模块208。实时通信模块208接着将经渲染的相关改变数据发送到一客户端(诸如第二客户端204)。
给定在已经接收到影响第二客户端的活动区域的改变的情况下相关改变数据将被发送到第二客户端,确定第二客户端的活动区域是必要的。图3、图4和图5各自解说了活动区域以及此类活动区域上的触摸可如何被确定的各实施例。在一些实施例中,当前活动区域是当前视图。在其他实施例中,活动区域包括整个活动区域,加上视图以外的区域。例如,在其中共享电子文档是电子表格并且客户端正在通过使用浏览器与电子表格交互的各实施例中,活动区域可以是由web浏览器显示的当前部分电子表格,即视图。替换地,活动区域可包括当前视图以上、以下、或者侧面的区域。这一活动区域在用户可能滚动的情况下特别有用。在其他实施例中,活动区域可以小于视图的区域。
另外,有界区域在图3、图4和图5中被解说。尽管一副附图可包含单个有界区域,但将领会,多个有界区域也是可能的。例如,有界区域可以被示为具有矩形周界的单个区域。然而,有界区域可以是一系列离散的有界区域。另外,形状不必是矩形。事实上,一系列有界区域不必共享边界。
参考图3,图3解说了具有被视图周界302所界定的活动区域的共享电子文档300的一实施例。如所解说的,视图周界302界定电子表格的单元格。例如,单元格A1、A2、A3、A4、B1、B2、B3、B4、C1、C2、C3和C4由视图周界302界定。由此,单元格A1、A2、A3、A4、B1、B2、B3、B4、C1、C2、C3和C4被认为被包括在活动区域中。
在各实施例中,视图周界302由客户端所显示的共享电子文档的一部分确定。例如,共享电子文档可以由客户端的web浏览器显示。替换地,共享电子文档可以由在与服务器交互的客户端上运行的另一应用来显示。如所解说的,视图周界302捕捉共享电子文档的全部。尽管仅解说了电子表格的单元格,但整个共享电子文档可包括菜单、页眉、和页脚区域。另外,视图周界可界定其他类型的共享电子文档,诸如文字处理文档、演示幻灯片、以及图像文档。
图4解说了具有包括视图与非可见区域相组合的活动区域的共享电子文档400的一实施例。如所解说的,共享电子文档400包括电子表格的单元格。例如,视图周界402界定单元格A1、A2、A3、A4、B1、B2、B3、B4、C1、C2、C3和C4。另外,非可见周界428界定电子表格的其余单元格。如所解说的,非可见周界428界定单元格A5、B5、C5、D1、D2、D3、D4和D5。结果,共享电子文档400包括单元格A1、A2、A3、A4、A5、B1、B2、B3、B4、B5、C1、C2、C3、C4、C5、D1、D2、D3、D4和D5。
视图周界402具有与参考图3讨论的视图周界302相似的属性。另外,尽管视图周界402被示为界定整个单元格,但它不必界定整个单元格。实际上,视图周界402可以界定电子表格的单元格的部分,或者文档的其他区域的部分。非可见周界428界定已经被确定为对与客户端交互的用户有用的非可见单元格。如所解说的,当前视图以下以及左侧的单元格已经被确定为对与客户端交互的用户有用。这可以在用户可能向下或向左滚动的情况下发生。其他实施例包括在客户端的当前视图的顶部或右侧的非可见活动区域。还有一些实施例可包括在共享电子文档的与当前视图不同的部分上的非可见活动区域,诸如电子表格工作簿的不同工作表、文档的不同页面、或者不同的幻灯片或演示文档。
图5解说了包括具有非可见区域和可见区域的活动区域的共享电子文档500的一实施例。共享电子文档还包括非可见、非活动区域。如所解说的,共享电子文档500包括电子表格的单元格。例如,视图周界502界定单元格A1、A2、A3、A4、B1、B2、B3、B4、C1、C2、C3和C4。另外,非可见周界528界定作为共享电子文档500的活动区域的一部分的非可见单元格。如所解说的,非可见周界528界定单元格A5、B5、C5、D1、D2、D3、D4和D5。结果,共享电子文档500的活动区域的一实施例包括单元格A1、A2、A3、A4、A5、B1、B2、B3、B4、B5、C1、C2、C3、C4、C5、D1、D2、D3、D4和D5。另外,共享电子文档500具有非可见、非活动区域。如所解说的,这一非可见、非活动区域包括单元格A6、B6、C6、D6、E1、E2、E3、E4、E5和E6。
视图周界502具有与参考图3讨论的视图周界302相似的属性。另外,非可见周界528具有与参考图4讨论的非可见周界428相似的属性。此外,非可见、非活动区域包括共享电子文档中已经被确定为对用户和/或客户端不那么有用的部分。由此,在客户端的高速缓存中可能没有这些区域的渲染。替换地,在客户端上(诸如在高速缓存中)可能存在这些区域的渲染,但可以确定这一区域被指派为非活动。
图6解说了包括可见活动区域和可见非活动区域的共享电子文档600的一替换实施例。共享电子文档600的可见活动部分由活动可见周界602来界定。这包括单元格B2和C2。其他非活动可见单元格可以被显示在共享电子文档的视图中。例如,单元格A1、A2、A3、B1、B3、C1和C3是非活动可见单元格。
活动可见周界602界定视图的活动区域。例如,视图可包括单元格A1、A2、A3、B1、B2、B3、C1、C2和C3,但活动区域周界602仅界定单元格B2和C2。在其他实施例中,单元格的各部分可以被认为由活动可见周界602来界定,而单元格的另一部分不由可见周界602来界定。
关于共享电子文档的哪些部分应当被指派为活动区域的确定可以在客户端或服务器处发生。这一确定可以通过简单定义,诸如将视图指派为活动区域,或者将视图加上文档的与当前视图紧密毗邻区域中的某一部分指派为活动。其他时候,活动区域可以基于用户与共享电子文档的具体交互。例如,用户可能倾向于在工作簿的两个工作表之间点击,并且用户可能仅仅正在审阅每一工作表的某些部分。由此,将两个工作表的各部分指派为活动区域(以及可能与那些区域紧密毗邻的区域)可能是恰当的。替换地,历史行为倾向可用于确定活动区域。例如,历史使用可指示人们倾向于在图表和表格之间点击。此外,活动区域可基于在视图中的单元格是否还链接到另一单元格。例如,活动区域可以被定义为视图加上链接到视图内的任何单元格的任何单元格。另外,在分派活动区域时排除视图的某些部分可能是有利的。例如,存储文字处理文档或电子表格的页眉信息(如果此类区域不包含信息的话)可能是没有用的。
图7解说了向客户端传达相关改变数据的服务器的一实施例。在一实施例中,改变客户端702访问共享电子文档704的经本地高速缓存的渲染。改变客户端702例如从用户接收到期望对由服务器710存储的共享电子文档706作出改变的指示。改变客户端702将表示期望改变的改变信息708发送到服务器。
服务器710解读改变信息708并且相应地更新共享电子文档712。另外,服务器710确定是否要将相关改变数据714发送到接收方客户端716。如果相关改变数据714被发送到接收方客户端,则接收方客户端相应地更新接收到的客户端716的对共享电子文档718的本地高速缓存的版本。
替换地,改变客户端702发送的改变信息可以不提示服务器710向接收方客户端716发送相关改变数据。例如,如所解说的,改变信息720不提示服务器发送相关改变数据。
图8解说了一种用于响应于对共享电子文档的改变来确定是否要向客户端发送信息的方法800。
在一实施例中,方法800开始于接收第一活动区域操作802。接收第一活动操作802可以通过客户端向服务器发送关于客户端的活动区域信息的信息来发生。接收第一活动区域802可以通过使用参考图2描述的模块来实现。另外,接收到的第一活动区域可以是参考图3、4或5讨论的任何区域。第一活动区域是当前正在访问文档的特定客户端的活动区域。
该方法可继续接收第二活动区域操作804。接收第二活动区域操作804可以通过客户端发送关于该客户端的活动区域信息的信息来发生。接收第二活动区域804可以通过使用参考图2描述的模块来实现。另外,接收到的第二活动区域可以是参考图3、4或5讨论的任何区域。与第二活动区域有关的客户端可以是与同第一活动区域有关的客户端不同的客户端。例如,两个客户端可能正在访问同一共享文档。然而,这两个客户端可能正在用不同的方式与该共享文档交互。例如,客户端的视图可以是不同的,并且活动区域可以被定义为使得视图是活动区域。替换地,同一客户端可以与第一活动区域和第二活动区域两者有关。例如,用户可能正在与一客户端交互,这导致该客户端向服务器发送关于其活动区域的信息。在之后的某一时间,用户可能与该客户端交互,使得活动区域需要被更新。这可以在例如客户端改变视图并且活动区域被定义为视图时发生。
该方法可继续以接收改变的指示操作806。改变指示指示了对共享电子文档的改变已经发生。在各实施例中,改变可以作为客户端改变电子表格中的单元格的内容的结果而发生。在其他实施例中,可能的情况是客户端已经将一行或一列插入电子表格内、已经改变了单元格的格式、已经从电子表格中创建了表格或图、或者已经定义了电子表格的宏数据。替换地,改变可以作为对共享电子文档的某一服务器侧更新的结果而发生。
方法800可继续以确定是否要向客户端发送更新808。在各实施例中,服务器分析接收到的第一活动区域以确定是否要发送更新。例如,服务器可以将客户端的活动区域与改变的指示作比较。在各实施例中,如果活动区域指示客户端当前视图将受到对共享文档的改变的影响,则服务器可确定要发送更新。由此,在这一示例中,服务器可以确定具有包括单元格A2的视图的客户端应当接收响应于对单元格A2的改变的更新。
在其他实施例中,确定操作808使用历史信息来确定是否要向客户端发送信息。例如,活动区域可以类似于图4中引用的活动区域。另外,历史信息可指示具有特定活动区域的用户可能向下以及向右滚动。或者,历史信息可专用于该用户或客户端。由此,如果已经接收到影响共享电子文档的非可见活动区域的改变,则服务器可确定要发送更新。
如果确定操作808得到更新要被发送的确定,则方法800接着继续以发送相关改变数据操作810。确定在发送相关改变操作810中要发送什么相关改变数据参考图9进一步讨论。
在发送更新的活动区域操作810之后,方法800终止。如果确定操作808得到更新不要被发送的确定,则方法800终止。
图9解说了一种用于响应于对共享电子文档的改变来确定要向客户端发送什么信息的方法。
在各实施例中,方法900开始于分析改变的指示操作902。在操作902中,服务器分析对共享电子文档作出的改变。例如,共享电子文档可以是电子表格,并且可以作出对单元格的内容的改变。服务器接着可以基于对该单元格内容的改变来标识什么其他单元格可能改变。
如所解说的,方法900继续以分析存储的活动区域操作904。在其他实施例中,分析存储的活动区域操作904可以在分析改变的指示操作902之前发生。在操作904中,服务器通常标识当前正在访问共享电子文档的所有或大部分客户端的活动区域。例如,服务器可以标识具有包括已经被改变的区域的视图的客户端。替换地,服务器可以标识可能受到该改变的影响的其他活动区域,诸如非可见活动区域。
方法900可继续以确定相关改变数据906。例如,相关改变数据在活动区域包括视图并且视图中的单元格已经被改变的情况下可包括对视图的更新。另外,相关改变数据可包括基于历史使用信息被知晓将是相关的信息。这可包括非可见活动区域信息。相关改变数据通常包括关于整个活动区域和/或对于支持用户当前或将来交互有用的区域的信息,因为活动区域是用户正在或将可能与之交互的共享文档的区域。
在一实施例中,方法900继续以渲染相关改变数据操作908。在操作908中,相关改变数据被渲染为客户端可使用的格式。在渲染活动区域操作908之后,方法900继续至发送操作910。在发送操作910中,经渲染的图像被发送到客户端。
图10解说了一种客户端接收相关改变数据的方法1000。在各实施例中,方法1000开始于接收相关改变数据操作1002。这通过客户端连接到网络并且接收相关改变数据来发生。相关改变数据通常不以常规间隔来接收,因为相关改变数据仅在对共享电子文档的改变并且基于活动区域该改变被确定为与客户端相关之后才被发送。
在各实施例中,方法1000继续以显示相关改变数据1004。显示操作1004可包括在客户端的视图中显示与改变有关的信息。例如,共享电子文档可以是电子表格,并且对电子表格的改变可以是对单元格A2的改变。单元格A2可以是电子表格的单元格KK232中的变量。视图可包括单元格KK232。在这一示例中,相关改变数据可以是对单元格KK232中的值的更新。因而,在这一示例之后,显示相关改变数据包括显示单元格KK232的新值。
图11-13以及相关联的描述提供了其中可实施本公开的实施例的各种操作环境的讨论。然而,关于图11-13所示出和讨论的设备和系统是用于示例和说明的目的,而非对可被用于实施本文所述的本公开的各实施例的大量计算设备配置的限制。
图11是示出可用来实施本发明的各实施例的计算设备1124的物理组件(即硬件)的框图。以下所述的计算设备组件可适合于以上所述的计算设备。在基本配置中,计算设备1124可包括至少一个处理单元1102以及系统存储器1104。取决于计算设备的配置和类型,系统存储器1104可包括但不限于易失性存储(例如,随机存取存储器)、非易失性存储(例如,只读存储器)、闪存、或者此类存储器的任何组合。系统存储器1104可包括操作系统1105以及适用于运行软件应用1120(诸如块选择器模块1122)的一个或多个程序模块1106。操作系统1105例如可适合于控制计算设备1124的操作。此外,可结合图形库、其他操作系统、或者任何其他应用程序来实践本公开的实施例,并且这些实施例不限于任何特定的应用或系统。该基本配置在图11中由虚线1108内的那些组件示出。计算设备1124可具有附加特征或功能。例如,计算设备1124也可以包括附加的数据存储设备(可移动和/或不可移动),诸如磁盘、光盘或带。这些附加存储在图11中由可移动存储设备1109和不可移动存储设备1110示出。
如上所声明的,大量程序模块和数据文件可被存储在系统存储器1104中。尽管在处理单元1102上执行,但是程序模块1106可以执行包括但不限于下列过程:图9中所示的方法900的各阶段中的一个或多个。根据本发明的实施例可使用的其他程序模块可包括电子邮件和联系人应用、文字处理应用、电子表格应用、数据库应用、幻灯片演示应用、绘图或计算机辅助应用程序等。
此外,本公开的各实施例可在包括分立电子元件的电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路、或在包含电子元件或微处理器的单个芯片上实现。例如,可以通过片上系统(SOC)来实施本公开的各实施例,其中,可以将图9中示出的每个或许多组件集成到单个集成电路上。此类SOC设备可包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元、以及各种应用功能,所有这些单元被集成(或“烧录”)到芯片基板上,作为单个集成电路。本发明的实施例还可使用能够执行诸如例如,AND(与)、OR(或)和NOT(非)的逻辑运算的其他技术来实践,包括但不限于,机械、光学、流体和量子技术。另外,本发明的各实施例可以在通用计算机或任何其他电路或系统中实现。
计算设备1124也可具有一个或多个输入设备1112,如键盘、鼠标、笔、语音输入设备、触摸输入设备等等。也可包括输出设备1114,如显示器、扬声器、打印机等等。前述设备是示例,并且可使用其他设备。计算设备1124可包括允许与其他计算设备1116通信的一个或多个通信连接1118。合适的通信连接1116的示例包括但不限于RF发射机、接收机、和/或收发机电路系统、通用串行总线(USB)、并行和/或串行端口。
如本文中所使用的术语计算机可读介质可包括计算机存储介质。计算机存储介质可包括以用于存储信息(诸如计算机可读指令、数据结构、或者程序模块)的任何方法和技术实现的易失性和非易失性、可移除和不可移除介质。系统存储器1104、可移动存储设备1109、以及不可移动存储设备1110都是计算机存储介质示例(即,存储器存储)。计算机存储介质可包括RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁存储设备、或者可用于存储信息且可由计算设备1124访问的任何其他制品。任何此类计算机存储介质可以是计算设备1124的一部分。计算机存储介质不包括载波或其他传播或已调数据信号。
通信介质由诸如载波或其他传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其他数据来体现,并包括任何信息传递介质。术语“已调制数据信号”可以描述以对该信号中的信息进行编码的方式设定或者改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接等有线介质,以及诸如声学、射频(RF)、红外线和其他无线介质等无线介质。
图12A和12B示出可用来实施本公开的各实施例的移动计算环境1200,例如移动电话、智能电话、平板个人计算机、膝上型计算机等。参考图12A,示出了用于实现各实施例的移动计算设备1200的一个实施例。在一基本配置中,移动计算设备1200是具有输入元件和输出元件两者的手持式计算机。移动计算设备1200通常包括显示器1205以及允许用户将信息输入到移动计算设备1200中的一个或多个输入按钮1210。移动计算设备1205的显示器1200也可充当输入设备(如触摸屏显示器)。如果包括在内,则可选的侧输入元件1215允许进一步的用户输入。侧输入元件1215可以是旋转开关、按钮、或任何其他类型的手动输入元件。在替代实施例中,移动计算设备1200可结合更多或更少的输入元件。例如,在某些实施例中,显示器1205可以不是触摸屏。在又一替代实施例中,移动计算设备1200是诸如蜂窝电话之类的便携式电话系统。移动计算设备1200还可包括可选的小键盘1235。可选的小键盘1235可以是物理小键盘或者在触摸屏显示器上生成的“软”小键盘。在各个实施例中,输出元件包括用于示出图形用户界面(GUI)的显示器1205、视觉指示器1220(如发光二极管)、和/或音频换能器1225(如扬声器)。在某些实施例中,移动计算设备1200结合振动换能器来向用户提供触觉反馈。在又一实施例中,移动计算设备1200结合诸如音频输入(如话筒插孔)、音频输出(如耳机插孔)、以及视频输出(如HDMI端口)之类的输入和/或输出端口,用于将信号发送到外部设备或从外部设备接收信号。
图12B是示出移动计算设备的一个实施例的架构的框图。即,移动计算设备1200可结合一系统(即架构)1202以实现某些实施例。在一个实施例中,系统1202被实现为能够运行一个或多个应用(如浏览器、电子邮件、日历、联系人管理器、消息收发客户端、比赛、以及媒体客户端/播放器)的“智能电话”。在某些实施例中,系统1202被集成为计算设备,诸如集成的个人数字助理(PDA)和无线电话。
一个或多个应用程序1266可被加载到存储器1262中并在操作系统1264上或与操作系统864相关联地运行。应用程序的示例包括电话拨号程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、因特网浏览器程序、消息通信程序等等。系统1202还包括存储器1268内的非易失性存储区1262。非易失性存储区1268可被用于存储在系统1202断电的情况下不会丢失的持久信息。应用程序1266可使用信息并将信息存储在非易失性存储区1268中,如电子邮件应用使用的电子邮件或其他消息等。同步应用(未示出)也驻留于系统1202上且被编程为与驻留在主机计算机上的对应的同步应用交互,以保持非易失性存储区1268中存储的信息与主机计算机处存储的相应信息同步。应当理解,其它应用也可被加载到存储器1262中并在包括在此所述的块选择器逻辑模块1290的移动计算设备1200上运行。
系统1202具有可被实现为一个或多个电池的电源1270。电源1270还可包括外部功率源,如补充电池或对电池充电的AC适配器或加电对接托架。
系统1202还可包括执行发射和接收无线电频率通信的功能的无线电1272。无线电1272通过通信运营商或服务供应商方便了系统1202与“外部世界”之间的无线连接。来往无线电1272的传输是在操作系统1264的控制下进行的。换言之,无线电1272接收的通信可通过操作系统1264传播到应用程序1266,反之亦然。
可以使用可视指示器1220来提供可视通知,和/或可以使用音频接口1274来经由音频换能器1225产生可听通知。在所示实施例中,视觉指示器1220是发光二极管(LED),而音频换能器1225是扬声器。这些设备可直接耦合到电源1270,使得当被激活时,即使为了节省电池功率而可能关闭处理器1260和其它组件,它们也保留一段由通知机制指示的保持通电时间。LED可被编程为无限地保持通电,直到用户采取动作指示该设备的通电状态。音频接口1274用于向用户提供听觉信号并从用户接收听觉信号。例如,除了被耦合到音频换能器1225之外,音频接口1274还可被耦合到话筒来接收可听输入,例如便于电话通话。根据各本发明的各实施例,话筒也可充当音频传感器来便于对通知的控制,如下文将描述的。系统1202可进一步包括允许机载相机1230的操作来记录静止图像、视频流等的视频接口1276。
实现系统1200的移动计算设备1202可具有附加特征或功能。例如,移动计算设备1200还可包括附加数据存储设备(可移动和/或不可移动),例如磁盘、光盘或磁带。这种附加存储设备在图12B中用非易失性存储区1268示出。
由移动计算设备1200生成或捕捉的且经系统1202存储的数据/信息可如上所述被本地存储在移动计算设备1200上,或数据可被存储在可由设备通过无线电1272或通过移动计算设备1200和与移动计算设备1200相关联的一分开的计算设备之间的有线连接访问的任何数量的存储介质上,该计算设备如例如因特网之类的分布式计算网络中的服务器计算机。如应理解的,此类数据/信息可经移动计算设备1200、经无线电1272或经分布式计算网络来被访问。类似地,可以在根据熟知的数据/信息转移和存储装置(包括电子邮件和协同数据/信息共享系统)的用于存储和使用的计算设备之间容易地转移此类数据/信息。
图13是可在其中实施本公开的各实施例的分布式计算系统的简化框图。与电子表格1318相关联地进行开发、交互或编辑的内容可被存储在不同的通信信道或其他存储类型中。例如,可使用目录服务1322、web门户1324、邮箱服务1326、即时消息收发存储1328、或者社交联网站点1330来存储各种文档。服务器1320可将共享文档应用1318提供给客户端。作为一个示例,服务器1320可以是通过web提供共享文档应用1318的web服务器。服务器1320可在web上通过网络1315向客户端提供共享文档应用1318。作为示例,客户端计算设备可被实现为计算设备1304并体现为个人计算机、平板计算设备1310和/或移动计算设备1300(如智能电话)中。客户端计算设备1304、1310、1300的这些实施例中的任一个可从存储1316获得内容。
以上参考例如根据本发明的各实施例的方法、系统和计算机程序产品的框图和/或操作图示描述了本发明的各实施例。框中所注明的各功能/动作可以按不同于任何流程图所示的次序出现。例如,取决于所涉及的功能/动作,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以按相反的次序来执行。
本申请中提供的一个或多个实施例的描述和说明不旨在以任何方式限制或约束如权利要求所要求保护的发明范围。本申请中提供的实施例、示例和细节被认为是足以传达所有权,且使得他人能够制作并使用所要求保护的发明的最佳模式。所要求保护的发明不应被理解为限制于本申请中所提供的任何实施例、示例或细节。不管是以组合的方式还是分开的方式示出和描述,各种特征(结构上的和方法逻辑上的)旨在被选择性地包括或忽略,以产生具有特定的特征集的实施例。在被提供本申请的描述和说明的情况下,本领域的技术人员能够想象到落在所要求保护的发明的范围内的变体、修改和替代实施例。

Claims (10)

1.一种在协作式联网环境中交换信息的计算机实现的方法,所述方法包括:
从第一客户端接收描述共享电子文档的第一活动区域的信息;
接收对所述共享电子文档的内容的改变的指示,其中所述改变影响所述共享电子文档的所述第一活动区域,并且影响所述共享电子文档的、在所述第一活动区域之外的第二区域;
确定所述第一客户端要求更新,其中确定包括确定所述改变将影响所述第一活动区域和在所述第一活动区域之外的第二区域;
确定要发送到所述第一客户端的相关改变数据,其中,所述相关改变数据不包括用于更新所述第二区域的信息;以及
将所述相关改变数据发送到所述第一客户端,而不要求响应于来自所述第一客户端的对相关改变数据的请求来发送所述相关改变数据,并且不发送用于更新所述第二区域的信息。
2.如权利要求1所述的方法,其特征在于,对所述共享电子文档的改变的指示来自第二客户端。
3.如权利要求1所述的方法,其特征在于,所述第一活动区域是所述第一客户端的视图。
4.如权利要求1所述的方法,其特征在于,所述共享电子文档是电子表格。
5.如权利要求4所述的方法,其特征在于,所述改变是从由以下各项组成的组中选择的改变:对所述电子表格中的单元格的值的改变、将图像添加到所述电子表格、对链接到所述电子表格中的单元格的值的改变、以及对链接到所述电子表格中的图表的值的改变。
6.如权利要求5所述的方法,其特征在于,所述改变是对所述电子表格中的单元格的值的改变,并且所述电子表格中的单元格的值影响所述电子表格的另一单元格的值,并且进一步其中所述另一单元格位于所述第一客户端的所述第一活动区域中。
7.一种计算机可读存储介质,所述计算机可读存储介质存储计算机可执行指令以用于执行一种在协作式联网环境中交换信息的方法,所述方法包括:
从第一客户端接收描述共享电子文档的第一活动区域的信息;
接收对所述共享电子文档的的内容的改变的指示,其中所述改变影响所述共享电子文档的所述第一活动区域,并且影响所述共享电子文档的、在所述第一活动区域之外的第二区域;
确定所述第一客户端要求更新,其中确定包括确定所述改变将影响所述第一活动区域和在所述第一活动区域之外的第二区域;
确定要发送到所述第一客户端的相关改变数据,其中,所述相关改变数据不包括用于更新所述第二区域的信息;以及
将所述相关改变数据发送到所述第一客户端,而不要求响应于来自所述第一客户端的对相关改变数据的请求来发送所述相关改变数据,并且不发送用于更新所述第二区域的信息。
8.如权利要求7所述的计算机可读存储介质,其特征在于,对所述共享电子文档的改变的指示来自第二客户端。
9.如权利要求7所述的计算机可读存储介质,其特征在于,所述第一活动区域是所述第一客户端的视图。
10.一种用于在协作式联网环境中交换信息的系统,所述系统包括:
电耦合至输入设备、输出设备、网络通信设备、存储设备、以及存储器的计算机处理器;
其中所述网络通信设备接收关于对共享电子文档的改变的信息;
其中所述输出设备通过视图来显示关于所述共享电子文档的信息;
其中所述网络通信设备发送关于对所述共享电子文档的活动区域的边界的改变的信息;
其中所述网络通信设备接收关于所述共享电子文档的相关改变数据,而不要求所述网络通信设备发送针对所述相关改变数据的请求,并且在所述共享电子文档的所述活动区域之外不接收相关改变数据;以及
其中在所述网络通信设备接收到所述相关改变数据之后,所述共享电子文档的活动区域的内容基于所述相关改变数据被更新,并且其中,所述共享电子文档的、在所述活动区域之外的一区域不基于所述相关改变数据被更新。
CN201480045290.XA 2013-06-14 2014-06-05 在协作式环境中对共享电子文档的更新 Active CN105593848B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/918,734 US10067927B2 (en) 2013-06-14 2013-06-14 Updates to shared electronic documents in collaborative environments
US13/918,734 2013-06-14
PCT/US2014/041056 WO2014200793A1 (en) 2013-06-14 2014-06-05 Updates to shared electronic documents in collaborative environments

Publications (2)

Publication Number Publication Date
CN105593848A CN105593848A (zh) 2016-05-18
CN105593848B true CN105593848B (zh) 2019-01-08

Family

ID=51210738

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480045290.XA Active CN105593848B (zh) 2013-06-14 2014-06-05 在协作式环境中对共享电子文档的更新

Country Status (4)

Country Link
US (1) US10067927B2 (zh)
EP (1) EP3008646B1 (zh)
CN (1) CN105593848B (zh)
WO (1) WO2014200793A1 (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10482638B2 (en) 2011-11-11 2019-11-19 Microsoft Technology Licensing, Llc Collaborative commenting in a drawing tool
US9817805B1 (en) * 2014-06-24 2017-11-14 Google Inc. Systems and methods for providing a collaborative document environment
US10191890B2 (en) * 2014-12-17 2019-01-29 Microsoft Technology Licensing, Llc Persistent viewports
US10572584B1 (en) * 2015-08-12 2020-02-25 Workday, Inc. Spreadsheet region and cell sharing
US9798889B1 (en) 2015-08-12 2017-10-24 Workday, Inc. Spreadsheet shared region and cell permissions
US10789378B1 (en) 2015-08-12 2020-09-29 Workday, Inc. User interface for region and cell sharing
US10552530B1 (en) 2015-08-12 2020-02-04 Workday, Inc. Spreadsheet shared region and cell formula templating
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
CN106549990A (zh) * 2015-09-18 2017-03-29 阿里巴巴集团控股有限公司 一种分布式数据的处理方法和系统
US11036712B2 (en) 2016-01-12 2021-06-15 Microsoft Technology Licensing, Llc. Latency-reduced document change discovery
US10397733B2 (en) * 2016-10-01 2019-08-27 Intel Corporation Sharing of environmental data for client device usage
US11170164B2 (en) 2016-12-11 2021-11-09 DataRails LTD. System and method for cell comparison between spreadsheets
CN107766314B (zh) * 2017-10-20 2021-07-09 网易(杭州)网络有限公司 电子表格的数据处理方法和装置
US10733169B2 (en) 2018-05-25 2020-08-04 Microsoft Technology Licensing, Llc Interactive user interface for refreshable objects in shared documents
US11295073B2 (en) * 2018-08-01 2022-04-05 Microsoft Technology Licensing, Llc Cross-application ingestion and restructuring of spreadsheet content
US11113447B2 (en) 2018-08-01 2021-09-07 Microsoft Technology Licensing, Llc Cross-application ingestion and restructuring of slide presentation content
US11182538B2 (en) 2018-08-01 2021-11-23 Microsoft Technology Licensing, Llc Conversational user interface logic for cross-application ingestion and restructuring of content
US11681760B2 (en) 2018-08-01 2023-06-20 Microsoft Technology Licensing, Llc Cross-application ingestion and restructuring of content
CN112989773B (zh) * 2019-12-13 2024-02-20 北京庖丁科技有限公司 用于同步更新数据的方法、装置、设备和计算机可读介质
CN113595859A (zh) * 2020-04-30 2021-11-02 北京字节跳动网络技术有限公司 一种信息交互方法、装置、服务器、系统及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030014513A1 (en) * 2000-12-27 2003-01-16 Ruths Derek Augustus Samuel System and method for collaborative data resource representation
CN101454774A (zh) * 2006-03-31 2009-06-10 谷歌公司 协作在线电子表格应用
US8108779B1 (en) * 2008-12-16 2012-01-31 Adobe Systems Incorporated Collaborative editing operations
US20130047093A1 (en) * 2011-05-23 2013-02-21 Jeffrey Jon Reuschel Digital whiteboard collaboration apparatuses, methods and systems

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8386728B1 (en) 2004-03-31 2013-02-26 Google Inc. Methods and systems for prioritizing a crawl
WO2006053019A2 (en) * 2004-11-08 2006-05-18 Sharpcast, Inc. Method and apparatus for a file sharing and synchronization system
US7788237B2 (en) * 2004-12-17 2010-08-31 Microsoft Corporation Method and system for tracking changes in a document
US20080059539A1 (en) * 2006-08-08 2008-03-06 Richard Chin Document Collaboration System and Method
US7756824B2 (en) * 2007-10-26 2010-07-13 Microsoft Corporation Spreadsheet collaboration between rich and browser clients
US8689095B2 (en) * 2009-02-09 2014-04-01 Microsoft Corporation Grid presentation in web-based spreadsheet services
US9792385B2 (en) * 2009-06-19 2017-10-17 Oath Inc. Systems and methods for improved web-based document retrieval and object manipulation
US8572478B2 (en) * 2010-04-12 2013-10-29 Google Inc. Row heights in electronic documents
US8429521B2 (en) * 2010-04-12 2013-04-23 Google Inc. Scrolling in large hosted data set
US20120233555A1 (en) 2010-11-08 2012-09-13 Eyelead Sa Real-time multi-user collaborative editing in 3d authoring system
US8965983B2 (en) * 2011-05-06 2015-02-24 Microsoft Technology Licensing, Llc Changes to documents are automatically summarized in electronic messages
US8832588B1 (en) * 2011-06-30 2014-09-09 Microstrategy Incorporated Context-inclusive magnifying area
US9230243B2 (en) * 2011-10-13 2016-01-05 Dassault Systemes Collaborative design using duplicated workspaces
US10140278B2 (en) * 2012-03-26 2018-11-27 Adobe Systems Incorporated Computer-implemented methods and systems for associating files with cells of a collaborative spreadsheet
US9158746B2 (en) * 2012-06-13 2015-10-13 International Business Machines Corporation Managing concurrent editing in a collaborative editing environment using cursor proximity and a delay
US8504519B1 (en) * 2012-06-27 2013-08-06 Dropbox, Inc. Determining a preferred modified version from among multiple modified versions for synchronized files
US20140082470A1 (en) * 2012-09-19 2014-03-20 4Clicks Solutions, LLC Spreadtree hierarchy system for spreadsheets and related methods
US20150193492A1 (en) * 2012-11-08 2015-07-09 Google Inc. Editing sub-section of an electronic document via notification message

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030014513A1 (en) * 2000-12-27 2003-01-16 Ruths Derek Augustus Samuel System and method for collaborative data resource representation
CN101454774A (zh) * 2006-03-31 2009-06-10 谷歌公司 协作在线电子表格应用
US8108779B1 (en) * 2008-12-16 2012-01-31 Adobe Systems Incorporated Collaborative editing operations
US20130047093A1 (en) * 2011-05-23 2013-02-21 Jeffrey Jon Reuschel Digital whiteboard collaboration apparatuses, methods and systems

Also Published As

Publication number Publication date
EP3008646B1 (en) 2021-07-21
CN105593848A (zh) 2016-05-18
WO2014200793A1 (en) 2014-12-18
EP3008646A1 (en) 2016-04-20
US20140372855A1 (en) 2014-12-18
US10067927B2 (en) 2018-09-04

Similar Documents

Publication Publication Date Title
CN105593848B (zh) 在协作式环境中对共享电子文档的更新
CN105531694B (zh) 在电子表格中显示多个作者的在场
JP6254950B2 (ja) 存在ベースの同期
CN105683946B (zh) 电子表格应用中的无缝网格和画布集成
CN108431797A (zh) 电子文档的存储器节约的版本控制
WO2016191224A1 (en) Unified messaging platform for providing interactive semantic objects
CN105683896A (zh) 跨多个虚拟机共享虚拟硬盘
US9171099B2 (en) System and method for providing calculation web services for online documents
TW201346596A (zh) 使用文件註解來追蹤共同編輯之衝突
CN105408861A (zh) 电子笔记的预览
MX2015004635A (es) Tecnicas para presentar informacion de evento utilizando una visualizacion de cronometraje de evento.
CN108885557A (zh) 分批的任务
CN109155804A (zh) 基于卡片的信息管理方法与系统
WO2015134286A1 (en) Shadowing local on-premises information to a cloud-based computing system
CN109923834A (zh) 用于协作工作空间环境的上下文对话
CN104272254A (zh) 用户界面web服务
CN108292303A (zh) 活动通知系统
CN104067229B (zh) 用于跨应用版本的对象/形状的属性的计算的方法和系统
CN109983488A (zh) 电子邮件项的自动化显示状态
US20150248734A1 (en) Displaying activity streams for people and groups in an enterprise
CN106663122A (zh) 在文档中利用数据搜索
Xiao et al. [Retracted] Design and Implementation of Office Automation System Based on Internet of Things Technology
CN110140120A (zh) 上下文洞察系统
CN108351901A (zh) 统一活动服务
US11250074B2 (en) Auto-generation of key-value clusters to classify implicit app queries and increase coverage for existing classified queries

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant