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

SAP MM采购信息记录维护接口分享

一、接口逻辑

1)外围系统:适用于走OA或SRM系统创建供应商与SAP交互

2)输入参数和输出参数

二、接口代码

为了确保采购信息记录维护无问题,没有使用标准BAPI,而是通过BDC实现,当前版本为PCE S4 2023版本,采购信息记录维护ME11界面可能与ECC版本有微小差异,可能BDC屏幕需要微调。

FUNCTION z_fmmm_0026.
*"----------------------------------------------------------------------
*"*"本地接口:
*"  IMPORTING
*"     REFERENCE(I_DATA_GD) TYPE  ZSBC_IF_GD
*"     REFERENCE(I_INPUT) TYPE  STRING
*"  EXPORTING
*"     REFERENCE(E_OUTPUT) TYPE  STRING
*"----------------------------------------------------------------------
  DATA:lv_matnr TYPE matnr,
       lwa_msg  TYPE zsbc_msg,
       lwa_out  TYPE zssmm_output_026.

  DATA: lwa_headdata TYPE bapimathead,
        lwa_marc     TYPE bapi_marc,
        lwa_marcx    TYPE bapi_marcx,
        lwa_return   TYPE bapiret2.

  DATA: ls_item  TYPE          zssmm_input_026,
        ls_scale TYPE          zssmm_input_026,
        lt_scale TYPE TABLE OF zssmm_input_026,
        ls_incom TYPE          meico,
        ls_eina  TYPE          eina,
        ls_eine  TYPE          eine,
        ls_bdc   TYPE          bdcdata,
        lt_bdc   TYPE TABLE OF bdcdata,
        lv_mode  TYPE          c,
        ls_msg   TYPE          bdcmsgcoll,
        lt_msg   TYPE TABLE OF bdcmsgcoll,
        lv_msg   TYPE          string,
        lv_type  TYPE bapi_mtype,
        lv_dynnr TYPE          sy-dynnr,
        lv_tcode TYPE          sy-tcode.

  DATA: lv_kbetr  TYPE string,
        lv_kpeins TYPE string,
        lv_kstbms TYPE string,
        lv_aplfz  TYPE string,
        lv_untto  TYPE string,
        lv_uebto  TYPE string,
        lv_netpr  TYPE string,
        lv_peinh  TYPE string,
        lv_bprme  TYPE string,  "added by dq 20250205 新增采购订单单位
        lv_kstbm  TYPE string,
        lv_datab  TYPE string,
        lv_datai  TYPE string,
        lv_norbm  TYPE string,
        lv_minbm  TYPE string,
        lv_num(2) TYPE n.
  DATA: ls_konp TYPE konp,
        lt_konp TYPE TABLE OF konp.

  FIELD-SYMBOLS <lfs_item> TYPE zssmm_input_026.

  DEFINE conv_alpha_input.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
      EXPORTING
        input  = &1
      IMPORTING
        output = &1.
  END-OF-DEFINITION.

  DEFINE bdcdata.
    CLEAR ls_bdc.
    IF &1 = 'X'.
      ls_bdc-program  = &2.
      ls_bdc-dynpro   = &3.
      ls_bdc-dynbegin = 'X'.
    ELSE.
      ls_bdc-fnam = &2.
      ls_bdc-fval = &3.
    ENDIF.
    APPEND ls_bdc TO lt_bdc.
  END-OF-DEFINITION.
  "清空全局变量
  CLEAR:gv_input_026,
        gv_output_026,
        gv_status_026.

  "清空输出变量
  CLEAR:e_output.

  CLEAR:lv_matnr,
        lwa_msg,
        lt_msg .

  gv_status_026 = 'S'.

  IF i_input IS NOT INITIAL.

    CALL FUNCTION 'Z_FMBC_JSONTOABAP2'
      EXPORTING
        i_json = i_input
      IMPORTING
        e_data = gv_input_026.

  ENDIF.

  IF gv_input_026 IS INITIAL.

    lwa_msg-type  = 'E'.
    lwa_msg-message = '请检查JSON结构与SAP ABAP结构 是否一致!'.
    APPEND lwa_msg TO lwa_out-messagelist.
    APPEND lwa_out TO gv_output_026-data_list.
    CLEAR lwa_out.
    gv_status_026 = 'E'.
    PERFORM frm_write_log_new  USING i_data_gd-butype
                                     gv_output_026
                                     i_data_gd
                                     i_input
                                     e_output
                                     gv_status_026.
    EXIT.
  ENDIF.

  SORT gv_input_026-data_list BY lifnr matnr ekorg werks esokz kstbm.
  lv_mode = 'N'.
*  SELECT *
*  FROM konp

http://www.dtcms.com/a/473395.html

相关文章:

  • 网站搭建装修风格大全2021新款简约
  • Mysql初阶第八讲:Mysql表的内外连接
  • SpringCloud 入门 - Gateway 网关与 OpenFeign 服务调用
  • uniapp 选择城市(城市列表选择)
  • AR小白入门指南:从零开始开发增强现实应用
  • 02_k8s资源清单
  • 2025年渗透测试面试题总结-109(题目+回答)
  • uniapp配置自动导入uni生命周期等方法
  • flink的Standalone-HA模式安装
  • Flink时态表关联:实现数据“时间旅行”的终极方案
  • 做哪类英文网站赚钱wordpress 页面 列表
  • nginx + spring cloud + redis + mysql + ELFK 部署
  • 【黑马点评 - 实战篇01】Redis项目实战(Windows安装Redis6.2.6 + 发送验证码 + 短信验证码登录注册 + 拦截器链 - 登录校验)
  • 汕头市通信建设管理局网站二网站手
  • FreeRTOS小记
  • 数据结构实战:顺序表全解析 - 从零实现到性能分析
  • 【C++进阶】继承上 概念及其定义 赋值兼容转换 子类默认成员函数的详解分析
  • 华为matebook16s 2022禁用触摸板和触摸屏操作
  • GridRow 和 Column 有啥区别
  • 030159网站建设与维护中国科技成就素材
  • Echarts 5.6.0 Grid 坐标系中 Y 轴可视化的优化之路
  • Java 线程池如何知道一个线程的任务已经执行完成
  • JVM字节码与类的加载(一):类的加载过程详解
  • 强军网网站建设网站需要备案才能建设吗
  • 耄大厨——AI厨师智能体(3-工具调用)
  • (二)黑马React(导航/账单项目)
  • SA-LSTM
  • 【Java并发】深入理解synchronized
  • Docker 安装 Harbor 教程
  • Python+Flask+Prophet 汽车之家二手车系统 逻辑回归 二手车推荐系统 机器学习(逻辑回归+Echarts 源码+文档)✅