一种保证预算编制过程中数据一致性的方法和装置的制作方法

文档序号:6619141阅读:211来源:国知局
专利名称:一种保证预算编制过程中数据一致性的方法和装置的制作方法
技术领域
本发明涉及计算机技术,特别是涉及一种保证预算编制过程中 数据一致性的方法和装置。
背景技术
预算管理是指企业在战略目标的指导下,对未来的经营活动和 相应财务结果进行充分、全面的预测和筹划,通过预算编制过程做 出相应的预算编制数据,并通过对执行过程的监控,将实际完成情 况与预算编制数据不断对照和分析,从而及时指导经营活动的改善 和调整,以帮助管理者更加有效地管理企业和最大程度地实现战略 目标。
在预算编制过程中,需要录入预算数据,而预算数据之间又存 在各种关联关系。目前,预算数据通常是通过各种预算表来进行组 织,预算数据之间的关联关系是通过各种运算规则来体现。比如,
预算数据中包括企业A在2008年的办公费用,办公费用中包括各种 办公用品购置费用、出差费用、房屋租金等项目,那么,在预算编 制过程中,可以建立一张关于企业A在2008年的办公费用的预算表 QOOl,该预算表Q001中使用不同的单元格表示不同的办公费用项 目,其中,预算表Q001中各种办公用品购置费用项目的运算规则可 以为上一年度该费用的80%,房屋租金项目的运输规则可以为等于 上一年度的该租金费用。
目前,预算编制过程往往是针对大型企业或大型机构,预算编 制的数据量非常大,预算数据之间的关联关系也非常复杂,因此, 对应的预算表的数量也非常多,单元格之间的运算规则也非常复 杂,比如, 一个预算表中单元格l的预算数据值可能需要同时使用 该预算表内其他多个单元格的预算数据值来计算,而该预算表中单 元格2的预算数据可能需要使用另一个预算表中一个单元格的预算 数据值来计算。另外,在预算编制过程中, 一个预算表的单元格的运算规则可能会由不同的用户在不同的时间进行编制和修改,那 么,该单元格运算规则的改变则可能会导致其关联的其他单元格的 运算规则出现错误。
由以上描述可以看出,在预算编制过程中,对预算表中单元格 的预算数据的编制必须进行全局考虑,比如为了保证所有数据都能 被正确编制以及避免死循环,各个单元格之间应采用的规则和运算 顺序等,各个预算表之间的运算顺序等,从而使得所有预算数据都 能符合所有运算规则,保证数据的一致性。
然而,目前还没有一种有效的保证数据一致性的方法。

