lunedì 28 giugno 2021

Leggere campi dynpro non aggiornati

  IF rb_pick = gc_x AND
     p_zppsl IS NOT INITIAL AND
     gv_scr300_werks-werks IS NOT INITIAL.
    APPEND VALUE #( fieldname = 'P_ZPPSL' ) TO lt_dynpread.
    CALL FUNCTION 'DYNP_VALUES_READ'
      EXPORTING
        dyname     = sy-cprog
        dynumb     = '0301'
      TABLES
        dynpfields = lt_dynpread.
    IF sy-subrc = 0.
      READ TABLE lt_dynpread INTO DATA(ls_dynpread) WITH KEY fieldname = 'P_ZPPSL'.
      SELECT @abap_true
       UP TO 1 ROWS
        FROM t001l
        INTO @DATA(lv_exists)
       WHERE werks = @gv_scr300_werks-werks
         AND lgort = @ls_dynpread-fieldvalue.
      ENDSELECT.
      IF lv_exists IS INITIAL.
        MESSAGE TEXT-e19 TYPE gc_s DISPLAY LIKE gc_e.
        EXIT.
      ELSE.
        CLEAR lv_exists.
      ENDIF.
    ENDIF.
  ENDIF.

Nessun commento: