Checkbox

*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
SELECTION-SCREEN:
PARAMETERS: p_csv AS CHECKBOX.
*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.
  p_csv = 'X'.

Button

TABLES sscrfields.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
SELECTION-SCREEN:
      PUSHBUTTON /2(20) button1 USER-COMMAND but1,
      PUSHBUTTON /2(20) button2 USER-COMMAND but2.
*--------------------------------------------------------------*
*At Selection-Screen
*--------------------------------------------------------------*
AT SELECTION-SCREEN.
  CASE sscrfields.
    WHEN 'BUT1'.
      MESSAGE 'Button 1 gibt eine Erfolgsmeldung' TYPE 'S'.
    WHEN 'BUT2'.
      MESSAGE 'Button 2 gibt einen Errormeldung' TYPE 'S'.
  ENDCASE.
*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.
  button1 = 'Button Erfolg'.
  button2 = 'Button Error'.

  CALL FUNCTION 'ICON_CREATE'
    EXPORTING
      name   = icon_okay
      text   = 'Test1'
      info   = 'Test1 Info'
    IMPORTING
      RESULT = button1
    EXCEPTIONS
      OTHERS = 0.

  CALL FUNCTION 'ICON_CREATE'
    EXPORTING
      name   = icon_cancel
      text   = 'Test2'
      info   = 'Test2 Info'
    IMPORTING
      RESULT = button2
    EXCEPTIONS
      OTHERS = 0.

Radiobutton

TABLES sscrfields.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
PARAMETERS:                                            
   p_rb_1 RADIOBUTTON GROUP 1 DEFAULT 'X' USER-COMMAND radio,
   p_feld1 (8),                                         
   p_rb_2 RADIOBUTTON GROUP 1,                       
   p_feld2 (20).  
*--------------------------------------------------------------*
*At Selection-Screen Output
*--------------------------------------------------------------*
AT SELECTION-SCREEN OUTPUT. 
 LOOP AT SCREEN.
    " Radiobutton 1 gedrückt: Feld 2 wird ausgeblendet
    IF screen-name = 'P_FELD2' AND p_rb_1 = 'X'.
      screen-input = '0'.
      MODIFY SCREEN.
    ENDIF.
    " Radiobutton 2 gedrückt: Feld 1 wird ausgeblendet
    IF screen-name = 'P_FELD1' AND p_rb_2 = 'X'.
      screen-input = '0'.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.

Blöcke

TABLES sscrfields.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.
PARAMETERS: p_date TYPE sy-datum DEFAULT '99991231'.
PARAMETERS: p_test AS CHECKBOX.

SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(10) TEXT-001 FOR FIELD P1.
PARAMETERS: P1(10), P2(5), P3(1).
SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN SKIP.
SELECTION-SCREEN SKIP.

SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE TEXT-001.
PARAMETERS p_mail TYPE adr6-smtp_addr MODIF ID 1.
SELECTION-SCREEN END OF BLOCK b2.

SELECTION-SCREEN END OF BLOCK b1.

Invisible = Ausgesternt , Input = Ausgegraut ,  Aktive = Anzeigen ...

Invisible das Feld wird ausgesternt und man kann keinen Wert mehr eingeben.

Input das Feld wird ausgegraut und ist nicht mehr eingabebereit.

Aktive das Feld wird nicht mehr angezeigt.

Required das Feld wird zu einem Mussfeld

Intensified der Wert im Feld wird Rot

Output der Wert im Feld wird ausgeblendet

Length die Ausgabe Länge kann verkürzt werden

value_help zeigt dir alle Werte an die in den Festwerten der Domäne hinterlegt sind

TABLES sscrfields.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
PARAMETERS:
  p_rb_1 RADIOBUTTON GROUP 1 DEFAULT 'X' USER-COMMAND radio,
  p_rb_2 RADIOBUTTON GROUP 1.
PARAMETERS p_feld TYPE c LENGTH 9 DEFAULT 123456789.
PARAMETERS p_feld2 TYPE rfbsk.
*--------------------------------------------------------------*
*At Selection-Screen
*--------------------------------------------------------------*
AT SELECTION-SCREEN OUTPUT.
  LOOP AT SCREEN.
    IF screen-name = 'P_FELD'.
      IF p_rb_1 = 'X'.
*        screen-invisible = 1.
*        screen-input = 0.
*        screen-active = 0.
*        screen-required = 0.
        screen-intensified = 0.
*        screen-output = 0.
*        screen-length = 0.
*        screen-value_help = 0.
*        screen-values_in_combo = 0.
      ELSE.
*        screen-invisible = 0.
*        screen-input = 1.
*        screen-active = 1.
*        screen-required = 1.
        screen-intensified = 1.