发明内容
本发明的主要目的在于提供一种在预算编制过程中保证数据 一致性的方法和装置,以便于保证所有预算数据符合所有运算规 则,保证数据的一致性。
为了达到上述目的,本发明采用的技术手段包括 一种在预算编制过程中保证数据一致性的方法,该方法包括
A、 为各预算表中的各单元格选择运算规则;
B、 通过执行为各单元格选择的运算规则,确定出各预算表的 导航关系以及各单元格的导航关系;
C、 根据各预算表的导航关系以及各单元格的导航关系,执行 为各单元格选择的运算规则,得到各预算表中各单元格的预算数据 值。
其中,所述步骤A包括对于设置有多种运算规则的单元格, 根据预先设定的选择策略从该多种运算规则中选择一个。 可选的,所述预先设定的选择策略包括
优先选择使用同一预算表中其他单元格的预算数据值进行计 算的运算规则; 或者,
优先选择使用不同预算表中单元格的预算数据值进行计算的 运算规则;或者,
优先选择除汇总和分解运算规则之外的一个运算规则。 可选的,在步骤B中,以任意顺序执行为各单元格选择的运算
其中,所述步骤B包括
在执行为各单元格选择的运算规则时,将执行的当前单元格的 运算规则中涉及的其他单元格所在的预算表作为当前单元格所在 预算表的前导预算表,以及将执行的当前单元格的运算规则中涉及
的其他单元格作为当前单元格的前导单元格;根据每一个预算表的
前导预算表得到各个预算表之间的导航关系,该导航关系包括了各
个预算表之间的执行顺序信息;根据每一个单元格的前导单元格得 到各个单元格之间的导航关系,该导航关系包括了各个单元格之间 的执行顺序信息。
较佳的,所述根据每一个预算表的前导预算表得到各个预算表 之间的导航关系的步骤包括将所有预算表的前导预算表的信息进
行汇总,得出全局的所有预算表之间的前导关系拓扑图,对该前导
关系拓扑图进行深度遍历,得到各个预算表之间的导航关系;
所述根据每一个单元格的前导单元格得到各个单元格之间的
导航关系的步骤包括将所有单元格的前导单元格的信息进行汇
总,得出全局的所有单元格之间的前导关系拓扑图,对该前导关系 拓扑图进行深度遍历,得到各个单元格之间的导航关系。
较佳的,在步骤c中,所述执行为各单元格选择的运算规则的
步骤包括
根据各预算表的导航关系以及各单元格的导航关系,模拟执行 为各单元格选择的运算规则,根据模拟执行结果更新预算表的导航
关系以及各单元格的导航关系;然后根据更新后的各预算表的导航
关系以及各单元格的导航关系,实际执行为各单元格选择的运算规 则。
可选的,所述根据模拟执行结果更新预算表的导航关系以及各
单元格的导航关系的步骤包括在模拟执行过程中,如果为一个单元格选择的运算规则无法执 行,则重新为该单元格选择运算规则,并根据重新选择的运算规则 更新预算表的导航关系以及各单元格的导航关系;
和/或,
在模拟执行过程中,如果根据为多个单元格分别选择的运算规 则执行出死循环,则删除该多个单元格中一个单元格的运算规则, 并更新预算表的导航关系以及各单元格的导航关系。
一种在预算编制过程中保证数据一致性的装置,该装置包括 运算规则选择单元,用于为各预算表中的各单元格选择运算规
导航关系确定单元,用于通过执行运算规则选择单元为各单元 格选择的运算规则,确定出各预算表的导航关系以及各单元格的导 航关系;
预算数据计算单元,用于根据导航关系确定单元确定出的各预 算表的导航关系以及各单元格的导航关系,执行为各单元格选择的 运算规则,得到各预算表中各单元格的预算数据值。
其中,所述运算规则选择单元,进一步用于保存预先设定的选 择策略,对于存在多种运算规则的单元格,根据保存的选择策略从 该多种运算规则中为该单元格选择一个运算规则。
可选的,所述导航关系确定单元,以任意顺序执行所述运算规 则选择单元为各单元格选择的运算规则。
其中,所述导航关系确定单元,在执行所述运算规则选择单元 为各单元格选择的运算规则时,将执行的当前单元格的运算规则中 涉及的其他单元格所在的预算表作为当前单元格所在预算表的前 导预算表,将执行的当前单元格的运算规则中涉及的其他单元格作
为当前单元格的前导单元格;根据每一个预算表的前导预算表得到 各个预算表之间的导航关系,该导航关系包括了各个预算表之间的 执行顺序信息;根据每一个单元格的前导单元格得到各个单元格之 间的导航关系,该导航关系包括了各个单元格之间的执行顺序信 息。较佳的,所述预算数据计算单元,根据各预算表的导航关系以 及各单元格的导航关系,模拟执行为各单元格选择的运算规则,根 据模拟执行结果更新预算表的导航关系以及各单元格的导航关系; 然后根据更新后的各预算表的导航关系以及各单元格的导航关系, 实际执行为各单元格选择的运算规则。
由此可见,本发明具有如下的有益效果
1、 在本发明中,由于在计算预算数据值之前,会为每一个单 元格选择运算规则,避免了现有技术中一个单元格按照多种运算规 则计算预算数据值时导致预算数据值矛盾的缺点,保证了数据一致 性,并且,本发明中导航关系客观地反映了各个预算表中各个单元 格的运算规则之间应有的先后顺序,按照导航关系计算预算数据值 则可以保证所有预算数据符合所有运算规则,保证数据的一致性。
2、 在本发明中,根据预先设定的选择策略为具有多种运算规 则的单元格选择一个实际使用的运算规则时,能够根据客户的实际 业务需要来灵活地设定选择策略,进一步增加了本发明实现的灵活 性。
3、 在本发明中,在确定出导航关系之后,可以首先根据导航 关系模拟执行各个单元格的运算规则,通过该模拟执行过程能够发 现各种错误,比如,为一个单元格选择的运算规则无法执行,多个 单元格的运算规则最终形成死循环等,从而能够及时根据模拟执行 过程更新出保证所有运算规则和数据正确执行的导航关系,然后根 据更新后的导航关系实际计算出各个单元格的预算数据值时,则避 免了各种数据和运算规则的缺陷,进一步保证了所有预算数据符合 所有运算规则,保证了数据的一致性。


