SAP PP 生产订单增强

1、保存时的增强 PPCO0007

长文本内容校验

******start 参考LCOKO1FV3 --- get_control_text  *******
DATA:lv_str                 TYPE string VALUE '(SAPLCOKO1)G_EDITOR',
     lt_textedit_lines      LIKE tline-tdline OCCURS 0,
     ls_thead               TYPE thead,
     lt_lines               TYPE TABLE OF tline,
     l_text_modified_status LIKE c_textedit_control=>true.
FIELD-SYMBOLS <fs_editor> TYPE REF TO c_textedit_control.

IF header_imp-auart EQ 'ZP03'.

  IF header_imp-zcode IS INITIAL.
    no_update = abap_true.
    MESSAGE e398(00) WITH '返工订单必须输入返工原因!'.
    EXIT.
  ENDIF.

  ASSIGN (lv_str) TO <fs_editor>.
  IF <fs_editor> IS ASSIGNED.
    CLEAR lv_str.
    IF <fs_editor> IS INITIAL.
      REFRESH lt_lines.
      ls_thead-tdid = 'KOPF'.
      ls_thead-tdspras = '1'.
      ls_thead-tdname = sy-mandt && header_imp-aufnr.
      ls_thead-tdobject = 'AUFK'.
      CALL FUNCTION 'READ_TEXT'
        EXPORTING
          id                      = ls_thead-tdid
          language                = ls_thead-tdspras
          name                    = ls_thead-tdname
          object                  = ls_thead-tdobject
        TABLES
          lines                   = lt_lines
        EXCEPTIONS
          id                      = 1
          language                = 2
          name                    = 3
          not_found               = 4
          object                  = 5
          reference_check         = 6
          wrong_access_to_archive = 7
          OTHERS                  = 8.
      IF sy-subrc = 0.
        LOOP AT lt_lines INTO DATA(ls_lines).
          lv_str = lv_str && ls_lines-tdline.
        ENDLOOP.
      ENDIF.

    ELSE.
      CALL METHOD <fs_editor>->get_text_as_r3table
        EXPORTING
          only_when_modified = c_textedit_control=>true
        IMPORTING
          table              = lt_textedit_lines
          is_modified        = l_text_modified_status
        EXCEPTIONS
          OTHERS             = 1.
      LOOP AT lt_textedit_lines INTO DATA(ls_textedit_lines).
        lv_str = lv_str && ls_textedit_lines .
      ENDLOOP.
    ENDIF.
    IF strlen( lv_str ) < 4.
      no_update = abap_true.
      MESSAGE w398(00) WITH '返工订单长文本不能为空或少于四个字'.
      EXIT.
    ENDIF.
  ENDIF.

ENDIF.
*******end 参考LCOKO1FV3 --- get_control_text*******

2、工单抬头及抬头屏幕增强 PPCO0012

在这里插入图片描述

3、更改工单节点增强 BADI:WORKORDER_UPDATE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值