CN101587492B - 定位处理对象的方法和系统 - Google Patents

定位处理对象的方法和系统 Download PDF

Info

Publication number
CN101587492B
CN101587492B CN2009101364729A CN200910136472A CN101587492B CN 101587492 B CN101587492 B CN 101587492B CN 2009101364729 A CN2009101364729 A CN 2009101364729A CN 200910136472 A CN200910136472 A CN 200910136472A CN 101587492 B CN101587492 B CN 101587492B
Authority
CN
China
Prior art keywords
mark
source
file
binding
carried out
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
CN2009101364729A
Other languages
English (en)
Other versions
CN101587492A (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.)
Kingdee Software China Co Ltd
Original Assignee
Kingdee Software China Co Ltd
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 Kingdee Software China Co Ltd filed Critical Kingdee Software China Co Ltd
Priority to CN2009101364729A priority Critical patent/CN101587492B/zh
Publication of CN101587492A publication Critical patent/CN101587492A/zh
Application granted granted Critical
Publication of CN101587492B publication Critical patent/CN101587492B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本申请提供了一种定位处理对象的方法和系统。该方法包括:在第一对象和第二对象上分别绑定相互关联的第一标记和第二标记,其中,所述第一和第二对象至少包括表格、单元格、控件、文件或文件的一部分;对绑定有所述第一标记的所述第一对象执行第一操作;响应于所述第一操作获取所述第一标记;基于所述第一标记和第二标记之间的关联从所述第一标记确定所述第二标记;根据所确定的第二标记定位所述第二对象;以及对所述第二对象执行第二操作。

Description

