CN102262620B - 一种文档协作方法 - Google Patents

一种文档协作方法 Download PDF

Info

Publication number
CN102262620B
CN102262620B CN201110222433.8A CN201110222433A CN102262620B CN 102262620 B CN102262620 B CN 102262620B CN 201110222433 A CN201110222433 A CN 201110222433A CN 102262620 B CN102262620 B CN 102262620B
Authority
CN
China
Prior art keywords
document
client
fragment
cooperation method
server
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
CN201110222433.8A
Other languages
English (en)
Other versions
CN102262620A (zh
Inventor
莫晓强
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.)
Evermore Software Ltd By Share Ltd
Original Assignee
Wuxi Evermore Software Inc
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 Wuxi Evermore Software Inc filed Critical Wuxi Evermore Software Inc
Priority to CN201110222433.8A priority Critical patent/CN102262620B/zh
Publication of CN102262620A publication Critical patent/CN102262620A/zh
Priority to KR1020137031529A priority patent/KR20140028040A/ko
Priority to US14/129,290 priority patent/US20140129645A1/en
Priority to EP12820636.4A priority patent/EP2741216A4/en
Priority to JP2014523184A priority patent/JP2014524604A/ja
Priority to PCT/CN2012/079239 priority patent/WO2013017038A1/zh
Application granted granted Critical
Publication of CN102262620B publication Critical patent/CN102262620B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • 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
    • G06Q10/101Collaborative creation, e.g. joint development of products or services

Abstract

本发明公开了一种文档协作方法,采用多个客户端协同处理位于服务器上的一个文档,所述文档包括多个文档片段。所述文档协作方法包括:各个客户端选定所述文档中未被其它客户端选定的文档片段进行编辑,并将编辑后的与所述文档相关的数据发送到所述服务器;所述服务器将所述数据转发给其它客户端。与现有技术相比,本发明中的文档协作方法包括有以下优点:将协作文档划分为若干个文档片段,同一时间只能由一个客户端来独占所述文档片段的编辑权限,从而不会发生多个用户对同一内容进行修改时产生冲突。

Description

