f4help, 根据 输入值,查找其它字段

1:数据库表:

2:代码:

*&---------------------------------------------------------------------*
*& Report Z09_002
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT Z09_002.

DATA:BEGIN OF gt_data occurs 0,
  emp_name TYPE ZEMP_DET1-emp_name,
END OF gt_data.

data: gt_rtntab like ddshretval occurs 0 WITH HEADER LINE.
data: gt_dynpread like dynpread occurs 0 WITH HEADER LINE.

PARAMETERS: p_emp_id like ZEMP_DET1-emp_id,
            p_name like ZEMP_DET1-emp_name.

INITIALIZATION.

at SELECTION-SCREEN on VALUE-REQUEST FOR p_name.
  call FUNCTION 'DYNP_VALUES_READ'
    EXPORTING
      dyname = sy-cprog
      dynumb = sy-dynnr
      request = 'A'
      translate_to_upper = 'X'
    TABLES
      dynpfields = gt_dynpread.
  read TABLE gt_dynpread with key fieldname = 'P_EMP_ID'.

  select DISTINCT emp_name into table gt_data
    from ZEMP_DET1
    WHERE emp_id = gt_dynpread-fieldvalue.

  call FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
      retfield = 'P_NAME'
      dynpprog = sy-cprog
      dynpnr = sy-dynnr
      window_title = 'EMP_NAME'
      value_org = 'S'
    TABLES
      value_tab = gt_data
      return_tab = gt_rtntab.
  READ TABLE gt_rtntab index 1.
  p_name = gt_rtntab-fieldval.

3:根据输入id,查找name

猜你喜欢

转载自www.cnblogs.com/liyafei/p/11259406.html
今日推荐