Code: Alles auswählen.
SELECTION-SCREEN BEGIN OF BLOCK brbg WITH FRAME TITLE frtitle.
PARAMETERS:
p_radd RADIOBUTTON GROUP rbg DEFAULT 'X',
p_rdel RADIOBUTTON GROUP rbg.
SELECTION-SCREEN SKIP 1.
PARAMETERS:
p_bps_to LIKE lv_bp OBLIGATORY,
p_bps_fr LIKE lv_bp OBLIGATORY.
SELECTION-SCREEN SKIP 1.
PARAMETERS:
p_tstmod AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF BLOCK brbg.
********************************************************************************
*… SELECTION SCREEN END *
********************************************************************************
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_bps_to. "F4-Hilfe für Mitarbeiter, der Beziehungen erhält bzw. bei dem sie gelöscht werden
vc_repid = sy-repid.
vc_dynnr = sy-dynnr.
CALL METHOD /mai/cl_gw_exchange_handler=>get_gw_cust_param "Verwendeten Rollentyp aus Customizing auslesen
EXPORTING
iv_parameter = 'GW_STD_EMPL_ROLE'
RECEIVING
rv_value = lv_role.
SELECT but000~partner but000~name_first but000~name_last but000~name1_text but100~rltyp "Mitarbeiter mit verwendeten Rolle auslesen und in interne Tabelle schreiben
FROM but000
INNER JOIN but100 ON but000~partner = but100~partner
INTO CORRESPONDING FIELDS OF TABLE lt_bpid
WHERE but100~rltyp = lv_role.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
* DDIC_STRUCTURE = ' '
retfield = 'PARTNER'
* PVALKEY = ' '
dynpprog = vc_repid
dynpnr = vc_dynnr
dynprofield = 'S_BPS_TO'
value_org = 'S'
TABLES
value_tab = lt_bpid
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
******************************************************************************
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_bps_fr. "F4-Hilfe für Mitarbeiter, dessen Beziehungen ausgeslesen werden
CALL METHOD /mai/cl_gw_exchange_handler=>get_gw_cust_param "Verwendeten Rollentyp aus Customizing auslesen
EXPORTING
iv_parameter = 'GW_STD_EMPL_ROLE'
RECEIVING
rv_value = lv_role.
SELECT but000~partner but000~name_first but000~name_last but000~name1_text but100~rltyp "Mitarbeiter mit verwendeten Rolle auslesen und in interne Tabelle schreiben
FROM but000
INNER JOIN but100 ON but000~partner = but100~partner
INTO CORRESPONDING FIELDS OF TABLE lt_bpid
WHERE but100~rltyp = lv_role.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
* DDIC_STRUCTURE = ' '
retfield = 'PARTNER'
* PVALKEY = ' '
dynpprog = vc_repid
dynpnr = vc_dynnr
dynprofield = 'S_BPS_fr'
value_org = 'S'
TABLES
value_tab = lt_bpid
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
END-OF-SELECTION.
Das Event hast du doch schon AT SELECTION SCREEN ON VALUE REQUEST.cschmoel hat geschrieben:joa und diesen Vorgang mach ich 2 mal (je Suchhilfe 1 mal), aber ich frage mich ob es ein EVENT gibt, dass das alles verkürzt