场景: 在会计凭证创建保存之前将凭证中的部分字段信息保存到自建表中

具体实现步骤如下:

  1. 进入事务码FIBF中,查找业务交易事件00001030(过帐凭证:  标准数据的过帐)和与之对应的SAMPLE函数SAMPLE_INTERFACE_00001030
  2. 根据SAMPLE函数拷贝创建自定义的Z函数
  3. 创建产品
  4. 将业务交易事件、产品和自定义Z函数关联起来

详细的实现步骤截图以及代码如下:

1.  查找交易事件00001030(过帐凭证:  标准数据的过帐)和与之对应的SAMPLE函数SAMPLE_INTERFACE_00001030

事务码: FIBF  (菜单栏: 环境--->信息系统(P/S) )

点击执行按钮,其他选项保持默认

定位到业务事件00001030, 点击模式函数模块,查看SAMPLE 函数SAMPLE_INTERFACE_00001030

 2. 根据SAMPLE函数拷贝创建自定义的Z函数

事务码: SE37

输入SAMPLE函数,点击拷贝按钮,创建自定义Z函数

 在函数中实现相关逻辑去满足保存凭证信息到自定义表中

FUNCTION zfi_interface_00001030.
*"----------------------------------------------------------------------
*"*"本地接口:
*"  IMPORTING
*"     VALUE(I_BKDF) LIKE  BKDF STRUCTURE  BKDF
*"     VALUE(I_UF05A) LIKE  UF05A STRUCTURE  UF05A
*"     VALUE(I_XVBUP) LIKE  OFIWA-XVBUP DEFAULT 'X'
*"  TABLES
*"      T_AUSZ1 STRUCTURE  AUSZ1 OPTIONAL
*"      T_AUSZ2 STRUCTURE  AUSZ2 OPTIONAL
*"      T_AUSZ3 STRUCTURE  AUSZ_CLR OPTIONAL
*"      T_BKP1 STRUCTURE  BKP1
*"      T_BKPF STRUCTURE  BKPF
*"      T_BSEC STRUCTURE  BSEC
*"      T_BSED STRUCTURE  BSED
*"      T_BSEG STRUCTURE  BSEG
*"      T_BSET STRUCTURE  BSET
*"      T_BSEU STRUCTURE  BSEU
*"----------------------------------------------------------------------DATA: lt_data TYPE TABLE OF zpjxx,ls_data TYPE zpjxx,lt_temp TYPE TABLE OF zpjxx,ls_temp TYPE zpjxx,lt_copy TYPE TABLE OF zpjxx,ls_copy TYPE zpjxx,ls_bseg TYPE bseg,ls_bkpf TYPE bkpf.CLEAR: lt_data,ls_data,lt_temp,ls_temp,lt_copy,ls_copy,ls_bseg,ls_bkpf.LOOP AT t_bseg INTO ls_bseg WHERE hkont = '0011110000' OR hkont = '0011110001' .ls_data-bukrs = ls_bseg-bukrs. "公司代码ls_data-gjahr = ls_bseg-gjahr. "会计年度ls_data-belnr = ls_bseg-belnr. "凭证编号ls_data-docln = ls_bseg-buzei. "行项目号ls_data-zuonr = ls_bseg-zuonr. "发票号ls_data-xref3 = ls_bseg-xref3. "票据开具日期ls_data-zfbdt = ls_bseg-zfbdt. "票据到期日ls_data-dmbtr = ls_bseg-dmbtr. "金额READ TABLE t_bkpf INTO ls_bkpf INDEX 1.IF sy-subrc = 0.ls_data-rwcur = ls_bkpf-waers. "货币ENDIF.CONCATENATE ls_bseg-belnr ls_bseg-bukrs ls_bseg-gjahr ls_bseg-buzei INTO ls_data-zz_value SEPARATED BY '#'.APPEND ls_data TO lt_data.CLEAR: ls_data, ls_bseg.ENDLOOP.IF lt_data IS NOT INITIAL.SELECT * INTO TABLE lt_tempFROM zpjxxFOR ALL ENTRIES IN lt_dataWHERE bukrs = lt_data-bukrsAND zuonr = lt_data-zuonr.IF sy-subrc = 0 AND lt_temp IS NOT INITIAL.CLEAR: ls_temp.READ TABLE lt_temp INTO ls_temp WITH KEY zsfzy = 'X'.IF sy-subrc = 0.INSERT zpjxx FROM TABLE lt_data.lt_copy = lt_data.ELSE.CLEAR: ls_temp.LOOP AT lt_temp INTO ls_temp.READ TABLE lt_data INTO ls_data INDEX 1.IF sy-subrc = 0.UPDATE zpjxx SET zsfzy = 'X'zbelnr = ls_data-belnrzdocln = ls_data-doclnzgjahr = ls_data-gjahrWHERE bukrs = ls_temp-bukrsAND gjahr = ls_temp-gjahrAND belnr = ls_temp-belnrAND docln = ls_temp-doclnAND zuonr = ls_temp-zuonr.ls_copy = ls_temp.ls_copy-zsfzy = 'X'.ls_copy-zbelnr = ls_data-belnr.ls_copy-zdocln = ls_data-docln.ls_copy-zgjahr = ls_data-gjahr.APPEND ls_copy TO lt_copy.CLEAR: ls_copy.ENDIF.CLEAR: ls_temp.ENDLOOP.ENDIF.ELSE.INSERT zpjxx FROM TABLE lt_data.lt_copy = lt_data.ENDIF.ENDIF.IF lt_copy IS NOT INITIAL.EXPORT lt_copy TO MEMORY ID 'ZFI_PIAOJU_XINXI'.ENDIF.ENDFUNCTION.

 3. 创建产品

