• 采购订单创建、修改、审批增强ME21N/ME22N/ME28/ME29N


    1、采购订单保存增强

    1.1、POST方法

    BADI:ME_PROCESS_PO_CUST

     通过POST方法中的参数im_header,获取对应的数据

    订单头

    1. "--------------------@斌将军--------------------
    2. *Get header
    3. CALL METHOD im_header->get_data
    4. RECEIVING
    5. re_data = header.
    6. *获取长文本
    7. REFRESH ex_textlines.
    8. CALL METHOD im_header->if_longtexts_mm~get_text
    9. EXPORTING
    10. im_tdid = im_tdid
    11. IMPORTING
    12. ex_textlines = ex_textlines.
    13. im_header->set_data( header )."更新修改
    14. "--------------------@斌将军--------------------

    订单行

    1. "--------------------@斌将军--------------------
    2. "获取行
    3. *Get Item
    4. CALL METHOD im_header->get_items
    5. RECEIVING
    6. re_items = items_data.
    7. LOOP AT items_data INTO item_data.
    8. ** First get Item Object, Second fill item data
    9. "获取行对象
    10. item_obj = item_data-item.
    11. "获取行字段值
    12. CALL METHOD item_obj->get_data
    13. RECEIVING
    14. re_data = item.
    15. "获取行长文本
    16. REFRESH ex_textlines.
    17. CALL METHOD item_obj->if_longtexts_mm~get_text
    18. EXPORTING
    19. im_tdid = im_tdid
    20. IMPORTING
    21. ex_textlines = ex_textlines.
    22.     item_obj->set_data( item )."更新修改
    23. ENDLOOP.
    24. "--------------------@斌将军--------------------

    计划行

    1. "--------------------@斌将军--------------------
    2. "获取计划行
    3. CALL METHOD item_obj->get_schedules
    4. RECEIVING
    5. re_schedules = schedules_data.
    6. LOOP AT schedules_data INTO schedule_data.
    7. schedule_obj = schedule_data-schedule.
    8. CALL METHOD schedule_obj->get_data
    9. RECEIVING
    10. re_data = schedule.
    11. schedule_obj->set_data(schedule)."更新修改
    12. ENDLOOP.
    13. "--------------------@斌将军--------------------

    更新字段要注意,存在有不可更新的字段,例如行项目中的不可直接更新字段,使用set_data也更新不了

    1.2、CHECK方法

    另外还有检查增强,点击页面检查按钮可进入。保存时也可进入。

    在检查中可以直接报E类型消息,自定义报错就直接进入前台报错清单中。

    另外也可以通过标准的程序,将自定义报错添加到报错清单中

    1. "--------------------@斌将军--------------------
    2. INCLUDE mm_messages_mac.
    3. IF 检查错误.
    4. mmpur_message_forced 'E' 'ZMM002' '011' '' '' '' ''. "错误消息
    5. ch_failed = 'X'.
    6. ENDIF.
    7. "--------------------@斌将军--------------------

    2、采购订单审批同步外围系统增强

    函数:ME_PURCHASE_DOCUMENT_DATA_SAVE

     调用接口同步数据到外围系统

    1. "--------------------@斌将军--------------------
    2. ENHANCEMENT 1 ZME28. "active version
    3. "采购订单审批发送SRM接口
    4. CALL FUNCTION 'Z_XXX' "IN BACKGROUND TASK DESTINATION 'NONE'
    5. EXPORTING
    6. i_ekko = E_EKKO.
    7. ENDENHANCEMENT.
    8. "--------------------@斌将军--------------------

    定期更文,欢迎关注

  • 相关阅读:
    C语言中,基本数据类型介绍
    javaee spring整合mybatis spring帮我们创建dao层
    Allegro如何给铜皮导弧操作详解
    Python图像处理丨基于OpenCV和像素处理的图像灰度化处理
    Java 获取本地ip网卡信息
    ubuntu安装ROS
    物联网感知-基于分布式光纤传感的石油石化管道综合监测
    无需公网IP,实现公网SSH远程登录MacOS【内网穿透】
    【阿卡乐谱】【日常分享】超级强大的简谱-大海啊,故乡
    CSS 中的 display 和 visibility
  • 原文地址:https://blog.csdn.net/BinGeneral/article/details/127070141