发明名称 |
一种业务单据转换的方法、装置及系统 |
摘要 |
本发明适用于计算机领域,提供了一种业务单据转换的方法、装置及系统,所述方法包括下述步骤:获取预设的正向公式脚本,并对所述正向公式脚本进行语法分析,生成与所述正向公式脚本对应的正向公式语法结构树;根据二叉树的结构,对所述正向公式语法结构树进行逆向操作,生成逆向公式语法结构树;根据逆向公式语法结构树生成与正向公式脚本逻辑完全相反的逆向公式脚本;根据所述逆向公式脚本以及获取的源业务单据的数据,将源业务单据的相应字段转换为反写前的原始值。本发明中,可以不依赖具体的代码逻辑实现实际场景中各种特殊反写和反反写逻辑的需求,减少了公式脚本配置的工作量,并且具有很好的适应性。 |
申请公布号 |
CN101763340B |
申请公布日期 |
2012.06.27 |
申请号 |
CN200910189234.4 |
申请日期 |
2009.12.22 |
申请人 |
金蝶软件(中国)有限公司 |
发明人 |
张俊 |
分类号 |
G06F17/22(2006.01)I;G06Q10/08(2012.01)I |
主分类号 |
G06F17/22(2006.01)I |
代理机构 |
深圳中一专利商标事务所 44237 |
代理人 |
张全文 |
主权项 |
一种业务单据的转换方法,其特征在于,所述方法包括下述步骤:获取预设的正向公式脚本,并对所述正向公式脚本进行语法分析,生成与所述正向公式脚本对应的正向公式语法结构树;创建一个空的逆向公式语法结构树,并创建一个根结点,该节点为一个赋值运算符,设置根节点为该逆向公式语法结构树的当前节点;遍历正向公式语法结构树的所有节点,找到反写前的源单据字段的节点,将正向公式语法结构树上的反写前的源单据字段的节点移除,增加为逆向公式语法结构树当前节点的左侧子节点,设置反写前的源单据字段的节点的父节点为正向公式语法结构树的当前节点;将正向公式语法结构树的当前节点的运算符修改为逻辑相反的运算符,然后连同子树一次复制到逆向公式语法结构树,增加为逆向公式语法结构树的当前节点下的右侧子树;移除正向公式语法结构树的当前节点及其子树,设置其父节点为新的当前节点,并设置逆向公式语法结构树的反向运算符节点为新的当前节点;A、继续处理正向公式语法结构树的当前节点,如果是运算符节点,则将正向公式语法结构树的当前节点的运算符修改为逻辑相反的运算符,然后连同子树一次复制到逆向公式语法结构树,增加为逆向公式语法结构树的当前节点下的左侧子节点;B、移除正向公式语法结构树的当前节点及其子树,并设置其父节点为新的当前节点,并设置逆向公式语法结构树的反向运算符节点为新的当前节点;重复步骤A和B,直到正向公式语法结构树的当前节点为根节点,在逆向公式语法结构树的当前节点下增加反写后的源单据字段节点作为左侧子节点;根据逆向公式语法结构树生成与正向公式脚本逻辑完全相反的逆向公式脚本;根据所述逆向公式脚本以及获取的源业务单据的数据,将源业务单据的相 应字段转换为反写前的原始值。 |
地址 |
518000 广东省深圳市南山区深南大道市高新技术工业村W1-B4 |