*        screen-output = 1.
*        screen-length = 6.
*        screen-value_help = 1.
*        screen-values_in_combo = 1.
      ENDIF.
      MODIFY SCREEN.
    ENDIF.
    IF screen-name = 'P_FELD2'.
      IF p_rb_1 = 'X'.
        screen-value_help = 0.
      ELSE.
        screen-value_help = 1.
      ENDIF.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.
*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.

Drucktaste im Report

*--------------------------------------------------------------*
*Datendeklaration
*--------------------------------------------------------------*
TABLES sscrfields.

DATA ls_textfield LIKE smp_dyntxt.
DATA ls_textfield2 LIKE smp_dyntxt.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
PARAMETERS: p_csv AS CHECKBOX.

SELECTION-SCREEN FUNCTION KEY 1.
SELECTION-SCREEN FUNCTION KEY 2.
*--------------------------------------------------------------*
*At Selection-Screen On Value Request For
*--------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
  CASE sy-ucomm.
    WHEN 'FC01'.
      MESSAGE i000(vz) WITH 'Verbuchen Coding...'. " $ $ $ $
    WHEN 'FC02'.
      MESSAGE i000(vz) WITH 'Verbuchungen anzeigen Coding...'. " $ $ $ $
  ENDCASE.
*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.

  ls_textfield-text      = 'Verbuchen'.
  ls_textfield-icon_id   = '@EP@'.
  ls_textfield-icon_text = 'Verbuchen text'.
  ls_textfield-quickinfo = 'Verbuchen quickinfo'.
  sscrfields-functxt_01  = ls_textfield.

  ls_textfield2-text      = 'Verbuchungen anzeigen'.
  ls_textfield2-icon_id   = '@DX@'.
  ls_textfield2-icon_text = 'Verbuchungen anzeigen text'.
  ls_textfield2-quickinfo = 'Verbuchungen anzeigen quickinfo'.
  sscrfields-functxt_02  = ls_textfield2.

Selektions Restriktion

*--------------------------------------------------------------*
*Datendeklaration
*--------------------------------------------------------------*
  TYPE-POOLS sscr.

  DATA:
    t_restrict TYPE sscr_restrict,
    l_ass      TYPE sscr_ass,
    l_opt      TYPE sscr_opt_list.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
select-options: s_lgart for t512w-lgart NO INTERVALS DEFAULT '/101'. "MREGOTZ
*--------------------------------------------------------------*
*Initialisation
*--------------------------------------------------------------*
INITIALIZATION.
" OptionsTable bauen
  CLEAR l_opt.
  l_opt-name       = 'OL_S_LGART'.
  l_opt-options-eq = 'X'.  "nur einzelwerte zulassen
  APPEND l_opt TO t_restrict-opt_list_tab.

" Zuordnung zu den Selektionsfeldern
  CLEAR l_ass.
  MOVE: 'S'         TO l_ass-kind,
        'S_LGART'   TO l_ass-name,
        'I'         TO l_ass-sg_main,
        'OL_S_LGART'  TO l_ass-op_main.
  APPEND l_ass TO t_restrict-ass_tab.

" Restriktionen aktivieren
  CALL FUNCTION 'SELECT_OPTIONS_RESTRICT'
    EXPORTING
      restriction            = t_restrict
    EXCEPTIONS
      too_late               = 1
      repeated               = 2
      selopt_without_options = 3
      selopt_without_signs   = 4
      invalid_sign           = 5
      empty_option_list      = 6
      invalid_kind           = 7
      repeated_kind_a        = 8
      OTHERS                 = 9.
  IF sy-subrc <> 0.
    MESSAGE 'FEHLER BEI DER SELEKTION PARMETER S_LGART' TYPE 'E'.
  ENDIF.
*--------------------------------------------------------------* *Start-of-selection *--------------------------------------------------------------*

Pfad zum speichern bestimmen

*--------------------------------------------------------------*
*Datendeklaration
*--------------------------------------------------------------*
DATA: ld_filename TYPE string,
      ld_path     TYPE string,
      ld_fullpath TYPE string,
      ld_result   TYPE i,
      gd_file     TYPE c.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
PARAMETERS: p_file     TYPE string.
*--------------------------------------------------------------*
*At Selection-Screen On Value Request For
*--------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
*  PERFORM f4_help.
*  FORM f4_help.
* Dialog Bildschirm zum speichern der Daten
  CALL METHOD cl_gui_frontend_services=>file_save_dialog
    EXPORTING
      window_title      = 'Speicherort'
      default_extension = 'TXT'
      default_file_name = 'Filename'
      initial_directory = 'c:\temp\'
    CHANGING
      filename          = ld_filename
      path              = ld_path
      fullpath          = ld_fullpath
      user_action       = ld_result.

  p_file = ld_fullpath.
