SAP BP 分类与字段是不一样的

70 篇文章 3 订阅

员工客商Z004

正常客商

客商重名校验机制

  METHOD if_ex_bupa_addr_check~check.
    DATA:
      lv_id     TYPE ztexit-id,          "增强序列号
      lv_status TYPE char1,              "增强状态
      lv_str    TYPE string,
      ls_but000 TYPE but000,
      ls_return TYPE bapiret2.

*   客商名称存在性检查
    lv_id = 'ZSD102'.
    CALL FUNCTION 'ZABAP_CHECK_EXIT'
      EXPORTING
        id       = lv_id
      IMPORTING
        e_status = lv_status.
    IF lv_status <> 'S'.
      RETURN.
    ENDIF.

    IF is_but000-bu_group = '04' OR is_but000-bu_group = 'Z005'.
      RETURN.
    ENDIF.
    IF iv_activity <> '01' AND iv_activity <> '02'.
      RETURN.
    ENDIF.

    IF is_but000-partner+0(1) <> '#'.
      lv_str = ' PARTNER <> IS_BUT000-PARTNER '.
    ENDIF.
    IF is_but000-bu_group <> 'Z004'.
      CONCATENATE lv_str  ' AND  NAME_ORG4 = IS_BUT000-NAME_ORG4 ' INTO lv_str.
      SELECT SINGLE *
        INTO ls_but000
        FROM but000
       WHERE name_org1 = is_but000-name_org1   "组织名称 1
         AND name_org2 = is_but000-name_org2   "组织名称 2
         AND name_org3 = is_but000-name_org3   "组织名称 3
         AND (lv_str).
    ELSE.
      SELECT SINGLE *
      INTO LS_BUT000
      FROM BUT000
      WHERE NAME_FIRST = IS_BUT000-NAME_FIRST   "组织名称 1
      AND NAME_LAST = IS_BUT000-NAME_LAST   "组织名称 2
      AND (LV_STR).
    ENDIF.
    IF sy-subrc = 0.
      ls_return-type = 'E'.
      ls_return-id   = '00'.
      ls_return-number = '001'.
      ls_return-message_v1 = '名字与客商'.
      ls_return-message_v2 = ls_but000-partner.
      ls_return-message_v3 = '一致'.
      APPEND ls_return TO et_return.
    ENDIF.

  ENDMETHOD.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gavin_gxh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值