当前位置: 首页 > news >正文

SAP会计凭证抬头增强

1.增强结构:增强字段必须放在SAFM_AP_AS_EXT_BKPF结构里面,可修改这个结构,APPEND自定义结构在里面,也可以在里面的INCLUDE结构里面附加。
在这里插入图片描述
2.表激活成功之后,需要运行程序SAPFACCG,运行完成之后检查FFACIGEN中P_ACC是否存在这个字段。
在这里插入图片描述
3.创建一个函数组,里面创建一个屏幕(属性里面屏幕类型设定为子屏幕),屏幕创建完成之后,加上代码,并且在屏幕里面加上需要的字段。
在这里插入图片描述
TOP 定义:在这里插入图片描述

TABLES:bkpf.
DATA: go_exit        TYPE REF TO  if_ex_fi_header_sub_1300.
DATA: gs_bkpf        TYPE bkpf.
DATA: gv_scr_mode    TYPE xfeld.

PBO MODULE代码:

MODULE status_9001 OUTPUT.
* SET PF-STATUS 'xxxxxxxx'.
* SET TITLEBAR 'xxx'.*  获取实例IF go_exit IS INITIAL.CALL METHOD cl_exithandler=>get_instance_for_subscreensCHANGINGinstance                      = go_exitEXCEPTIONSno_reference                  = 1no_interface_reference        = 2no_exit_interface             = 3data_incons_in_exit_managem   = 4class_not_implement_interface = 5OTHERS                        = 6.IF sy-subrc <> 0.ENDIF.ENDIF.* 获取值CALL METHOD go_exit->get_data_from_screen_pboEXPORTINGflt_val       = 'CN'IMPORTINGex_bkpf       = gs_bkpfex_x_no_input = gv_scr_mode.* 设置屏幕LOOP AT SCREEN.IF gv_scr_mode = 'X'.screen-input = 0.MODIFY SCREEN.ENDIF.ENDLOOP.ENDMODULE.

PAI MODULE代码:

MODULE pai INPUT.
* 获取CALL METHOD go_exit->get_data_from_screen_paiEXPORTINGflt_val = 'CN'IMPORTINGex_bkpf = gs_bkpf.* 设置gs_bkpf-zpjh  = bkpf-zpjh.gs_bkpf-zzpqj = bkpf-zzpqj.* 回传CALL METHOD go_exit->put_data_to_screen_paiEXPORTINGim_bkpf = gs_bkpfflt_val = 'CN'.ENDMODULE.

在此函数组激活。

3.增强点:BADI增强 FI_HEADER_SUB_1300,在这里,注意过滤器要配置一行CN,在屏幕页签,配置好调用程序和屏幕号
在这里插入图片描述
在这里插入图片描述
屏幕配置好之后,在接口页签,需要给四个方法分别添加代码:
PUT_DATA_TO_SCREEN_PBO

  METHOD if_ex_fi_header_sub_1300~put_data_to_screen_pbo.me->if_ex_fi_header_sub_1300~bkpf = im_bkpf.me->if_ex_fi_header_sub_1300~x_no_input = im_x_no_input.ENDMETHOD.

PUT_DATA_TO_SCREEN_PAI

  METHOD if_ex_fi_header_sub_1300~put_data_to_screen_pai.me->if_ex_fi_header_sub_1300~bkpf = im_bkpf.ENDMETHOD.

GET_DATA_FROM_SCREEN_PBO

  METHOD if_ex_fi_header_sub_1300~get_data_from_screen_pbo.ex_bkpf = me->if_ex_fi_header_sub_1300~bkpf.ex_x_no_input = me->if_ex_fi_header_sub_1300~x_no_input.ENDMETHOD.

GET_DATA_FROM_SCREEN_PAI

  METHOD if_ex_fi_header_sub_1300~get_data_from_screen_pai.ex_bkpf  = me->if_ex_fi_header_sub_1300~bkpf  .ENDMETHOD.

屏幕效果我就不展示在这里,最后,如果增强字段想要FB02/FB03前台也能看到的话,需要修改标准程序的屏幕(程序:SAPMF05L 屏幕:1710),在屏幕里面把字段加上之后,这个增强就完成了。

http://www.xdnf.cn/news/1009297.html

相关文章:

  • 【学习笔记】H264视频编码
  • python虚拟环境
  • JavaScript 中 apply、call 和 bind 方法的手写实现
  • cf1742D
  • <论文>自注意力序列推荐模型SASRec
  • 负氧离子监测站在景区的作用
  • 详解HarmonyOS NEXT系统中ArkTS和仓颉的混合开发
  • sqlmap 的基本用法
  • 树莓派-ubuntu 24.04开启桌面远程访问
  • MD从入门到荒废-Markdown文件插入多个动态徽章
  • linux驱动开发(6)-内核虚拟空间管理
  • python 在基因研究中的应用,博德研究所:基因编辑
  • JDK各个版本新特性
  • 指针01 day13
  • Python 基础语法 (2)【适合 0 基础】
  • SM4 与 AES 在 GPU 上的性能比较
  • 一分钟了解MCP
  • AES加密
  • Huggingface Transformer 使用指南2-开发自定义模型
  • apdl细节
  • TypeReference指定反序列化获取响应对象
  • 小黑享受思考心流躲避迷茫:92. 反转链表 II
  • 2025年度重点专项项目申报指南的通知公布!
  • ADC(模数转换)
  • 【大模型应用开发】基于langchain的大模型调用及简单RAG应用构建
  • 使用argocd部署nginx
  • 蓝牙协议LMP(Link Manager Protocol)
  • 试验台铁地板:革新工业领域的里程碑
  • java 高并发设计
  • Vue3 + TypeScript + Element Plus 通过 try...catch 捕获不到异常的案例分析