The invention is applicable to the field of computer, provides business bill conversion method, device and system, wherein the method comprises the following steps: acquiring preset positive formula and the script, the script is formula for syntax analysis, generated with the formula of positive script tree positive formula grammar structure should be based on the structure; the two fork tree, reverse operation to the forward formula of syntactic structure tree generation, reverse formula grammar structure tree; according to the reverse formula syntactic structure tree generation and forward formula of opposite reverse script logic formula script; according to the reverse direction formula script and data source access to business documents, the corresponding field source business documents the conversion of the original value before the write back. The invention can realize the requirements of special anti write and reverse write logic in the actual scene without relying on the specific code logic, and reduces the workload of the configuration of the formula script, and has good adaptability.
【技术实现步骤摘要】
本专利技术属于计算机领域,尤其涉及一种业务单据转换的方法、装置及系统。
技术介绍
企业的各种业务之间存在一定的逻辑关系,而且这种逻辑关系在不同企业或企业 的不同时期是不同的,体现在管理软件中就是一种业务单据的数据,是根据另一业务单据 的数据得来的,比如收款一般都是根据开票的金额决定的;发票或收款的金额需要做账生 成凭证等。 单据转换功能在ERP系统中已经开始发挥越来越重要的作用,在单据转换的过程 中,由于单据转换产生的目标业务单据与源业务单据之间存在着一定的业务逻辑关系,如 果目标业务单据被修改,则源业务单据对应的字段也要同步修改,通常称之为反写源单,这 种反写源单往往不仅是简单的字段赋值操作,而是需要对目标业务单据的字段值进行一定 的逻辑运算后,才能将结果反写到源单,具体可以通过生成公式脚本来配置相应的业务逻 辑来制定相应的转换逻辑,然而,当目标业务单据被删除或作废时,则需要将源业务单据的 状态恢复到反写前的状态,此时就需要对原来的正向公式脚本进行逆向运算操作,又被称 为反反写操作,否则源业务单据的状态就可能会发生错误。 例如,销售订单可以生成销售出库单,假设销售出库单上定义了一个字段叫出库 数量,销售订单上定义了一个字段叫已出库金额,初始状态下这两个字段值都是等于O,实 际业务中一张销售订单可能生成多张销售出库单,即出库行为可能发生多次,每次出库其 中一部分数量。 当用户修改并提交了某一张销售出库单的出库数量时,系统中销售订单上的已出 库金额也需要同时被反写为出库数量*单价,以公式来描述以上反写逻辑为 源单.已出库金额=源单.已出库金额+目标单.收 ...
【技术保护点】
一种业务单据的转换方法,其特征在于,所述方法包括下述步骤:获取预设的正向公式脚本,并对所述正向公式脚本进行语法分析,生成与所述正向公式脚本对应的正向公式语法结构树;根据二叉树的结构,对所述正向公式语法结构树进行逆向操作,生成逆向公式语法结构树;根据逆向公式语法结构树生成与正向公式脚本逻辑完全相反的逆向公式脚本;根据所述逆向公式脚本以及获取的源业务单据的数据,将源业务单据的相应字段转换为反写前的原始值。
【技术特征摘要】
一种业务单据的转换方法,其特征在于,所述方法包括下述步骤获取预设的正向公式脚本,并对所述正向公式脚本进行语法分析,生成与所述正向公式脚本对应的正向公式语法结构树;根据二叉树的结构,对所述正向公式语法结构树进行逆向操作,生成逆向公式语法结构树;根据逆向公式语法结构树生成与正向公式脚本逻辑完全相反的逆向公式脚本;根据所述逆向公式脚本以及获取的源业务单据的数据,将源业务单据的相应字段转换为反写前的原始值。2. 如权利要求1所述的方法,其特征在于,所述根据二叉树的结构,对所述正向公式语 法结构树进行逆向操作,生成逆向公式语法结构树的步骤具体为创建一个空的逆向公式语法结构树,并创建一个根结点,该节点为一个赋值运算符,设 置根节点为该逆向公式语法结构树的当前节点;遍历正向公式语法结构树的所有节点,找到反写前的源单据字段的节点,将正向公式 语法结构树上的反写前的源单据字段的节点移除,增加为逆向公式语法结构树当前节点的 左侧子节点,设置反写前的源单据字段的节点的父节点为正向公式语法结构树的当前节 点;将正向公式语法结构树的当前节点的运算符修改为逻辑相反的运算符,然后连同子树 一次复制到逆向公式语法结构树,增加为逆向公式语法结构树的当前节点下的右侧子树;移除正向公式语法结构树的当前节点及其子树,设置其父节点为新的当前节点,并设 置逆向公式语法结构树的反向运算符节点为新的当前节点;继续处理正向公式语法结构树的当前节点,如果是运算符节点,则将正向公式语法结 构树的当前节点的运算符修改为逻辑相反的运算符,然后连同子树一次复制到逆向公式语 法结构树,增加为逆向公式语法结构树的当前节点下的左侧子节...
【专利技术属性】
技术研发人员:张俊,
申请(专利权)人:金蝶软件中国有限公司,
类型:发明
国别省市:94[中国|深圳]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。