一种文档协作方法
【技术领域】
本发明涉及办公应用领域,特别涉及利用多人协同处理一份文档的文档协作方法。
【背景技术】
现代社会中,办公软件已经融入到了日常办公的方方面面。诸如Word、Excel和PPT之类的办公软件大大促进了人们无纸化办公的实现。然而,随着互联网技术和计算机技术的不断发展,网络化办公和云计算办公为用户提供更为高效和快捷的办公平台成为了可能。
由于一个企业通常有多个部门,每个部门又有多个职员。这就导致了在目前的企业日常办公中,企业在处理需要多个部门或者员工协同完成文档时经常会碰到很多不方便的问题。例如:企业需要撰写一个商业计划书,则可能不仅需要研发部门提供新的项目构想,同时还需要技术部门提供实现该项目构想的技术支持;市场部门提供该项目构想的市场前景、成本和收益分析;财务部门提供该项目构想的投资预算和融资规划等等。由于该商业计划书中的各个章节互相彼此关联,所以采用传统的办公方法不能很好地完成各个部门的协调和信息对称。
虽然针对上述问题,现在已经有多种协作平台推出,但是传统的协作平台采用的解决方案主要是各个部门或者员工分别撰写文档的一部分,最后根据各文档的差异性来分情况合并文档,尽管也采用“浏览器+服务器”的B/S结构,但是并不是真正意义上的多用户实时协作系统。而目前较为优秀的协作平台主要是美国微软公司出品的Office 365云计算办公软件和美国谷歌公司出品的谷歌文档(Google Docs)中的协作组件。其中微软公司出品的Office365云计算办公软件中支持的协作方式为“保存+更新”方式,也就是说,当多个用户同时对一个文档进行协作编辑时,只有在当前用户点击保存以后,当前用户对于所述文档的相关操作才会被上传至服务器并且更新至其他协作用户,并且按照每个用户的保存操作存储多个所述文档的版本。显然,这种协作方式具有两个缺点:第一,一个用户对所述文档的修改是被动更新到服务器上的,容易发生信息更新不及时的情况;第二,如果两个用户都对相同部分的内容进行了修改,然后点击保存后会发生内容冲突,对于用户来讲不是非常方便。而美国谷歌公司出品的谷歌文档(Google Docs)中的协作组件采用了另外两种协作方式,在早期的谷歌文档的协作组件中采用的协作方式是每隔预定时间就自动更新一次各个协作用户对文档的修改,但是这种协作方式的缺点是更新时间对用户来讲是未知的,在用户正在编写过程中可能会突然更新,比如少了几行字或者多了几个字,不仅会干扰用户的创作思路,而且也存在内容冲突的可能;而在后续的谷歌文档的协作组件中采用的协作方式则是真正意义上的多用户实时协作-“光标跟随逐字更新”,具体来讲,在各个用户的浏览器视窗中,同时存在多个光标,每个光标对应一个正在编辑的用户,任何一个用户对所述文档的修改,都是逐字更新显示给其它用户,如图1所示。也就是说,每个用户都能够实时观察到其它用户对所述文档的修改过程。虽然这种协作方式是较为理想和成功的,但是这种协作方式还是具有两个缺点:第一,在一个用户的浏览器视窗中出现很多个光标,而且这些光标都是随其它用户的操作处于动态的,这些动态的光标也会一定程度上干扰用户的创作思路;第二,这种协作方式的实现需要较为稳定快速的网络和效率较高的浏览器,在一些较差的实施环境不能取得很好的效果。
因此,有必要提出一种新的技术方案来解决上述问题。
【发明内容】
本发明要解决的技术问题在于提供一种文档协作方法,所述文档协作方法既能实现多用户实时协作编辑文档,又不会发生内容冲突现象。
为了解决上述问题,本发明提供了一种文档协作方法,采用多个客户端协同处理位于服务器上的一个文档,所述文档包括多个文档片段,所述文档协作方法包括:各个客户端选定所述文档中未被其它客户端选定的文档片段进行编辑,并将编辑后的与所述文档相关的数据发送到所述服务器;所述服务器将所述数据转发给其它客户端。
进一步地,所述文档片段为按照页、标题、章、段、行、句、标号、单元格或者输入框中的一种或者多种作为单位划分所述文档后获得的文档片段。
进一步地,在一个客户端的光标停留于所述文档中的一个文档片段内时,表明该客户端选定了该文档片段,在一个客户端的光标离开了选定的文档片段时,表明该客户端对所述文档片段完成了编辑并解除选定。
进一步地,当一个客户端选定了一个文档片段后,所述文档片段在解除选定前无法被其它客户端选定。
进一步地,各个客户端在选定的文档片段内完成编辑后才将编辑后的与所述文档相关的数据发送到所述服务器。
进一步地,所述文档相关的数据为编辑过程中产生的操作数据。
进一步地,一个客户端在选定的文档片段内进行编辑时,根据编辑时采取的操作命令类型、操作对象和/或操作内容来生成操作数据,在编辑完成后将选定期间生成的操作数据封装为数据包发送给所述服务器。
进一步地,所述操作命令类型包括选择、编辑、修订、审阅、批注和保存。
进一步地,所述服务器将来自一个客户端的包含操作数据的数据包转发给其它客户端,其它客户端接收并解析所述数据包为对应操作数据,然后利用所述操作数据对所述文档进行处理和更新显示。
进一步地,所述服务器在发送数据包给其它客户端时,仅发送给当前在线联机的其它客户端。
进一步地,当一个客户端选择或者邀请其它客户端协作一份文档时,判断所述文档是否位于所述服务器中,如果不是,则将所述文档上传至所述服务器中并共享给其它客户端。
进一步地,当一个客户端选定一个文档片段后,所述服务器将该文档片段突出显示给其它客户端。
进一步地,所述突出显示包括增加阴影、改变背景色、改变前景色、改变文字颜色、增加文字信息中的一种或者几种。
与现有技术相比,本发明中的文档协作方法包括有以下优点:将协作文档划分为若干个文档片段,同一时间只能由一个客户端来独占所述文档片段的编辑权限,从而不会发生多个用户对同一内容进行修改时产生冲突。
【附图说明】
结合参考附图及接下来的详细描述,本发明将更容易理解,其中同样的附图标记对应同样的结构部件,其中:
图1为现有的谷歌文档的协作组件在进行多用户实时协作时的实施示意图;
图2为本发明中的文档协作方法的实施环境在一个实施例中的结构示意图;
图3为本发明中的文档协作方法在一个实施例中的方法流程图;
图4A和图4B为本发明中的文档协作方法在一个实施例中的应用示例;和
图5为本发明中的文档协作方法在另一个实施例中的方法流程图。
【具体实施方式】
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明的详细描述主要通过程序、步骤、逻辑块、过程或其他象征性的描述来呈现,其直接或间接地模拟本发明中的技术方案的运作。所属领域内的技术人员使用此处的这些描述和陈述向所属领域内的其他技术人员有效的介绍他们的工作本质。
此处所称的“一个实施例”或“实施例”是指与所述实施例相关的特定特征、结构或特性至少可包含于本发明至少一个实现方式中。在本说明书中不同地方出现的“在一个实施例中”并非必须都指同一个实施例,也不必须是与其他实施例互相排斥的单独或选择实施例。此外,表示一个或多个实施例的方法、流程图或功能框图中的模块顺序并非固定的指代任何特定顺序,也不构成对本发明的限制。
请参考图2,其示出了本发明中的文档协作方法的实施环境在一个实施例200中的结构示意图。所述实施环境200包括有服务器120、通过网络160与所述服务器120建立通讯的若干个客户端140。所述网络160可以包括局域网(LAN)、广域网(WAN)、移动通信网、公共交换电话网络(PSTN)或它们的组合。为了简便,图2中仅示出了四个客户端140和一个服务器120,但是可以认识到,在实践中可以有更多的客户端和更多的服务器。
所述客户端140可以包括个人计算机、笔记本电脑、平板电脑、智能手机或个人数字助理(PDA)等信息处理装置。在这些信息处理装置中运行有浏览器或者预定的客户端软件或者插件等。诸如部门领导、项目负责人之类的主作者可以通过所述客户端140来创建和取消一个协作组。在创建协作组的过程中,可以选择或者邀请若干个其它客户端140作为协作者,并且对各个协作者进行协作文档的相关权限分配,比如所述协作文档的查看、编辑、审阅、修订和批注等等。诸如员工、技术支持人员之类的协作者可以通过所述客户端140来对协作文档进行编辑。在具体协作时,协作文档可以划分为若干个文档片段,比如每一个段落为一个文档片段。该协作文档的一个客户端140在同一时间可以选定一个或者几个这样的文档片段进行编辑操作,比如插入或者删除文字及数据、设置段落格式等等。在所述客户端140编辑该文档片段的过程中或者过程后,有关于该文档片段的数据会通过服务器120转发给该协作文档的其它客户端140。然后其它客户端140利用所述数据更新所述协作文档的显示。
所述服务器120可以是计算机、专用服务器或者云计算服务模组等等。所述服务器120主要用于存储和管理所述协作文档、各个协作文档的权限分配和各个客户端140的相关信息。所述服务器120还可以根据各个客户端的在线情况,来选择性地将相应的操作数据转发给各个客户端140。
请参考图3,其示出了本发明中的文档协作方法在一个实施例300中的方法流程图。所述文档协作方法300采用多个客户端协同处理位于服务器上的一个协作文档,所述协作文档包括有多个文档片段。这些文档片段可以是一页文字、属于一个标题的一部分文字、属于一章的一部分文字、一段文字、一行文字、一句文字、两个相同标点或者符号之间的内容、一个单元格或者一个输入框等等。所述文档协作方法300包括:
步骤302,各个客户端选定所述协作文档中未被其它客户端选定的文档片段进行编辑;
为了避免多用户对同一文档片段的内容进行编辑引发冲突。各个客户端可以选定所述协作文档中未被其它客户端选定的文档片段进行编辑。在具体的实施例中,所述文档片段在被一个客户端选定后就通过突出显示给其他客户端的方式,让其它客户端获知该文档片段正在被编辑。在另一个实施例中,所述文档片段在突出显示的过程中,还会显示正在对其编辑的用户信息,比如在该文档片段的空白处显示文字“正在被用户XX编辑中...”。而且所述文档片段在突出显示的过程中是无法被选定的。
步骤304,将编辑后的与所述协作文档相关的数据发送到所述服务器;
在所述客户端对一个文档片段进行编辑的过程中或者过程后,可以将编辑过程中生成的与所述协作文档相关的数据发送到所述服务器。所述相关数据可以是修改后的最新版本的文档片段的数据,也可以是编辑过程中产生的操作数据等等。总之,所述与协作文档相关的数据可以使得其它客户端获知当前客户端的编辑内容。
步骤306,所述服务器将所述数据发送给其它客户端;
所述服务器在接收到与所述协作文档相关的数据后,可以利用将所述数据将所述协作文档进行更新处理,但是所述服务器也需要将所述数据发送到其它客户端,以便其它客户端也能够将所述协作文档进行更新处理。
步骤308,其它客户端接收所述数据,并且根据所述数据对所述协作文档进行更新。
当其它客户端接收到所述数据后,就可以获知当前客户端的编辑内容,并且根据所述数据可以将所述协作文档更新并显示。在一个具体的实施例中,用户A和用户B采用所述文档协作方法来对一个文字文档进行协作编辑,当所述用户A在对第X页第2段进行编辑时,可以采用对所述协作文档的第X页第2段突出显示给用户B,如图4A所示的增加阴影的效果,所述突出显示的方式包括增加阴影、改变背景色、改变前景色、改变文字颜色、增加包含作者信息的阴影等方式,以便使得用户B能够获知该文档片段正在被其它用户编辑,同时用户B的光标也无法进入所述文档片段。同理,被用户B正在编辑的第X页第3段对于用户A来讲也是呈阴影笼罩效果的。
当所述用户A在对第X页第2段完成编辑后,又对第X页第4段进行编辑时,对于用户B来讲,所述协作文档的第X页第2段会解除阴影笼罩效果,并更新显示为被用户A修改后的版本,而用户A当前正在编辑的第X页第4段又转变为阴影笼罩效果,也即光标无法进入的锁定状态,如图4B所示。易于思及地,一个客户端仅能够选定未被其它客户端选定的文档片段来编辑,所以所述文档协作方法不会发生多用户对同一内容进行修改而产生的冲突问题。
为了描述本发明的诸多方面和更多细节,请继续参考图5,其示出了本发明中的文档协作方法在另一个实施例500中的方法流程图。所述文档协作方法500包括:
步骤501,一个客户端选定协作文档和其它客户端创建协作组;
当主作者需要就一篇文档发起多用户协作时,可以通过客户端来进行选定需要协作的文档和邀请其它用户等操作以便创建协作组。被选定的协作文档可以是文字文档、电子表格或者电子演示文档中的一种。其它用户可以通过其它客户端直接或者可选择性地加入所述协作组。并且主作者在创建所述协作组的同时可以指定协作者对该协作文档所拥有的权限,比如协作者A对该协作文档拥有查看、编辑、修订、审阅和批注权限;协作者B对该协作文档拥有查看、编辑权限等等。
步骤502,判断所述协作文档是否位于所述服务器中;如果是则步骤503,共享所述协作文档;如果不是则步骤504,则将所述协作文档上传至所述服务器中,然后共享给相关客户端。
因为在创建协作组时,通常情况下协作文档是位于主作者的客户端中的本地文件;还有可能是主作者临时新建的一个文档,此时就需要将这个协作文档上传到服务器中并且共享给相关协作者的客户端。在一个实施例中,所述服务器中可以包括有多个用于存储用户文档的空间,比如用于存储私人文档的“我的空间”,用于存储一个小组的共享文档的“小组共享空间”和存储协作文档的“协作共享空间”。所述协作文档在未创建协作组时可能存储在服务器中只有主作者拥有所有权限的“我的空间”,那么在创建协作组时就需要将所述协作文档从“我的空间”中移动或者复制到“协作共享空间”,并且根据主作者指定的权限分配来共享所述协作文档给各个协作者。换句话说,判断所述协作文档是否位于所述服务器中的主要原因是为了满足共享需求。如果所述协作文档虽然存储于所述服务器但是却无法共享给其它客户端,也应当首先将所述协作文档移动或者复制到可以共享给其它客户端的存储位置。
步骤505,将协作文档划分为若干个文档片段,当前客户端的光标停留于协作文档中一个文档片段的内部时,所述文档片段被该客户端选定,在选定过程中,当前客户端独占被选定的文档片段的编辑权限;
为了便于协作,可以将所述协作文档划分为若干个文档片段,所述文档片段可以按照页、标题、章、段、行、句、标号、单元格或者输入框中的一种或者多种作为单位划分所述协作文档后获得的文档片段。如果所述协作文档是一个新建空白文档,则可以将每一个空白行作为一个文档片段。并且在后续的编辑过程中,未被编辑的空白行和通过删除数据产生的空白行也可以作为一个文档片段。本文中所述多个和若干个均包括两个、三个和三个以上。每个客户端可以选定所述协作文档中未被其它客户端选定的文档片段进行编辑。在一个实施例中,所述协作文档是一个文字文档,并且被以段为单位划分为若干个文档片段。当一个客户端的光标停留于一个段落内时,该段落就会被该客户端所选定,通常情况下,当前客户端独占被选定的文档片段的编辑权限,而其它客户端此时只能够拥有此文档片段的查看权限。此过程的实现,可以通过触发一个命令类型为设定文档片段权限的操作数据来发送给服务器,从而使所述服务器对这个文档片段的相关权限进行分配和管理。当前客户端独占的编辑权限可以为广义的包括常用编辑、修订、审阅和批注的所有编辑权限,也可以是窄义的不包括修订、审阅和批注的常用编辑权限。
步骤506,根据编辑时采取的操作命令类型、操作对象和操作内容来生成操作数据;
当一个文档片段被选定以后,选定该文档片段的客户端可以自由编辑该文档片段内的相关内容,比如可以对所述协作文档进行选择、插入、替换、查找、设定字体格式、设定段落格式、输入公式、修订、审阅和批注等等操作。所述客户端根据用户编辑时采取的操作命令类型、操作对象和操作内容来生成操作数据。所述操作命令类型包括选择、编辑、修订、审阅、批注、保存和设定权限;所述操作对象通常为选定的文档片段内部分或者全体内容;所述操作用户为当前客户端;所述操作内容包括插入的文字、修订时替换的文字、批注的文字或者其它操作命令时的具体内容。比如用户A采用的操作是替换第X页第Y段第三行中的“快了”为“快乐”,则操作命令类型为“替换”、操作对象为第X页第Y段第三行的“快了”或者说“快了”对应的存储位置、操作内容为“快乐”和操作用户为用户A。当然所述操作数据具体包含的信息可能是所述操作命令类型、操作对象、操作用户和操作内容中的一种或者多种,甚至包括其它种信息。需要说明的是,有关选择、编辑、修订、审阅、批注和保存的操作命令是用户编辑时常用的编辑操作,而设定权限的操作命令在一个实施例中包括:一个客户端的光标进入一个文档片段时触发的用于获取或独占该文档片段的编辑权限的相关命令,和一个客户端的光标离开一个文档片段时触发的用于释放该文档片段的编辑权限的相关命令。
步骤507,客户端在选定片段内编辑完成后将选定期间所有的操作数据封装为数据包发送给所述服务器;
一方面,为了能够及时地更新一个客户端对所述文档的修改给其它客户端;另一方面,为了简化更新过程和符合用户编辑时的习惯。当当前客户端的光标跳出选定的文档片段后,可以认为该客户端对所述文档片段完成了编辑并了解除选定。所述客户端则将该用户在选定期间对该文档片段进行编辑时产生的所有或大部分操作数据封装为一个数据包发送给服务器。这个数据包中同时还可以包括一个命令类型为释放该文档片段的编辑权限的操作数据,用以释放所述文档片段的编辑权限。易于联想的,如果当前客户端的光标停留于在所述文档片段的外部时又落入了另外一个文档片段的内部时,则还会产生获得另外一个文档片段的编辑权限的操作数据。但是应当意识到,用户在选定期间产生的操作数据通常是指用户对该文档片段进行的选择、编辑、修订、审阅、批注和保存有关的所有操作数据,并不包括设定文档片段权限的操作数据。所以关于设定文档片段权限的操作数据并不一定封装于该数据包同时发送,具体地讲,用于获得另一文档片段的编辑权限的操作数据可以不与该数据包同时发送,用于释放选定的文档片段的编辑权限的操作数据可以与该数据包同时发送。采用该步骤的更新方式,对于一个用户来讲,当一个被其它客户端选定的文档片段被释放时,会立刻显示所述文档片段的最新版本,使得用户不用观看其它客户端对该文档片段的具体编辑过程,而直接查看该文档片段的最终结果。
步骤508,所述服务器将所述数据包发送给其它在线联机的客户端,
所述服务器在接收到所述数据包后,需要将所述数据包转发给其它客户端。在一个实施例中,所述服务器中可以存储有各个客户端是否在线的状态信息,从而选择性地将所述数据包仅发送给当前在线联机的客户端,而不发送给不在线的客户端。
步骤509,其它客户端在接收并解析所述数据包,并且根据解析获得的操作数据对所述协作文档处理后进行显示;
由于所述协作文档是由多个用户来协同编辑的,所以每个用户都需要获得其它用户针对该协作文档的创作内容。当其他客户端接收到来自当前客户端的数据包时,其他客户端将该数据包解析为一个或者若干个操作数据,然后根据所述操作数据处理所述协作文档,使得所述协作文档更新显示为最新版本。比如用户B的客户端接收到来源于用户A的一个数据包,该数据包中包含有的一个操作数据内容是:操作命令类型为“替换”、操作对象为第X页第Y段第三行的“快了”、操作内容为“快乐”和操作用户为用户A。则用户B的客户端根据所述操作对象,寻找到第X页第Y段第三行的“快了”,然后采用操作命令类型“替换”,将操作内容“快乐”替换所述“快了”,最后利用操作用户为用户A来更新该部分相关的作者信息和版本信息。
显然,各个客户端重复步骤505至步骤509可以进行协作过程。当协作完成时,进入步骤510,主作者可以通过客户端保存所述协作文档并且取消所述协作组。当然,所述协作文档的保存工作也可以由其它客户端来完成。在取消协作组的过程中,还需要对所述协作文档的权限进行重新分配和释放,比如,释放其它协作者的编辑权限而保留查看权限等等。
综上所述,所述文档协作方法采用将所述文档划分为多个文档片段,并且使得每个客户端只能选定所述文档中未被其它客户端选定的文档片段来进行编辑的协作方式,很有效地解决了其它协作方式容易产生的多用户对同一内容进行修改发生冲突的现象。同时所述文档协作方法还采用在一个客户端对一个选定的文档片段进行编辑后,自动更新该客户端对该文档片段进行的相关操作数据给其他客户端的方式,使各个协作者基本完美实现了实时协作。而且在更新过程中,传输的数据包并不是整个或者部分协作文档的数据信息,而是用户在编辑一个选定文档片段时的操作数据,所以需要传输的数据量也相对较小,并且其它客户端在更新显示时需要的计算量也大大减小。另外需要说明的是,虽然上述描述中都以光标落入和跳出一个文档片段来作为选定方式,但是所述文档片段的选定方式并不局限于此种方式,比如在用户需要对多个文档片段进行段落格式设定时,可以采用鼠标拖选的方式同时选定若干个文档片段,但是这些文档片段必须是未被其他用户所选定的。
当然,在进一步地实施例中,所述文档协作方法中还可以加入版本控制机制,能够根据不同时间和不同协作者的修改来呈现所述协作文档的版本信息。所述文档协作方法还可以嵌入即时通信机制,使得各个协作者能够在协作过程中通过即时通信机制来完成点对点会话或者多点会话,以便讨论协作细节。
上文对本发明进行了足够详细的具有一定特殊性的描述。所属领域内的普通技术人员应该理解,实施例中的描述仅仅是示例性的,在不偏离本发明的真实精神和范围的前提下做出所有改变都应该属于本发明的保护范围。本发明所要求保护的范围是由所述的权利要求书进行限定的,而不是由实施例中的上述描述来限定的。

