使用工作流+botp实现按分录循环生成下游单据原创
金蝶云社区-boolean
boolean
3人赞赏了该文章 471次浏览 未经作者许可,禁止转载编辑于2021年06月20日 16:34:24

需求描述:单据A生成单据B,单据B经过审批流程后自动生成单据C。

涉及到的功能:工作流和BOTP

  1. 流程图如下:

    image.png

  2. 重点设置位置说明

    1. 流程变量:

      BIDs  :  外部数据类型 

      BID    :  内码

      CIDs   :  外部数据类型

      CID    :   内码

      I         :  整数

      fzxh   :  分录的数量

      tp5StrSql : 字符串

      A       : 最原始提交的单据

    2. 每个节点设置说明:

      1. 人工节点:无特殊设置

      2. 审批节点:无特殊设置

      3. 审批通过:后置脚本更新单据状态。

        脚本如下:

        //初始化变量i

        i=0;

        //获取单据A的明细数量

        tp5StrSql = new StringBuffer ( ) ; 

        tp5StrSql . append ( "select count(fid) as num from  Aentry(A的分录)  where fparentid = '" + A(替换为实际的单据).id + "'" ) ; 

        com . kingdee . jdbc . rowset . IRowSet tp1rowSet = com . kingdee . eas . util . app . DbUtil . executeQuery ( __bosContext , tp5StrSql . toString ( ) ) ;

        //将查询的数量赋值给fzxh

        if ( tp1rowSet != null ) 

        while ( tp1rowSet . next ( ) ) { 

        fzxh = tp1rowSet . getInt ( 1 ) ; 

        }

      4. 生成资金调拨单节点:无需特殊配置,分组规则要使用上游单据分录id。

      5. 脚本:

        //更新BID的值。

        BID = BIDs[i];

      6. 资金调拨单提交:无特殊配置

      7. 资金调拨单审批:无特殊配置

      8. 资金调拨单生成付款单:无特殊配置

      9. 资金调拨单生成付款单向下的连接弧线判断条件如下:

        i >= fzxh

      10. 资金调拨单生成付款单到脚本的条件如下:i < fzxh

  3. BOTP设置:

    生成资金调拨单的botp:分组规则要设置为上游单据的分录ID



这样配置就可以使用工作流循环提交生成单据了。

赞 3