取分录的字段做判断条件

栏目:k3wise知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

取分录的字段做判断条件

适用场景

根据业务需要,希望通过单据分录的某些字段来判断费用报销单的流程走向:

例如费用报销单的多条分录中,任意一条分录的“业务类别”等于差旅费,流程就要走另一个分支,否则走另一个分支。

对于以上需求,工作流的聚合函数只有“第一条”或者“指定分录”,没有“其中之一”的判断条件,导致无法取值判断。可通过以下脚本取出分录中所有业务类别的名称,然后遍历判断是否含有差旅费。


步骤

1.定义内码型变量billid ,外部数据类型变量posarray,字符串类型变量ywlb,并赋初始值:非差旅费

2.在提交节点的输出单据明细将单据id绑定给变量billid

3.在提交节点的后置脚本放以下脚本

4.脚本实现的结果是当分录的业务类别含有差旅费,ywlx变量的值就是差旅费,如果分录里没有含有差旅费,那ywlx变量的值就是非差旅费。所以可以用ywlx去设置条件。



java . lang . StringBuffer sql1 = new java . lang . StringBuffer ( ) ; 

sql1 . append ( "select FNAME_l2 from T_BC_OperationType where fid in (select FOPERATIONTYPEID  from T_BC_BizAccountBillentry  where fbillid ='"+billid+"')") ; 

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

 java . util . ArrayList list1 = new java . util . ArrayList ( ) ; 

while ( rst . next ( ) ) { list1 . add ( rst . getString ( "FNAME_l2" ) . toString ( ) ) ; } 

posarray = new String [ list1 . size ( ) ] ;


 for ( int i = 0 ; i < list1 . size ; i ++ ) { posarray [ i ] = list1 . get ( i ) . toString ( ) ; 

if ( posarray [ i ]=="差旅费" )

 ywlx="差旅费"; 

 }


取分录的字段做判断条件

适用场景根据业务需要,希望通过单据分录的某些字段来判断费用报销单的流程走向:例如费用报销单的多条分录中,任意一条分录的“业务类别”...
点击下载文档
标签: # K/3 WISE-BOS
分享:
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息