Claims (11)

1.一种文档协作方法,采用多个客户端协同处理位于服务器上的一个文档,所述文档包括多个文档片段,其特征在于,其包括:
各个客户端选定所述文档中未被其它客户端选定的文档片段进行编辑,并将编辑后的与所述文档相关的数据发送到所述服务器;
所述服务器将所述数据转发给其它客户端,
一个客户端在选定的文档片段内进行编辑时,根据编辑时采取的操作命令类型、操作对象和操作内容来生成操作数据,在编辑完成后将选定期间生成的操作数据封装为数据包发送给所述服务器,
所述服务器将来自一个客户端的包含操作数据的数据包转发给其它客户端,其它客户端接收并解析所述数据包为对应操作数据,然后利用所述操作数据对所述文档进行处理和更新显示。
2.根据权利要求1所述的文档协作方法,其特征在于,所述文档片段为按照页、标题、章、段、行、句、标号、单元格或者输入框中的一种或者多种作为单位划分所述文档后获得的文档片段。
3.根据权利要求1所述的文档协作方法,其特征在于,在一个客户端的光标停留于所述文档中的一个文档片段内时,表明该客户端选定了该文档片段,
在一个客户端的光标离开了选定的文档片段时,表明该客户端对所述文档片段完成了编辑并解除选定。
4.根据权利要求3所述的文档协作方法,其特征在于,当一个客户端选定了一个文档片段后,所述文档片段在解除选定前无法被其它客户端选定。
5.根据权利要求1至4任一所述的文档协作方法,其特征在于,各个客户端在选定的文档片段内完成编辑后才将编辑后的与所述文档相关的数据发送到所述服务器。
6.根据权利要求5所述的文档协作方法,其特征在于,所述文档相关的数据为编辑过程中产生的操作数据。
7.根据权利要求1所述的文档协作方法,其特征在于,所述操作命令类型包括选择、编辑、修订、审阅、批注和保存。
8.根据权利要求1所述的文档协作方法,其特征在于,所述服务器在发送数据包给其它客户端时,仅发送给当前在线联机的其它客户端。
9.根据权利要求1所述的文档协作方法,其特征在于,当一个客户端选择或者邀请其它客户端协作一份文档时,判断所述文档是否位于所述服务器中,如果不是,则将所述文档上传至所述服务器中并共享给其它客户端。
10.根据权利要求3所述的文档协作方法,其特征在于,当一个客户端选定一个文档片段后,所述服务器将该文档片段突出显示给其它客户端。
11.根据权利要求10所述的文档协作方法,其特征在于,所述突出显示包括增加阴影、改变背景色、改变前景色、改变文字颜色、增加文字信息中的一种或者几种。
CN201110222433.8A 2011-08-04 2011-08-04 一种文档协作方法 Active CN102262620B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201110222433.8A CN102262620B (zh) 2011-08-04 2011-08-04 一种文档协作方法
KR1020137031529A KR20140028040A (ko) 2011-08-04 2012-07-27 문서협업 방법
US14/129,290 US20140129645A1 (en) 2011-08-04 2012-07-27 Document Collaboration Method
EP12820636.4A EP2741216A4 (en) 2011-08-04 2012-07-27 DOCUMENTS COOPERATION PROCEDURE
JP2014523184A JP2014524604A (ja) 2011-08-04 2012-07-27 ファイル協力処理方法
PCT/CN2012/079239 WO2013017038A1 (zh) 2011-08-04 2012-07-27 一种文档协作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110222433.8A CN102262620B (zh) 2011-08-04 2011-08-04 一种文档协作方法

