凭证流(document flow)是销售模块比较经典的一个功能,通过凭证流,用户可以看到从询报价到订单到交货到发票到财务凭证的一整套单据,甚至逆向业务也可以跟正向业务再关联起来。如果是第三方销售业务、或者是STO,也可以将采购订单集成到凭证流中。那么如何在凭证流中加入一些其他单据类型,或者是将一些自开发的单据加入到凭证流中,以方便用户对上下游业务的追溯呢?答案就在USEREXIT_NACHFOLGER中。这个userexit是在程序LV05CFZZ里,它并没有预留include程序,所以需要用自有增强点的方式来编写实现代码。
我的应用背景是跨公司销售业务,将销售公司对生产公司的应付凭证加入到销售凭证流。实现过程如下:
FORM USEREXIT_NACHFOLGER.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""$"$\SE:(1 ) Form USEREXIT_NACHFOLGER, Start D
*$*$-Start: (1 )--------------------------------------------------------------------------------$*$*
ENHANCEMENT 19 ZEI_VBFA_UPDATE_DOCFLOW. "active version
DATA: lt_vbfa_tab TYPE STANDARD TABLE OF vbfa,
ls_vbfa_tab TYPE vbfa,
vbfa_wa TYPE vbfa.
DATA: lt_vbrk TYPE STANDARD TABLE OF vbrk,
ls_vbrk TYPE vbrk,
lt_bkpf TYPE STANDARD TABLE OF bkpf,
ls_bkpf TYPE bk