ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

SAP如何在创建销售订单时生成VF04开票索引VKDFS

2021-12-29 18:31:49  阅读:262  来源: 互联网

标签:LVBAP LFPLT VF04 VKDFS INITIAL ENDIF LVBAK SAP


场景:

      SAP参考销售订单开票,在创建完销售订单后,SAP会生成开票索引VKDFS,也就是VF04看到的开票清单,本文讨论此时SAP生成开票索引的关键实现过程。

相关程序:

     FORM INDEX_VKDFS_AUFBAUEN

销售订单更新VKDFS开票索引的条件

if ( lvbup-fksaa     ca 'AB' 

and auft_cust_index ne '0'    ) 

or ( auft_cust_index eq '1'    ).

 写入索引表VKDFS动作:      INSERT VKDFS FROM TABLE XVKDFS ACCEPTING DUPLICATE KEYS.
      IF SY-SUBRC NE 0.
        LOOP AT VKDFSTAB WHERE VBELN NE SPACE.
          DELETE FROM VKDFS WHERE VBELN = VKDFSTAB-VBELN.
        ENDLOOP.
        INSERT VKDFS FROM TABLE SAVE_VKDFS ACCEPTING DUPLICATE KEYS.
        EXIT.
      ENDIF.

VKDFS赋值过程关键性代码摘抄:

  CLEAR VKDFS.                                              "HP_386396
  VKDFS-MANDT = SY-MANDT.
  VKDFS-FKTYP = 'A'.
  IF LVBAK-KNUMA IS INITIAL.
    VKDFS-FKTYP = 'A'.
  ELSE.
    VKDFS-FKTYP = 'B'.
  ENDIF.
  VKDFS-VKORG = LVBAK-VKORG.
  VKDFS-FKDAT = LVBKD-FKDAT.
  VKDFS-KUNNR = KUNNR_AG.
  VKDFS-ADRNR = ADRNR_AG.
  VKDFS-FKART = LVBAK-FKARA.
  VKDFS-LLAND = LAND1_WE_POS.
  VKDFS-VBELN = LVBAK-VBELN.
  VKDFS-VBTYP = LVBAK-VBTYP.
  VKDFS-FAKSK = LVBAK-FAKSK.VKDFS-VTWEG = LVBAK-VTWEG.
  VKDFS-SPART = LVBAK-SPART.
  VKDFS-VSTEL = GF_VSTEL.
  IF LVBAP-KOWRR IS INITIAL.
    VKDFS-NETWR = LVBAP-NETWR.
  ENDIF.
  VKDFS-WAERK = LVBAK-WAERK.
  IF NOT LVBKD-FPLNR IS INITIAL AND
       ( LVBAP-FKREL EQ 'I' OR                              "n_573632
         LVBAP-VBELN IS INITIAL ) AND                       "n_576805
         LVBKD-FPLNR EQ LFPLT-FPLNR.
     IF LVBAP-KOWRR IS INITIAL.
       VKDFS-NETWR = LFPLT-FAKWR.
     ENDIF.

  VKDFS-FKDAT = LFPLT-AFDAT.
    IF NOT LVBAP-FAKSP IS INITIAL.
      VKDFS-FAKSK = LVBAP-FAKSP.
    ENDIF.
    IF NOT LFPLT-FAKSP IS INITIAL.
      VKDFS-FAKSK = LFPLT-FAKSP.
    ENDIF.
    IF NOT LFPLT-FKARV IS INITIAL.
      VKDFS-FKART = LFPLT-FKARV.
    ENDIF.
  ENDIF.

标签:LVBAP,LFPLT,VF04,VKDFS,INITIAL,ENDIF,LVBAK,SAP
来源: https://blog.csdn.net/shinehoneyr/article/details/122203670

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有