*ENDFORM
*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.

F1 Hilfe

*--------------------------------------------------------------*
*Datendeklaration
*--------------------------------------------------------------*
DATA: gt_text  TYPE TABLE OF tline,
       gs_text TYPE tline.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
PARAMETERS p_test TYPE c.
*--------------------------------------------------------------*
*At Selection-screen on Help-Request for
*--------------------------------------------------------------*
AT SELECTION-SCREEN ON HELP-REQUEST FOR p_test.

  gs_text-tdformat = 'U1'. "Blauer Text als Titel oder zum Hervorheben
  gs_text-tdline = 'Hier steht dein Titel'.
  APPEND gs_text TO gt_text.
  CLEAR gs_text.
  gs_text-tdline = 'Hier steht dein Hilfstext'.
  APPEND gs_text TO gt_text.
  CLEAR gs_text.

  CALL FUNCTION 'COPO_POPUP_TO_DISPLAY_TEXTLIST'
    EXPORTING
      titel      = 'F1 Hilfe'
    TABLES
      text_table = gt_text.

Eigene F4 Hilfe

*--------------------------------------------------------------*
*Datendeklaration
*--------------------------------------------------------------*
TYPES: BEGIN OF ty_ampel,
       nr TYPE UFDISTYP,
       text TYPE text30,
       note TYPE text30,
       END OF ty_ampel.
DATA: gs_f4  TYPE ty_ampel,
      gt_f4   TYPE TABLE OF ty_ampel.
DATA: gt_return  TYPE TABLE OF ddshretval,
      gs_return TYPE ddshretval.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
PARAMETERS: p_nr TYPE UFDISTYP.
*--------------------------------------------------------------*
*At Selection-screen on Help-Request for
*--------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_nr.

  REFRESH gt_f4.

  gs_f4-nr = 'G'.
  gs_f4-text = 'Grün'.
  gs_f4-note = 'Farbe'.
  APPEND gs_f4 TO gt_f4.

  gs_f4-nr = 'Y'.
  gs_f4-text = 'Gelb'.
  gs_f4-note = 'Farbe'.
  APPEND gs_f4 TO gt_f4.

  gs_f4-nr = 'R'.
  gs_f4-text = 'Rot'.
  gs_f4-note = 'Farbe'.
  APPEND gs_f4 TO gt_f4.

  CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
      retfield        = 'NR'
      value_org       = 'S'
    TABLES
      value_tab       = gt_f4
      return_tab      = gt_return
    EXCEPTIONS
      parameter_error = 1
      no_values_found = 2
      OTHERS          = 3.

  READ TABLE gt_return INTO gs_return INDEX 1.
  IF sy-subrc = 0.
    p_nr = gs_return-fieldval.
  ENDIF.

Icons im Selektions Sreen

*--------------------------------------------------------------*
*Datendeklaration
*--------------------------------------------------------------*
TYPE-POOLS: icon.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
PARAMETERS P_test type c.

SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20)  text1.
SELECTION-SCREEN COMMENT 21(10) icon1.
SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20)  text2.
SELECTION-SCREEN COMMENT 21(10) icon2.
SELECTION-SCREEN END OF LINE.

*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.
  text1 = 'Okey'.
  icon1 = ICON_GREEN_LIGHT. "mit Icon Name
  text2 = 'Error'.
  icon2 = '@0A@'. "mit Icon Nummer

Pfad für den Upload holen

*--------------------------------------------------------------*
*Datendeklaration
*--------------------------------------------------------------*

*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
PARAMETERS: p_file TYPE rlgrap-filename DEFAULT 'C:\xXx\XLSEINSPIELEN.xls'.
*--------------------------------------------------------------*
*At Selection-Screen On Value Request For
*--------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
*  PERFORM selectfile.
*  FORM selectfile.
  DATA :
    lv_subrc LIKE sy-subrc,
     lt_it_tab TYPE filetable.

   " Anzeeigen des File im Open Dialog control/screen
   CALL METHOD cl_gui_frontend_services=>file_open_dialog
     EXPORTING
       window_title     = 'Select Source Excel File'
       default_filename = '*.xls'
       multiselection   = ' '
     CHANGING
       file_table       = lt_it_tab
       rc               = lv_subrc.

   " Schreibe den PFAD in die das Inputfeld
   LOOP AT lt_it_tab INTO p_file.
   ENDLOOP.
*  ENDFORM selectfile.
*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.

Desktop Pfad holen

*--------------------------------------------------------------*
*Datendeklaration
*--------------------------------------------------------------*