定位处理对象的方法和系统
技术领域
本申请涉及数据管理,具体涉及一种定位并处理对象的方法和系统。
背景技术
现有的应用系统(如ERP系统)中存在多种对象,例如,表格、单元格等。在系统运行过程中,除分别对各对象进行独立的操作之外,还有可能要求对多个相互关联的对象执行对应操作,即,在对某一对象进行操作时,对与之关联的对象也进行相应的操作。例如,当对象为源表格和复制表格中的单元格时,可能要求源表格的单元格和复制表格中与之关联的单元格之间维持对应关系,并根据该对应关系对相互关联的单元格进行对应操作。例如,当源表格中的某单元格颜色改变时,复制表格中与该单元格关联的单元格的颜色也相应改变。
现有技术中,通常记录关联对象间的对应关系来对关联对象进行定位,以便实现关联对象之间的对应操作。在每次执行改变关联对象间的对应关系的操作之后,记录并更新关联对象之间的新的对应关系。例如,在源表格和复制表格中,通常直接记录关联单元格的横轴和纵轴的对应关系。例如,初始的对应关系可为(m,n)→(m,n),其表示源表格与复制表格中关联单元格的位置相同,上述表达式的左边和右边分别表示相互关联的单元格在源表格和复制表格中的位置。
实际应用中,可能对源对象和复制对象执行不同的操作从而使关联对象之间的对应关系发生改变。例如,在源表格或复制表格进行增行、删行等操作后,关联单元格之间的对应关系改变。以初始对应关系为(m,n)→(m,n)的关联单元格为例,如果复制表格在第n列前插入了一列,该对应关系则变为(m,n)→(m,n+1);如果源表格在第n列前插入了一列,该对应关系则变为(m,n+1)→(m,n)。而当源表格或复制表格中关联单元格被删除(比如删除行)时,则删除相应的对应关系。这样,在对源表格中的关联单元格进行操作时,需要根据上述更新的对应关系来对复制表格中的关联单元格进行定位,然后对该关联单元格进行相同或相应的操作,以将源表格中的操作同步地反应到复制表格的关联单元格上。
然而,在上述处理过程中,开发人员需要熟悉改变源对象和复制对象的对应关系的操作(如源表格和复制表格中的增行、删行事件),因此,处理逻辑需与操作紧耦合。并且,在处理大量对象时或当对象间存在多层的对应关系时,系统运行速度会受到影响。
发明内容
本申请目的在于提出一种对相互关联的对象进行快速定位并对定位的对象执行对应操作的方法和系统。
一方面,本申请公开了一种定位处理对象的方法,可包括:
在第一对象和第二对象上分别绑定相互关联的第一标记和第二标记,其中,所述第一和第二对象至少包括表格、单元格、控件、文件或文件的一部分;
对绑定有所述第一标记的所述第一对象执行第一操作;
响应于所述第一操作获取所述第一标记;
基于所述第一标记和第二标记之间的关联从所述第一标记确定所述第二标记;
根据所确定的第二标记定位所述第二对象;以及
对所述第二对象执行第二操作。
所述第一操作和第二操作至少可包括:新建、修改、删除、突出显示或保存。
另一方面,本申请公开了一种定位处理对象的系统,包括:
标记管理模块,在第一对象和第二对象上分别绑定相互关联的第一标记和第二标记,所述第一和第二对象至少包括表格、单元格、控件、文件或文件的一部分;
对象操作模块,对绑定有所述第一标记和第二标记的所述第一对象和所述第二对象分别执行第一操作和第二操作;
对象定位模块,响应于所述第一操作获取所述第一标记、基于所述第一标记和第二标记之间的关联从所述第一标记确定所述第二标记、并根据所确定的第二标记定位所述第二对象。
根据本申请提出的方法和系统,无需知道对源对象和目标对象的操作,就能根据对源对象的操作快速定位目标对象,提高了对对象进行定位处理的速度。
附图说明
图1是根据本申请示例性实施方式提供的定位处理对象的方法的流程图;
图2是根据本申请另一示例性实施方式提供的定位处理对象的方法的流程图;
图3是根据本申请另一示例性实施方式提供的定位处理对象的方法的流程图;以及
图4是根据本申请另一方面的示例性实施方式提供的定位处理对象的系统的示意框图。
具体实施方式
下面,参照附图结合示例性的实施方式对本申请进行描述。
如图1所示,本申请的第一实施方式提供的定位并处理对象的方法100包括如下步骤:
步骤S101,在源对象和与之关联的目标对象上分别绑定相互关联的源标记和目标标记。源对象和目标对象例如可以是表格、单元格、控件、文件或文件的一部分等中的一种或多种。源标记和目标标记可以具有唯一性的标记。也就是说,用于不同源对象的源标记可互不相同,用于不同目标对象的目标标记也可互不相同。相互关联的源对象和目标对象上绑定的源标记和目标标记根据预定的规则一一对应。源标记和目标标记可以采用通用唯一识别码(Universally UniqueIdentifier,UUID)或时间戳实现。采用的UUID可包括微软的GUIDs(Globally Unique Identifiers)或其它UUID,例如唯一标记BOSUUID。BOSUUID为28位或44位的业务对象ID,且每次新生成的BOSUUID与先前存在的BOSUUID均不相同,从而保证了该业务对象ID的唯一性。
绑定在对象上的标记可与对象一同生成并绑定至对象,或在对象生成之后根据需要生成并绑定。例如,通过将对象的某一属性值设定为等于生成的标记,将该标记绑定到对象上。当源对象和目标对象为文件时,还可通过将标记嵌入表示文件的数据流中实现标记的绑定。标记可以随对象一起被复制和删除,也可在不删除对象的情况下单独删除。可根据需要对对象上绑定的标记进行修改,但是,绑定在对象上的标记不会随对象的修改而修改、新增或删除。
上述源对象与目标对象之间的关联可为目标标记与源标记相同。作为一种选择,该关联也可为目标标记与源标记不同,而是与之一一对应。例如,当源标记和目标标记为UUID时,目标标记=源标记+1或者目标标记=源标记+2等。
步骤S102,对绑定有源标记的源对象执行操作。该操作可为适于对源对象执行的任意常规操作,例如,新建、修改、删除、突出显示或保存等。步骤S103,响应于对源对象的操作,获取绑定在该源对象上的源标记。步骤S104,基于源标记与目标标记之间的关联,由获取的源标记确定相应的目标标记,这将在下面参照具体的示例进行描述。步骤S105,基于确定的目标标记定位目标对象。该定位例如可通过对绑定在全部目标对象上的目标标记进行遍历以查找确定的目标标记而实现。步骤S106,对定位的目标对象执行操作。该操作可为与对源对象执行的操作相同的操作。可选地,该操作也可为与对源对象执行的操作不同的操作,而是与之具有预定的对应关系。该对应关系可预先设定并以例如表的形式存储在存储器或数据库中。
可选地,通过哈希表(HashMap,一种键-值对应的数据结构,用于管理健-值)实现标记的绑定和管理。具体地,键为标记,值为绑定有相应标记的对象的集合。哈希表可以作为内部对象固化到对象上,例如每个表格固化一个管理该表格内的对象及其标记的哈希表。具体来说,在根据目标标记定位目标对象的步骤中,根据键(确定的目标标记)从哈希表中查找值(具有该目标标记的目标对象),就可定位设置了相应标记的所有对象,而无须遍历在全部对象上绑定的标记。采用哈希表需要将哈希表和对象建立强耦合,对哈希表进行修改必须对对象及其标记进行相应修改,反之,对对象及其标记进行修改也必须对哈希表进行相应修改。
除了哈希表之外,还可使用例如数据库来实现标记的管理,利用数据结构建立对象和标记以及源对象和目标对象之间的关联。
图2示出了根据本申请的第二实施方式提供的定位并处理对象的方法200。在该实施方式中,在源对象和与之关联的目标对象上分别绑定源标记和目标标记的步骤S101进一步包括如下步骤。
步骤S1011,生成用于源对象的源标记并将其绑定至源对象。生成的源标记可为具有唯一性的标记,也就是说,不同源对象的源标记可互不相同。步骤S1012,复制源对象以得到目标对象。步骤S1013,根据源标记与目标标记之间的关联,利用源标记生成目标标记,并将生成的目标标记绑定至目标对象。该关联可为目标标记与源标记相同。作为一种选择,该关联也可为目标标记与源标记不同,而是与其一一对应。因此,对应于不同源对象的不同目标对象上绑定的目标标记也可互不相同。
在此实施方式中,其它步骤与第一实施方式中相同,因此不再赘述。
图3示出了根据本申请的第三实施方式的定位并处理对象的方法300。在步骤S1011之后,在步骤S1012’将源标记随源对象一同复制,得到绑定有与源标记相同的目标标记的目标对象。在这种情况下,源标记与目标标记之间的关联为目标标记与源标记相同,并且,由于在复制过程中实际上已同时实现了目标标记的生成和绑定,因此无需再另外执行生成目标标记的步骤。
同样,在此实施方式中,其它步骤与第一和第二实施方式均相同,因此不再赘述。
下面,通过具体实施例对本申请进行说明。
在本申请的一个实施例中,源对象和目标对象分别可为位于源表格和复制表格中的单元格。对源对象进行的操作可为对单元格的任意常规操作,包括但不限于:新建、修改、删除、突出显示、保存等。标记例如可采用BOSUUID实现。首先,例如为源表格中位置为(m,n)的第一单元格生成第一业务对象ID,其取值例如可为28位字符串“00......001”(部分位省略),并将其绑定至第一单元格。对源表格进行复制,得到复制表格。复制表格中位置为(m,n)的第二单元格与源表格中的第一单元格对应。在复制过程中,单元格的属性值可随单元格一起被复制,也就是说,第一业务对象ID随第一单元格一同被复制,从而,第二单元格上绑定有与第一业务对象ID相同的第二业务对象ID。可选地,在复制过程中,单元格的属性值不随单元格一起被复制,而是根据预定规则由第一业务对象ID生成第二业务对象ID,并将其绑定至第二单元格。
如果对第一单元格进行“底色设为黄色”的操作,那么,响应于该操作,在复制表格的各单元格所绑定的全部标记中查找第二业务对象ID以定位第二单元格。然后,对第二单元格也执行根据另一预定规则确定的、与“底色设为黄色”的操作相对应的操作。该操作可与“底色设为黄色”相同。可选地,该操作可与“底色设为黄色”不同,例如可为“底色设为蓝色”。
源表格可以多次复制而产生多个复制表格,复制表格也可再复制而产生再复制表格。在这种情况下,可以根据对源表格中的单元格的操作对一个或多个复制表格和/或再复制表格中的对应的单元格进行相同或相应操作。此外,也可根据对复制表格或再复制表格中的单元格(此时被认为是源单元格)的操作,对源表格、一个或多个其它的复制表格和/或再复制表格中的对应的单元格(此时被认为是复制单元格)执行相同或相应的操作。
根据本申请的另一实施例,需要实现对应操作处理的源对象和目标对象是相互关联的文件(例如,单据文件)。例如,第一文件、第二文件和第三文件相互关联,当对第一文件进行“修改”操作时,对第二文件和/或第三文件进行“高亮显示”操作。操作之间的这一对应关系是预先设定的,并存储在存储器或数据库中。
在本实施例中,对第一文件、第二文件和第三文件分别绑定标记。具体地,生成第一标记并将其绑定至第一文件,并根据标记之间的关联由第一标记获得第二标记和/或第三标记分别绑定至第二文件和第三文件。作为一种选择,第二标记和/或第三标记可与第一标记相同。在对第一文件进行了修改操作后,获取第一标记,并根据上述预定的规则确定第二标记和/或第三标记。根据第二和/或第三标记定位与第一文件关联的第二文件和/或第三文件。响应于对第一文件的修改操作,在存储有操作之间的对应关系的存储器或数据库中进行查找,确定与“修改”操作对应的是“高亮显示”操作,并对绑定有第二标记和/或第三标记的第二文件和/或第三文件进行相应“高亮显示”操作。
本领域技术人员应该认识到,如果某一操作是对多个源对象进行的,例如,“删除源表格中的一行”实际上是对源表格中的多个单元格对象进行了删除操作,那么,可根据上述多个源对象上绑定的源标记确定关联的所有目标标记以定位全部关联的目标对象,再对定位的目标对象执行对应的操作。
根据本申请的另一方面,提供了一种对对象集50中相互关联的对象执行定位处理的系统400。如图4所示,该系统包括标记管理模块401、对象操作模块402和对象定位模块403。标记管理模块401生成用于源对象的和目标对象的源标记和目标标记,并将其分别绑定至源对象和目标对象。源标记和目标标记根据预定的规则关联。对象操作模块402对源对象执行第一操作,该操作均可为适于对源对象执行的任意常规操作。对象定位模块403响应于对象操作模块对源对象的操作获取源标记,根据标记之间的关联由绑定在该源对象上的源标记确定相应的目标标记,并根据确定的目标标记定位目标对象。对象操作模块402为对目标对象执行与对源对象的操作相对应的操作。上述源对象和目标对象至少可以包括表格、单元格、控件、文件或文件的一部分。
以上仅对本申请的示例性实施方式进行了描述,上述实施方式并不限制本申请的保护范围。本领域技术人员应该认识到,本申请的上述实施方式可具有多种变体或变形,而并不偏离本申请的精神和范围。上述实施方式的各种变体或修改均同理包括在本申请的保护范围内。