图l是在本发明一个较佳实施例中保证数据一致性的流程图; 图2是在本发明的一个实施例中各个预算表的前导预算表的示 意图3是在本发明的一个实施例中各个预算表的拓扑关系示意图4是在本发明一个实施例中的各预算表之间的导航关系示意
图5是在本发明的一个实施例中各个单元格的前导预算表的示 意图6是在本发明的一个实施例中各个单元格的拓扑关系示意
图7是在本发明一个实施例中各单元格之间的导航关系示意
图8是在本发明一个实施例中多个单元格之间的导航关系出现 死循环的示意图9是在本发明一个实施例中多个单元格之间的更新后的导航 关系示意图10是本发明提出的装置的基本结构示意图。
具体实施例方式
本发明提出了一种在预算编制过程中保证数据一致性的方法, 该方法的核心思想是为各预算表中的各单元格选择运算规则;通
过执行为各单元格选择的运算规则,确定出各预算表的导航关系以
及各单元格的导航关系;根据各预算表的导航关系以及各单元格的 导航关系,执行为各单元格选择的运算规则,得到各预算表中各单 元格的预算数据值。
可见,本发明中由于在计算预算数据值之前,会为每一个单元 格选择一个运算规则,避免了现有技术中一个单元格按照多种运算 规则计算预算数据值时导致预算数据值矛盾的缺点,保证了数据一 致性,并且,本发明中导航关系客观地反映了各个预算表中各个单 元格的运算规则之间应有的先后顺序,按照导航关系计算预算数据 值则可以保证所有预算数据符合所有运算规则,保证数据的一致 性。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。
图l是在本发明一个较佳实施例中保证数据一致性的流程图。
参见图l,在本发明的一个较佳实施例中,在预算编制过程中保证
数据一致性的过程具体包括以下步骤
步骤101:为各个预算表中的各个单元格选择一个运算规则。 在本步骤中,需要为各个单元格选择一个运算规则,后续根据
该选择的一个运算规则计算预算数据值时, 一个单元格只存在一个
预算数据值,从而避免了现有技术中一个单元格上存在多种运算规
则时,根据多种运算规则计算出不同预算数据值,使得数据出现矛
盾的缺点。
在本步骤中,如果预算表中的任意一个单元格上只设置有一个 运算规则,那么,则直接为该单元格选择该运算规则。
如果预算表中的任意一个单元格上设置有多种运算规则,那 么,则可以根据预先设定的选择策略从该多种运算规则中为该单元 格选择一个运算规则。
其中,选择策略可以由用户根据自身实际的业务需要来灵活地 设置,选择策略可以举例为下述中的任意一种
1、 表单内公式优先原则,即,优先选择使用同一预算表中其 他单元格的预算数据值进行计算的运算规则。
比如, 一个预算表Q中包括两个单元格CellQl、 CellQ3,另一 个预算表J中包括有一个单元格CellJl,单元格CellQl设置有两个运 算规则,运算规则l为CellQl- CellQ3*5 (运算规则l中是使用同一 预算表中其他单元格的预算数据值进行计算),运算规则2为单元格 CellQl= CellJl + 10 (运算规则2中是使用不同预算表中其他单元格 的预算数据值进行计算),那么,根据预先设定的表单内公式优先 原则,为预算表Q中的单元格CellQl选择的运算规则为运算规则l。
2、 表单间公式优先原则,优先选择使用不同预算表中单元格
的预算数据值进行计算的运算规则。
比如,对于上述CellQl的例子,根据预先设定的表单间公式优 先原则,为预算表Q中的单元格CellQl选择的运算规则为运算规则2。
3、优先选择除汇总和分解运算规则之外的一个运算规则。 汇总运算规则是指,将一个预算表中的单元格的预算数据值与 其他预算表中单元格的预算数据值汇总到一起,如果将子公司A的 人员工资单元格的预算数据值与子公司B的人员工资单元格的预算 数据值汇总到一起;分解运算规则是汇总运算规则的反规则。由于 汇总和分解规则通常是最后一个执行的规则,不会影响单元格本身 预算数据值能否被算出,因此,对于设置有多种运算规则的单元格, 可以优先选择除汇总和分解运算规则之外的一个运算规则。
步骤102:以任意顺序执行为各个预算表中的各单元格选择的 运算规则。
比如,为预算表Q中的单元格CellQl选择的运算规则为CellQ^ CellQ3*5,为预算表J中的单元格CellJ1选择的运算规则为CellJ1 = CellQ7+10,那么,则可以按照任意先后顺序分别执行单元格CellQl 和单元格CellJl的运算规则。
需要说明的是,在本步骤中,也可以按照其他设定的顺序(比 如,按照各个预算表的表号的大小顺序和预算表中各个单元格的编 号顺序)执行为各个预算表中的各单元格选择的运算规则。
步骤103:在执行为各单元格选择的运算规则时,将执行的当 前单元格的运算规则中涉及的其他单元格所在的预算表作为当前 单元格所在预算表的前导预算表。
比如,在执行预算表J中的单元格CelUl的运算规则CellJ^ CellQ7+10时,其中,CellQ7所在的预算表为预算表Q,那么,在本 步骤中,则将CellQ7所在的预算表Q作为当前单元格Cell J1所在的 预算表J的前导预算表,即,预算表Q是预算表J的前导预算表。
步骤104:将执行的当前单元格的运算规则中涉及的其他单元
格作为当前单元格的前导单元格。
比如,在执行预算表J中的单元格CellJl的运算规则CellJ^ CellQ7+10时,将CellQ7作为当前单元格CellJl的前导单元格。
步骤105:根据每一个预算表的前导预算表得到各个预算表之间的导航关系,该导航关系包括了各个预算表之间的执行顺序信 息。
本步骤中,可以将所有预算表的前导预算表的信息进行汇总, 得出全局的所有预算表之间的前导关系拓扑图,对该前导关系拓扑 图进行深度遍历,得到各个预算表之间的导航关系,该导航关系可 以以多种形式记录,比如计算序列形式等。
下面举例说明本步骤的实现过程。比如,预算编制涉及到8张
预算表,分别为表1至表8,参见图2,在歩骤103的处理过程后,汇 总出表1分别是表2、表3和表8的前导预算表,表2分别是表5和表4 的前导预算表,表3是表6的前导预算表,表6是表7的前导预算表, 表8也是表7的前导预算表;那么,根据图2所示的前导关系,则可 以得出如图3所示的所有预算表之间的前导关系拓扑图,最后,对 图3所示的前导关系拓扑图进行深度遍历,则可以得出如图4所示的 计算序列形式的各预算表之间的导航关系。
步骤106:根据每一个单元格的前导单元格得到各个单元格之
间的导航关系,该导航关系包括了各个单元格之间的执行顺序信 自
必o
本步骤中,可以将所有单元格的前导单元格的信息进行汇总, 得出全局的所有单元格之间的前导关系拓扑图,对该前导关系拓扑 图进行深度遍历,得到各个单元格之间的导航关系,该导航关系可 以以多种形式记录,比如计算序列形式等。
下面举例说明本步骤的实现过程。比如,预算编制涉及到8张 预算表中的8个单元格(为简化描述,以预算表1至8中分别包括一 个单元格为例),表l中的单元格l,表2中的单元格2,以此类推, 直至表8中的单元格8。在步骤104的处理过程后,汇总出如图5所示 的单元格之间的前导关系,那么,根据图5所示的前导关系,则可 以得出如图6所示的所有单元格之间的前导关系拓扑图,最后,对 图6所示的前导关系拓扑图进行深度遍历,则可以得出如图7所示的
以计算序列形式记录的单元格之间的导航关系。
步骤107:根据各预算表的导航关系以及各单元格的导航关系,模拟执行为各单元格选择的运算规则。
本步骤的具体实现过程包括首先査找到各预算表的导航关系 中的第l个预算表,执行各单元格的导航关系中的第l个单元格(位 于该第l个预算表中)的运算规则;接下来根据各预算表的导航关 系查找到各单元格的导航关系中的下一个单元格,并执行该下一个 单元格的运算规则,以此类推,直至根据各预算表的导航关系和各 单元格的导航关系,执行完所有单元格的运算规则,从而最终得到 了各个预算表中各个单元格的预算数据值。
步骤108:根据模拟执行结果更新预算表的导航关系以及各单 元格的导航关系。
步骤107至步骤108的处理中,根据导航关系模拟执行各个单元
格的运算规则,通过该模拟执行过程能够发现各种预算编制错误, 比如,为一个单元格选择的运算规则无法执行,多个单元格的运算 规则最终形成死循环等,从而能够及时根据模拟执行过程更新出保 证所有运算规则和数据都能正确执行的导航关系,然后根据更新后 的导航关系实际计算出各个单元格的预算数据值时,则避免了各种 数据和运算规则的缺陷,进一步保证了所有预算数据符合所有运算 规则,保证了数据的一致性。
举例来说,在步骤107至步骤108的模拟执行过程中,为一个单 元格选择的运算规则无法执行,比如,为单元格CellA选择的运算 规则为CellA: (CellK+10),而单元格CellK不存在,那么,该运算 规则无法执行,则按照步骤101的处理方法重新为该单元格选择运 算规则,并根据重新选择的运算规则更新预算表的导航关系以及各 单元格的导航关系;再如,根据为多个单元格分别选择的运算规则 执行出死循环,如图8所示,那么,则删除该多个单元格中一个单 元格的运算规则,比如为单元格J选择的运算规则中需要使用单元 格L的预算数据值,那么,删除该单元格J的运输规则,并更新预算 表之间的导航关系,即删除单元格L所在的预算表作为单元格J所在 预算表的前导预算表的关系,并更新单元格之间的导航关系为图9 所示。步骤109:根据更新后的各预算表的导航关系以及各单元格的 导航关系,实际执行为各单元格选择的运算规则,得到各预算表中 各单元格的预算数据值。
本步骤的具体实现过程包括首先査找到各预算表的导航关系 中的第l个预算表,执行各单元格的导航关系中的第l个单元格(位 于该第l个预算表中)的运算规则;接下来根据各预算表的导航关 系查找到各单元格的导航关系中的下一个单元格,并执行该下一个 单元格的运算规则,以此类推,直至根据各预算表的导航关系和各 单元格的导航关系,执行完所有单元格的运算规则,从而最终得到 了各个预算表中各个单元格的预算数据值。
举例来说,比如,在模拟执行后最终得到的预算表之间的导航 关系如图4所示,单元格之间的导航关系如图7所示,那么,在本步
骤中,根据图4和图7可以得出,首先执行表l中的单元格l的运算规 则,计算出该单元格l的预算数据值;然后根据图4所示的各预算表 的导航关系和图7所示的各单元格之间的导航关系,执行表2中的单 元格2的运算规则,该运算规则中正好利用己经计算出的单元格l 的预算数据值;然后根据图4所示的各预算表的导航关系和图7所示 的各单元格之间的导航关系,执行表4中的单元格4的运算规则,该 运算规则中正好利用已经计算出的单元格2的预算数据值;以此类 推,直至计算出单元格8的预算数据值。
另外,本发明还提出了一种在预算编制过程中保证数据一致性 的装置。参见图IO,该装置包括
运算规则选择单元,用于为各预算表中的各单元格选择运算规
导航关系确定单元,用于通过执行运算规则选择单元为各单元 格选择的运算规则,确定出各预算表的导航关系以及各单元格的导 航关系;
预算数据计算单元,用于根据导航关系确定单元确定出的各预 算表的导航关系以及各单元格的导航关系,执行为各单元格选择的 运算规则,得到各预算表中各单元格的预算数据值。其中,所述运算规则选择单元可以进一步用于保存预先设定的 选择策略,对于存在多种运算规则的单元格,根据保存的选择策略 从该多种运算规则中为该单元格选择一个运算规则。
在确定导航关系时,所述导航关系确定单元可以以任意顺序执 行所述运算规则选择单元为各单元格选择的运算规则。
由本发明装置确定出导航关系的一种具体实现过程可以包括 所述导航关系确定单元在执行所述运算规则选择单元为各单元格 选择的运算规则时,将执行的当前单元格的运算规则中涉及的其他 单元格所在的预算表作为当前单元格所在预算表的前导预算表,将 执行的当前单元格的运算规则中涉及的其他单元格作为当前单元 格的前导单元格;根据每一个预算表的前导预算表得到各个预算表 之间的导航关系,该导航关系包括了各个预算表之间的执行顺序信 息;根据每一个单元格的前导单元格得到各个单元格之间的导航关 系,该导航关系包括了各个单元格之间的执行顺序信息。
为了进一步避免由于存在数据缺陷及死循环等预算编制错误 造成的一个单元格的预算数据值无法最终确定,可以由本发明装置 先进行模拟计算,根据模拟计算过程发现预算编制错误,并更新出 正确可行的导航关系,再由本发明装置根据更新后的导航关系,实 际计算出每一个单元格的预算数据值。具体的实现方式为在本发 明装置中,所述预算数据计算单元根据各预算表的导航关系以及各 单元格的导航关系,模拟执行为各单元格选择的运算规则,根据模
拟执行结果更新预算表的导航关系以及各单元格的导航关系;然后
根据更新后的各预算表的导航关系以及各单元格的导航关系,实际 执行为各单元格选择的运算规则。
从上述实施例来看,本发明属于计算机程序发明(当然,本发 明并不排除硬件的实施方式),其本质将体现为一个计算机程序产 品,其可以承载于多种存储介质中,通过上述介绍本领域技术人员 清楚本发明可以是一个计算机程序产品其包括若干指令,用来让一 个硬件平台完成上述方法。从设备层面的理解, 一个基于本发明的 设备可以包括一个上述计算机程序产品以及运行该计算机程序的硬件平台。
总之,以上所述仅为本发明的较佳实施例而已,并非限定本发 明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、 等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种在预算编制过程中保证数据一致性的方法,其特征在于,该方法包括A、为各预算表中的各单元格选择运算规则;B、通过执行为各单元格选择的运算规则,确定出各预算表的导航关系以及各单元格的导航关系;C、根据各预算表的导航关系以及各单元格的导航关系,执行为各单元格选择的运算规则,得到各预算表中各单元格的预算数据值。
2. 根据权利要求l所述的方法,其特征在于,所述步骤A包括 对于设置有多种运算规则的单元格,根据预先设定的选择策略从该 多种运算规则中选择一个。
3. 根据权利要求2所述的方法,其特征在于,所述预先设定的 选择策略包括优先选择使用同一预算表中其他单元格的预算数据值进行计 算的运算规则; 或者,优先选择使用不同预算表中单元格的预算数据值进行计算的 运算规则; 或者,优先 选择除汇总和分解运算规则之外的一个运算规则。
4. 根据权利要求l所述的方法,其特征在于,在步骤B中,以 任意顺序执行为各单元格选择的运算规则。
5. 根据权利要求l所述的方法,其特征在于,所述步骤B包括 在执行为各单元格选择的运算规则时,将执行的当前单元格的运算规则中涉及的其他单元格所在的预算表作为当前单元格所在 预算表的前导预算表,以及将执行的当前单元格的运算规则中涉及 的其他单元格作为当前单元格的前导单元格;根据每一个预算表的 前导预算表得到各个预算表之间的导航关系,该导航关系包括了各 个预算表之间的执行顺序信息;根据每一个单元格的前导单元格得 到各个单元格之间的导航关系,该导航关系包括了各个单元格之间的执行顺序信息。
6. 根据权利要求5所述的方法,其特征在于,所述根据每一个预算表的前导预算表得到各个预算表之间的 导航关系的步骤包括将所有预算表的前导预算表的信息进行汇 总,得出全局的所有预算表之间的前导关系拓扑图,对该前导关系 拓扑图进行深度遍历,得到各个预算表之间的导航关系;所述根据每一个单元格的前导单元格得到各个单元格之间的 导航关系的步骤包括将所有单元格的前导单元格的信息进行汇 总,得出全局的所有单元格之间的前导关系拓扑图,对该前导关系 拓扑图进行深度遍历,得到各个单元格之间的导航关系。
7. 根据权利要求1至6中任意一项所述的方法,其特征在于, 在步骤C中,所述执行为各单元格选择的运算规则的步骤包括根据各预算表的导航关系以及各单元格的导航关系,模拟执行 为各单元格选择的运算规则,根据模拟执行结果更新预算表的导航 关系以及各单元格的导航关系;然后根据更新后的各预算表的导航关系以及各单元格的导航关系,实际执行为各单元格选择的运算规
8. 根据权利要求7所述的方法,其特征在于,所述根据模拟执 行结果更新预算表的导航关系以及各单元格的导航关系的步骤包 括在模拟执行过程中,如果为一个单元格选择的运算规则无法执 行,则重新为该单元格选择运算规则,并根据重新选择的运算规则 更新预算表的导航关系以及各单元格的导航关系;和/或,在模拟执行过程中,如果根据为多个单元格分别选择的运算规 则执行出死循环,则删除该多个单元格中一个单元格的运算规则, 并更新预算表的导航关系以及各单元格的导航关系。
9. 一种在预算编制过程中保证数据一致性的装置,其特征在于,该装置包括运算规则选择单元,用于为各预算表中的各单元格选择运算规则;导航关系确定单元,用于通过执行运算规则选择单元为各单元 格选择的运算规则,确定出各预算表的导航关系以及各单元格的导航关系;预算数据计算单元,用于根据导航关系确定单元确定出的各预 算表的导航关系以及各单元格的导航关系,执行为各单元格选择的 运算规则,得到各预算表中各单元格的预算数据值。
10. 根据权利要求9所述的装置,其特征在于,所述运算规则 选择单元,进一步用于保存预先设定的选择策略,对于存在多种运 算规则的单元格,根据保存的选择策略从该多种运算规则中为该单 元格选择一个运算规则。
11. 根据权利要求9所述的装置,其特征在于,所述导航关系 确定单元,以任意顺序执行所述运算规则选择单元为各单元格选择 的运算规则。
12、 根据权利要求9所述的装置,其特征在于,所述导航关系 确定单元,在执行所述运算规则选择单元为各单元格选择的运算规 则时,将执行的当前单元格的运算规则中涉及的其他单元格所在的 预算表作为当前单元格所在预算表的前导预算表,将执行的当前单 元格的运算规则中涉及的其他单元格作为当前单元格的前导单元 格;根据每一个预算表的前导预算表得到各个预算表之间的导航关 系,该导航关系包括了各个预算表之间的执行顺序信息;根据每一 个单元格的前导单元格得到各个单元格之间的导航关系,该导航关 系包括了各个单元格之间的执行顺序信息。
13、 根据权利要求9至12中任意一项所述的装置,其特征在于, 所述预算数据计算单元,根据各预算表的导航关系以及各单元格的 导航关系,模拟执行为各单元格选择的运算规则,根据模拟执行结 果更新预算表的导航关系以及各单元格的导航关系;然后根据更新 后的各预算表的导航关系以及各单元格的导航关系,实际执行为各 单元格选择的运算规则。
全文摘要
本发明公开了一种在预算编制过程中保证数据一致性的方法和装置。该方法包括为各预算表中的各单元格选择运算规则;通过执行为各单元格选择的运算规则,确定出各预算表的导航关系以及各单元格的导航关系;根据各预算表的导航关系以及各单元格的导航关系,执行为各单元格选择的运算规则,得到各预算表中各单元格的预算数据值。本发明能够保证所有预算数据符合所有运算规则,保证数据的一致性。
文档编号G06Q10/00GK101576979SQ20091008703
公开日2009年11月11日 申请日期2009年6月22日 优先权日2009年6月22日
发明者常剑峰, 杨森龙 申请人:用友软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1