*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
PARAMETERS p_path  TYPE string OBLIGATORY LOWER CASE.
*--------------------------------------------------------------*
*At Selection-Screen On Value Request For
*--------------------------------------------------------------*
*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.
*  PERFORM get_download_path.
*FORM get_download_path.
"Lokale Datendeklaration
  DATA lf_upload_path    TYPE string.
  DATA lf_download_path  TYPE string.

"Desktop Pfad holen
  CALL METHOD cl_gui_frontend_services=>get_upload_download_path
    CHANGING
      upload_path   = lf_upload_path
      download_path = lf_download_path.

"Setze den Pfad im Selektionsbildschirm
  p_path = lf_download_path.
*ENDFORM.

Drag & Drop für ein TXT

*--------------------------------------------------------------*
*Datendeklaration
*--------------------------------------------------------------*
DATA: ld_filename TYPE string,
      ld_path     TYPE string,
      ld_fullpath TYPE string,
      ld_result   TYPE i,
      gd_file     TYPE c.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
PARAMETERS: p_file     TYPE string.
*--------------------------------------------------------------*
*At Selection-Screen On Value Request For
*--------------------------------------------------------------
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
*  PERFORM f4_help.
*  FORM f4_help.
* Dialog Bildschirm zum speichern der Daten
  CALL METHOD cl_gui_frontend_services=>file_save_dialog
    EXPORTING
*     window_title      = ' '
      default_extension = 'TXT'
      default_file_name = 'D1_Sätze'
      initial_directory = 'c:\temp\'
    CHANGING
      filename          = ld_filename
      path              = ld_path
      fullpath          = ld_fullpath
      user_action       = ld_result.
  p_file            = ld_fullpath.

  p_file = ld_path.
*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.
 PERFORM drag_and_drop.
*----------------------------------------------------------------------*
*       CLASS lcl_event_receiver DEFINITION
*----------------------------------------------------------------------*
CLASS lcl_event_receiver DEFINITION.
  PUBLIC SECTION.
    CLASS-METHODS:
      handle_navigate_complete
      FOR EVENT navigate_complete
                    OF cl_gui_html_viewer
        IMPORTING url sender.
ENDCLASS.                    "lcl_event_receiver DEFINITION
*----------------------------------------------------------------------*
*       CLASS lcl_event_receiver IMPLEMENTATION
*----------------------------------------------------------------------*
CLASS lcl_event_receiver IMPLEMENTATION.
  METHOD handle_navigate_complete.
    p_file = url.
  ENDMETHOD.                    "handle_sapevent
ENDCLASS.                    "lcl_event_receiver IMPLEMENTATION
*---------------------------------------------------------------------*
*      Form  DRAG AND DROP.
*---------------------------------------------------------------------*
FORM drag_and_drop.
"lokale Datendeklaration
  DATA cl_docker         TYPE REF TO cl_gui_docking_container.
  DATA t_events        TYPE cntl_simple_events.
  DATA wa_event        LIKE LINE OF t_events.
  DATA event_receiver  TYPE REF TO lcl_event_receiver.
  DATA t_html          TYPE STANDARD TABLE OF text8192
                       WITH NON-UNIQUE DEFAULT KEY.
  DATA html            LIKE LINE OF t_html.
  DATA url             TYPE text1000.
  DATA cl_html         TYPE REF TO cl_gui_html_viewer.

"Erstelle den Container für das HTML
  CREATE OBJECT cl_docker
    EXPORTING
      extension               = 400
      side                    = cl_gui_docking_container=>dock_at_bottom
      no_autodef_progid_dynnr = 'X'.

"Erstelle HTML
  CREATE OBJECT cl_html
    EXPORTING
      parent = cl_docker.

"Registeren von NAVIGATE_COMPLETE
  CALL METHOD cl_html->get_registered_events
    IMPORTING
      events = t_events.
  wa_event-eventid    = cl_gui_html_viewer=>m_id_navigate_complete.
  wa_event-appl_event = 'X'.
  READ TABLE t_events TRANSPORTING NO FIELDS
        WITH KEY eventid = wa_event-eventid.
  IF sy-subrc <> 0.
    APPEND wa_event TO t_events.
  ENDIF.
  CALL METHOD cl_html->set_registered_events
    EXPORTING
      events = t_events.
  SET HANDLER lcl_event_receiver=>handle_navigate_complete FOR cl_html.

  "Erstelle den HTML Code
  CONCATENATE  ''
               ''
               ''
          INTO html.
  APPEND html TO t_html.

  "Lade den HTML Code
  CALL METHOD cl_html->load_data
    IMPORTING
      assigned_url = url
    CHANGING
      data_table   = t_html.

  "Anzeigen des HTML Codes
  CALL METHOD cl_html->show_url
    EXPORTING
      url = url.
ENDFORM.                    " DRAG AND DROP.

        search this website

Regotz Michel