Publications (2)

Publication Number Publication Date
CN102262620A CN102262620A (zh) 2011-11-30
CN102262620B true CN102262620B (zh) 2014-11-26

Family

ID=45009252

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110222433.8A Active CN102262620B (zh) 2011-08-04 2011-08-04 一种文档协作方法

Country Status (6)

Country Link
US (1) US20140129645A1 (zh)
EP (1) EP2741216A4 (zh)
JP (1) JP2014524604A (zh)
KR (1) KR20140028040A (zh)
CN (1) CN102262620B (zh)
WO (1) WO2013017038A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110097342A (zh) * 2019-05-07 2019-08-06 北京深度制耀科技有限公司 一种文档协作处理的方法和装置

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9383888B2 (en) * 2010-12-15 2016-07-05 Microsoft Technology Licensing, Llc Optimized joint document review
CN102262620B (zh) * 2011-08-04 2014-11-26 无锡永中软件有限公司 一种文档协作方法
US10733151B2 (en) 2011-10-27 2020-08-04 Microsoft Technology Licensing, Llc Techniques to share media files
US9053079B2 (en) 2011-12-12 2015-06-09 Microsoft Technology Licensing, Llc Techniques to manage collaborative documents
CN102521407B (zh) * 2011-12-28 2015-04-01 谢勇 一种多用户之间的文档协作方法
CN104412257A (zh) 2012-07-12 2015-03-11 索尼公司 显示控制设备、显示控制方法、程序和通信系统
KR102009928B1 (ko) * 2012-08-20 2019-08-12 삼성전자 주식회사 협업 구현 방법 및 장치
US20160063651A1 (en) * 2013-04-17 2016-03-03 Gyan Prakash Kesarwani Method and system for enhancing social positioning and importance through personal and professional attributes
US9465784B1 (en) 2013-06-20 2016-10-11 Bulletin Intelligence LLC Method and system for enabling real-time, collaborative generation of documents having overlapping subject matter
CN104361484B (zh) * 2014-10-16 2018-04-17 浙江兰德纵横网络技术股份有限公司 一种实现多平台数据交互的办公自动化系统及方法
CN104301420B (zh) * 2014-10-23 2018-12-21 中国运载火箭技术研究院 一种支持多客户端的分布式文件共享系统及方法
CN105681367A (zh) * 2014-11-17 2016-06-15 中国移动通信集团公司 一种共享文件内容的方法、服务器和客户端
US10171581B2 (en) 2014-12-11 2019-01-01 LiveLoop, Inc. Blended operational transformation for multi-user collaborative applications
CN104598301B (zh) * 2014-12-29 2019-02-12 小米科技有限责任公司 协同工作方法及装置
US20160210273A1 (en) * 2015-01-15 2016-07-21 Sap Se In-memory workspace management
CN104599107A (zh) * 2015-02-16 2015-05-06 北京任我在线电子商务有限公司 高效进货系统及方法
US10552797B2 (en) 2015-03-13 2020-02-04 Gemba Software Solutions Inc. Procedure flow administration system and method
US10325014B2 (en) 2015-04-30 2019-06-18 Workiva Inc. System and method for convergent document collaboration
CN106302097A (zh) * 2015-06-05 2017-01-04 协宝电子商务有限公司 一种即时通讯消息的编辑方法
US10565297B2 (en) * 2015-06-26 2020-02-18 Microsoft Technology Licensing, Llc. Rumored changes for real-time coauthoring
US10275430B2 (en) * 2015-06-29 2019-04-30 Microsoft Technology Licensing, Llc Multimodal sharing of content between documents
US10146873B2 (en) * 2015-06-29 2018-12-04 Microsoft Technology Licensing, Llc Cloud-native documents integrated with legacy tools
CN105117382B (zh) * 2015-08-28 2020-04-28 百度在线网络技术(北京)有限公司 一种文档协同方法及装置
US10409901B2 (en) 2015-09-18 2019-09-10 Microsoft Technology Licensing, Llc Providing collaboration communication tools within document editor
AU2016354092B2 (en) * 2015-11-09 2020-02-20 Nexwriter Limited Collaborative document creation by a plurality of distinct teams
CN106844395A (zh) * 2015-12-03 2017-06-13 山大鲁能信息科技有限公司 多人同步在线文档编辑方法及装置
CN107667361B (zh) * 2015-12-11 2021-06-01 微软技术许可有限责任公司 用于传播文档更改的方法、系统和计算机可读介质
US10620811B2 (en) 2015-12-30 2020-04-14 Dropbox, Inc. Native application collaboration
CN105635289A (zh) * 2015-12-31 2016-06-01 上海摩软通讯技术有限公司 多设备互联操作的系统和方法
CN105743973B (zh) * 2016-01-22 2019-05-10 上海科牛信息科技有限公司 一种多人多设备实时同步云协作方法及系统
US9667676B1 (en) * 2016-01-29 2017-05-30 Dropbox, Inc. Real time collaboration and document editing by multiple participants in a content management system
CN105760437A (zh) * 2016-02-02 2016-07-13 刘敏 字库创作与发布方法、系统及字体输入方法
US10382502B2 (en) * 2016-04-04 2019-08-13 Dropbox, Inc. Change comments for synchronized content items
CN107402907A (zh) * 2016-05-20 2017-11-28 上海画擎信息科技有限公司 一种通用文档在线协同批注系统及方法
US11093705B2 (en) 2016-06-27 2021-08-17 Hancom Inc. Apparatus and method of verifying simultaneous edit match for markup language-based document
US10607001B2 (en) 2016-06-29 2020-03-31 Hancom Inc. Web-based electronic document service apparatus capable of authenticating document editing and operating method thereof
KR101899085B1 (ko) * 2017-01-26 2018-09-14 부경대학교 산학협력단 시나리오 작성 협업 방법 및 시스템
KR101954061B1 (ko) 2017-02-01 2019-05-17 주식회사 인프라웨어 공동 편집 문서를 공유하는 방법 및 장치
WO2019067888A1 (en) * 2017-09-29 2019-04-04 Xsb, Inc. METHOD, APPARATUS AND COMPUTER PROGRAM PRODUCT FOR MANAGING DOCUMENT MODIFICATION IN ORIGINAL AND CUSTOMIZED DOCUMENTS
CN109977377A (zh) * 2017-12-28 2019-07-05 重庆南华中天信息技术有限公司 智能编纂平台
CN109977367A (zh) * 2017-12-28 2019-07-05 重庆南华中天信息技术有限公司 智能编纂方法
CN108229917B (zh) * 2018-01-04 2021-07-30 四川隧唐科技股份有限公司 项目数据分析方法及系统
JP7106873B2 (ja) * 2018-01-23 2022-07-27 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
CN108549623B (zh) * 2018-04-12 2022-03-01 北京三快在线科技有限公司 协作文档编辑控制方法、装置、电子设备及存储介质
CN109299046B (zh) * 2018-08-30 2023-08-15 湖北工业大学 一种基于TCP WebSocket协议的协同编辑方法
CN109388673B (zh) * 2018-11-02 2020-10-27 山东星烁信息科技有限公司 可多人协作创作的网络创作与阅读系统
CN109710908A (zh) * 2018-12-24 2019-05-03 成都四方伟业软件股份有限公司 页面编辑方法、系统及装置
CN110109882A (zh) * 2019-04-02 2019-08-09 北京大麦地信息技术有限公司 一种在线协作处理文件的方法、装置、电子设备及服务器
CN110120968A (zh) * 2019-04-02 2019-08-13 北京大麦地信息技术有限公司 一种在线协作处理文件的方法、装置、电子设备及服务器
CN110096682B (zh) * 2019-04-17 2023-03-24 武汉初心科技有限公司 基于modoc数据结构来实现文档中数据的实时协作处理方法
KR102308015B1 (ko) * 2019-05-28 2021-10-01 네이버 주식회사 웹에서 에디팅 영역을 후킹하는 방식으로 공동편집을 지원하는 방법 및 시스템
CN110263286A (zh) * 2019-06-24 2019-09-20 北京字节跳动网络技术有限公司 在线协作文档的处理方法及设备
CN112241865A (zh) * 2019-07-16 2021-01-19 腾讯科技(深圳)有限公司 一种文档协同处理的方法以及相关装置
CN112417821A (zh) * 2019-08-05 2021-02-26 珠海金山办公软件有限公司 一种编辑管理的方法、装置、计算机存储介质及终端
CN110502488A (zh) * 2019-08-14 2019-11-26 北京字节跳动网络技术有限公司 在线文档的处理方法、装置、终端及存储介质
CN110636046A (zh) * 2019-08-20 2019-12-31 视联动力信息技术股份有限公司 一种协同处理文件的方法、服务器、电子设备及存储介质
US11755825B2 (en) * 2019-09-12 2023-09-12 Workiva Inc. Method, system, and computing device for facilitating private drafting
CN111190742B (zh) * 2019-10-16 2024-02-09 腾讯科技(深圳)有限公司 资源协同方法、装置、计算机设备和存储介质
CN112800002A (zh) * 2019-11-14 2021-05-14 腾讯科技(深圳)有限公司 在线协作文档的创建方法、装置、存储介质及电子装置
CN111428453B (zh) * 2019-12-31 2023-09-05 杭州海康威视数字技术股份有限公司 批注同步过程中的处理方法、装置以及系统
CN111327589B (zh) * 2020-01-19 2021-09-10 腾讯科技(深圳)有限公司 资源共享方法、装置、计算机可读存储介质和计算机设备
US11443108B2 (en) 2020-08-17 2022-09-13 Workiva Inc. System and method for document management using branching
US11100281B1 (en) 2020-08-17 2021-08-24 Workiva Inc. System and method for maintaining links and revisions
CN112215015A (zh) * 2020-09-02 2021-01-12 文思海辉智科科技有限公司 翻译文本修订方法、装置、计算机设备和存储介质
CN112884456A (zh) * 2020-10-01 2021-06-01 曹春华 基于云计算和知识图谱的服务更新方法及协同平台
CN112232776A (zh) * 2020-10-21 2021-01-15 苏州速显微电子科技有限公司 一种多用户工程协作方法
CN112329419A (zh) * 2020-11-05 2021-02-05 深圳壹账通智能科技有限公司 文档编辑方法、装置、服务器、终端和存储介质
CN112822232A (zh) * 2020-12-28 2021-05-18 浙江中控技术股份有限公司 批记录系统协同组态实现方法、装置、设备及存储介质
US11455461B2 (en) * 2021-01-12 2022-09-27 International Business Machines Corporation Self-executing document revision
US11100277B1 (en) 2021-02-15 2021-08-24 Workiva Inc. Systems, methods, and computer-readable media for flow-through formatting for links
CN112965946B (zh) * 2021-03-31 2022-12-13 建信金融科技有限责任公司 处理文档的方法、装置、设备和计算机可读介质
US11354362B1 (en) 2021-05-06 2022-06-07 Workiva Inc. System and method for copying linked documents
CN113312911B (zh) * 2021-05-26 2022-07-12 上海晏鼠计算机技术股份有限公司 一种基于大纲的自动授权与文段智能创作方法
CN113472776B (zh) * 2021-06-30 2022-12-27 亿图软件(湖南)有限公司 一种多人实时协作方法及系统
US11444906B1 (en) * 2021-07-22 2022-09-13 Slack Technologies, Llc Updating a user interface based on proximity data of users of a communication platform
US11640495B1 (en) 2021-10-15 2023-05-02 Workiva Inc. Systems and methods for translation comments flowback
CN113688121B (zh) * 2021-10-27 2022-03-01 飞狐信息技术(天津)有限公司 多人协作的内容管理方法、相关装置及计算机存储介质
CN114817158B (zh) * 2022-03-14 2023-03-24 山东日照发电有限公司 一种安全电子公文包系统
CN114818619A (zh) * 2022-06-27 2022-07-29 佳瑛科技有限公司 一种基于云端服务器的文档在线编辑处理方法及装置
US20240039969A1 (en) * 2022-07-27 2024-02-01 Zoom Video Communications, Inc. Integrating chat channels with document editing
CN116992515B (zh) * 2023-09-27 2023-12-26 山东华云三维科技有限公司 一种三维cad系统的装配文档更新方法及服务器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1821946A (zh) * 2006-02-16 2006-08-23 杭州华为三康技术有限公司 一种存储系统以及存储数据的方法和读取数据的方法
CN101315621A (zh) * 2007-05-29 2008-12-03 北京书生国际信息技术有限公司 一种实现文档共享编辑的方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7007229B2 (en) * 2003-04-11 2006-02-28 Sas Institute Inc. Computer-implemented system and method for web-based data access
GB2409541A (en) * 2003-12-23 2005-06-29 Mandorla Technology Ltd Editable information management system and method
US20090235161A1 (en) * 2008-03-15 2009-09-17 Microsoft Corporation Lossless Web-Based Editor For Complex Documents
US8352870B2 (en) * 2008-04-28 2013-01-08 Microsoft Corporation Conflict resolution
US8417666B2 (en) * 2008-06-25 2013-04-09 Microsoft Corporation Structured coauthoring
CN101350009B (zh) * 2008-09-05 2010-06-30 中国工商银行股份有限公司 一种协同文档编写系统
CN101477517B (zh) * 2009-01-21 2011-03-16 传神联合(北京)信息技术有限公司 一种office文档编辑多点远程同步的方法
US8209603B2 (en) * 2009-04-29 2012-06-26 Microsoft Corporation Maintaining undo and redo capability across metadata merges
CN101561826B (zh) * 2009-05-18 2011-03-16 汤胤 基于节点粒度语义的在线非结构化文档共享协同方法及其应用
CN102262620B (zh) * 2011-08-04 2014-11-26 无锡永中软件有限公司 一种文档协作方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1821946A (zh) * 2006-02-16 2006-08-23 杭州华为三康技术有限公司 一种存储系统以及存储数据的方法和读取数据的方法
CN101315621A (zh) * 2007-05-29 2008-12-03 北京书生国际信息技术有限公司 一种实现文档共享编辑的方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110097342A (zh) * 2019-05-07 2019-08-06 北京深度制耀科技有限公司 一种文档协作处理的方法和装置
CN110097342B (zh) * 2019-05-07 2021-07-27 北京深度制耀科技有限公司 一种文档协作处理的方法和装置