Claims (7)

1.一种定位处理对象的方法,包括:
在第一对象和第二对象上分别绑定相互关联的第一标记和第二标记,其中,所述第一和第二对象至少包括表格、单元格、控件、文件或文件的一部分;所述第一标记和第二标记至少包括通用唯一识别码、时间戳和对象ID;
对绑定有所述第一标记的所述第一对象执行第一操作;
响应于所述第一操作获取所述第一标记;
基于所述第一标记和第二标记之间的关联从所述第一标记确定所述第二标记;
根据所确定的第二标记定位所述第二对象;以及
对所述第二对象执行第二操作;
所述第一操作和第二操作至少包括:新建、修改、删除、突出显示或保存。
2.如权利要求1所述的方法,其中,所述第一标记和第二标记是相同的标记。
3.如权利要求1所述的方法,其中,对所述第二对象执行第二操作的步骤进一步包括:
对所述第二对象执行与所述第一操作相同的操作。
4.如权利要求1所述的方法,其中,对所述第二对象执行第二操作的步骤进一步包括:
对所述第二对象执行与所述第一操作不同的操作。
5.如权利要求1所述的方法,其中,所述第二对象是所述第一对象的副本,在所述第一对象和第二对象上分别绑定第一标记和第二标记的步骤进一步包括:
生成第一标记并将其绑定在所述第一对象上;
复制所述第一对象以得到所述第二对象;以及
根据所述第一标记和第二标记之间的关联,利用所述第一标记生 成第二标记并将其绑定至所述第二对象。
6.如权利要求1所述的方法,其中,所述第二对象是所述第一对象的副本,在所述第一对象和第二对象上分别绑定第一标记和第二标记的步骤进一步包括:
生成第一标记并将其绑定在所述第一对象上;以及
复制所述第一对象以得到所述第二对象;
其中,在复制所述第一对象的过程中,绑定在所述第一对象上的第一标记随所述第一对象一同被复制,从而复制得到的所述第二对象上绑定有与所述第一标记相同的标记。
7.一种定位处理对象的系统,包括:
标记管理模块,在第一对象和第二对象上分别绑定相互关联的第一标记和第二标记,所述第一和第二对象至少包括表格、单元格、控件、文件或文件的一部分;所述第一标记和第二标记至少包括通用唯一识别码、时间戳和对象ID;
对象操作模块,对绑定有所述第一标记和第二标记的所述第一对象和所述第二对象分别执行第一操作和第二操作;所述第一操作和第二操作至少包括:新建、修改、删除、突出显示或保存;
对象定位模块,响应于所述第一操作获取所述第一标记、基于所述第一标记和第二标记之间的关联从所述第一标记确定所述第二标记、并根据所确定的第二标记定位所述第二对象。 
CN2009101364729A 2009-05-11 2009-05-11 定位处理对象的方法和系统 Active CN101587492B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009101364729A CN101587492B (zh) 2009-05-11 2009-05-11 定位处理对象的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101364729A CN101587492B (zh) 2009-05-11 2009-05-11 定位处理对象的方法和系统