事务码:FIBF (菜单栏: 设置 --->  产品 ---> 一个客户的)

维护产品名称和文本描述,并且注意勾选激活复选框

 4.  将业务交易事件、产品和自定义Z函数关联起来

创建会计凭证保存前BTE增强相关推荐

  1. SAP MM ME21N保存前检查增强

    想在ME21N保存前做一些数据检查, 可以做一个增强功能, 运行 CMOD 新增,   增强接口 输入 MM06E005  (  EXIT_SAPMM06E_012 ) ,在 NCLUDE ZXM06 ...

  2. 2021-10-19 SAP 创建会计凭证 BTE替代利润中心

    创建会计凭证 BTE替代利润中心 FIBF ZSAMPLE_PROCESS_00001120

  3. BAPI - BAPI_ACC_DOCUMENT_POST 创建会计凭证,表增强 扩展字段

    使用BAPI创建会计凭证需要注意的一点是,行项目最多不能超过1000行 FUNCTION zyktrfm_acc_document_post. *"--------------------- ...

  4. Business Transaction Events BTE 增强

    BTE 介绍 BTEs Are enhancements that were developed for the Financial Accounting (FI) component BTEs Ha ...

  5. 创建Facebook广告前的准备工作有哪些?

    现在使用Facebook广告进行引流的跨境电商不在少数,那创建Facebook广告前的准备工作有哪些?需要注意的事项又是什么? 账号准备 需要准备一个稳定的个人账号:企业的广告账户以及公共主页 Fac ...

  6. OPENCV图像创建,保存和复制

    OPENCV图像的创建,保存和复制 这是官方中讲稿的一个例子 /*************************************************** cvLoadImage, cvS ...

  7. 如何使用SAP CRM增强工具AET创建Table表格类型的增强

    Jerry创建于2019年1月11日周五. 第一步,创建一个起包裹作用的SAP CRM UI component,用于容纳这个表格类型的UI增强: 点击按钮Create UI component,指定 ...

  8. 【Spring-AOP-学习笔记-3】@Before前向增强处理简单示例

    项目结构 程序代码 HelloImpl.java WorldImpl.java 定义切面类 package org.crazyit.app.aspect; import org.aspectj.lan ...

  9. python cookies过期_Python3中关于cookie的创建与保存

    1.cookie的作用 cookie 是指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据,就像有些网站上的一些数据是需要登录后才能看得到,那么想抓取某个页面内容,就需要用 ...

最新文章

  1. PHP生成PDF完美支持中文,解决TCPDF乱码
  2. setInterval和setTimeout的区别以及setInterval越来越快问题的解决方法
  3. 最优二叉树(哈夫曼树)知识点
  4. 解决The current branch is not configured for pull No value for key branch.master.merge found in confi
  5. 给一个金额字符串插入逗号分隔 保留两位有效数字
  6. 牛津书虫系列双语读物
  7. android TextView EditTextView一些技巧使用 (视图代码布局)
  8. 面试必备:synchronized的底层原理?
  9. ODBC连接达梦数据库配置
  10. STM32与FPGA Cyclone IV芯片fsmc通信
  11. 通过HOOK获取QQ游戏登录密码
  12. 计算机网络知识点总结——第三章数据链路层
  13. 【IDEA保姆级教程】快捷键
  14. mac下后端开发常用软件
  15. 来自菜鸟的逆袭,闭关修炼一个月,出关后成功拿下阿里,蚂蚁金服,美团三个大厂意向书!
  16. 医疗系统流程软件测试用例,如何写全流程的测试用例 - rose8561900的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...
  17. 校园公交车管理系统设计
  18. 欧瑞变频器故障码表_尼得科变频器故障代码处理一览表
  19. 外文翻译原文附在后面_外文翻译及外文原文(参考格式).doc
  20. 地下室气味难闻,地下室车库co浓度报警一招解决!

热门文章

  1. 计算机64位只有2g,电脑插了4G内存,但只有2G左右可以用,为什么 WIN7 64位
  2. windows下hadoop的部署和使用
  3. cesium获取模型高度_180套经典夹具设计方案(附详解+模型),原来夹具设计这么简单!...
  4. 3款开源软件帮你缩短链接
  5. 用计算机打根号怎么打,根号在电脑上怎么打出来啊?
  6. APMSERV 配置失败 或80端口被占用最全解决办法 100%解决
  7. apmserv mysql5.1启动失败_apmserv启动失败的原因以及解决方法
  8. 怎么用U盘制作原版系统启动盘
  9. Java 基础核心总结
  10. TNN MatConverter CvtColor NV21TOBGR