Also Published As

Publication number Publication date
US20140129645A1 (en) 2014-05-08
KR20140028040A (ko) 2014-03-07
JP2014524604A (ja) 2014-09-22
CN102262620A (zh) 2011-11-30
WO2013017038A1 (zh) 2013-02-07
EP2741216A1 (en) 2014-06-11
EP2741216A4 (en) 2015-04-15

Similar Documents

Publication Publication Date Title
CN102262620B (zh) 一种文档协作方法
JP7460689B2 (ja) スプレッドシートに基づくソフトウェアアプリケーション開発
US11438286B2 (en) Systems and methods for email attachments management including changing attributes
US20150193492A1 (en) Editing sub-section of an electronic document via notification message
US20170132188A1 (en) System and method for convergent document collaboration
US9189125B2 (en) Systems and methods for concurrent online and offline document processing
CN105144153A (zh) 用于内容组织的应用编程接口
US20130262974A1 (en) Tabular widget with mergable cells
CN109145272B (zh) 文本渲染和布局方法、装置、设备和存储介质
US20140351798A1 (en) Apparatus and method for managing software translation
CN110543303A (zh) 一种可视化业务平台
CN112654995A (zh) 跟踪在线协作电子文档中的内容归因
JP2022041865A (ja) テンプレートに基づくエクセル文書のオンライン作業システム
US11243934B1 (en) Systems and methods for copying and pasting suggestion metadata
CN105122238A (zh) 协作文档中的非协作过滤器
CN104731765A (zh) 解决由同时草稿引起的内容编辑冲突
US11698935B2 (en) System and method for copying linked documents
US11663199B1 (en) Application development based on stored data
US11119975B2 (en) Digital design application plugin for content updates and delivery
JP2010061200A (ja) 文書管理システム及び操作履歴表示方法
RU2568933C2 (ru) Система определения объема внесенных изменений в редактируемые и составляемые тексты
US11443108B2 (en) System and method for document management using branching
JP6614565B2 (ja) 報告書作成システム
US11861300B2 (en) System and method for maintaining links and revisions
KR20230067983A (ko) 스마트태그 기반의 업무처리장치 및 업무처리방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent for invention or patent application
CB03 Change of inventor or designer information

Inventor after: Mo Xiaoqiang

Inventor before: Mo Xiaoqiang

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM:

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: 214000 Jiangsu Province, Wuxi City District Zhenze Wuxi Road No. 18 (National) fish Software Park building D block

Patentee after: Evermore software Limited by Share Ltd

Address before: A road of national hi tech Industrial Development Zone, Wuxi City, Jiangsu province 214135 No. 18 Wuxi software park three (National) Volans D building

Patentee before: Wuxi Evermore Software Co., Ltd.