Publications (2)

Publication Number Publication Date
CN101587492A CN101587492A (zh) 2009-11-25
CN101587492B true CN101587492B (zh) 2011-05-11

Family

ID=41371740

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101364729A Active CN101587492B (zh) 2009-05-11 2009-05-11 定位处理对象的方法和系统

Country Status (1)

Country Link
CN (1) CN101587492B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1325514A (zh) * 1998-10-16 2001-12-05 联合想象计算机公司 确定两个或多个模型之间的区别的方法
CN1632789A (zh) * 2003-12-24 2005-06-29 明基电通股份有限公司 数据关联分析系统及方法以及计算机可读取储存媒体
CN1702612A (zh) * 2003-03-05 2005-11-30 微软公司 基于用户输入的数据呈现

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1325514A (zh) * 1998-10-16 2001-12-05 联合想象计算机公司 确定两个或多个模型之间的区别的方法
CN1702612A (zh) * 2003-03-05 2005-11-30 微软公司 基于用户输入的数据呈现
CN1632789A (zh) * 2003-12-24 2005-06-29 明基电通股份有限公司 数据关联分析系统及方法以及计算机可读取储存媒体

Also Published As

Publication number Publication date
CN101587492A (zh) 2009-11-25

Similar Documents

Publication Publication Date Title
US10628378B2 (en) Replication of snapshots and clones
US8706703B2 (en) Efficient file system object-based deduplication
JP5327497B2 (ja) 地図データ配信システム及び地図データ更新方法
CN104641365B (zh) 在文件存储系统中使用检查点管理去复制的系统和方法
TWI479341B (zh) 資訊系統中轉換資料之高處理能力,可靠複寫
CN101765831B (zh) 数据库不一致的处理方法
US20130262758A1 (en) Systems and Methods for Tracking Block Ownership
CN103019718A (zh) 在集中式源控制环境中使用分布式源控制
CN107148616A (zh) 用于分布式版本控制的高效注释系统
CN107016047A (zh) 文档查询、文档存储方法及装置
CN104298681A (zh) 一种数据存储方法及装置
CN105550306A (zh) 多副本数据的读写方法及系统
CN103795811A (zh) 一种基于元数据保存存储信息及统计管理数据的方法
CN102279857B (zh) 一种实现数据复制的方法及系统
CN103186622A (zh) 一种全文检索系统中索引信息的更新方法以及装置
WO2012101983A1 (ja) ストレージシステム
US8589454B2 (en) Computer data file merging based on file metadata
CN110515543B (zh) 基于对象存储桶的快照方法、装置和系统
US8874622B2 (en) Flexible order of authoring for data integration solutions
CN102193988A (zh) 一种图形数据库节点数据的检索方法及系统
WO2016101915A1 (zh) 修改Lucene索引文件
CN101587492B (zh) 定位处理对象的方法和系统
CN109542860B (zh) 基于hdfs的业务数据管理方法、终端设备
Huang et al. Ymir: A rapid data-centric development platform for vision applications
CN105677249A (zh) 数据块的划分方法、装置及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant