..3 Printing program

Here is the nugget to install objects via SAPLINK .

Create a report Z_HIDECOLUMNS and paste below code into it:


REPORT  z_hidecolumns .

* selection-screen parameters
PARAMETERS:
  show_d  TYPE flag DEFAULT 'X' ,
  show_e  TYPE flag DEFAULT 'X' ,
  show_f  TYPE flag DEFAULT 'X' .

* declare the context
DATA gs_context  TYPE zcontext_hidecolumns .

* fill the context
PERFORM fill_context .

* call the form
CALL FUNCTION 'ZXLWB_CALLFORM'
  EXPORTING
    iv_formname        = 'HIDECOLUMNS'
    iv_context_ref     = gs_context
  EXCEPTIONS
    process_terminated = 1
    OTHERS             = 2.
IF sy-subrc NE 0 .
  MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
          WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 .
ENDIF .


*&---------------------------------------------------------------------*
*&      Form  fill_context
*&---------------------------------------------------------------------*

FORM fill_context .

  DATA:
    ls_line           TYPE zcontext_hidecolumns_line ,
    lv_index_char     TYPE char10 .

* table header
  gs_context-header_show_d = show_d .
  gs_context-header_show_e = show_e .
  gs_context-header_show_f = show_f .

* table positions
  DO 10 TIMES .
    lv_index_char = sy-index . CONDENSE lv_index_char NO-GAPS .

    CLEAR ls_line .
    CONCATENATE 'A' lv_index_char INTO ls_line-a SEPARATED BY space .
    CONCATENATE 'B' lv_index_char INTO ls_line-b SEPARATED BY space .
    CONCATENATE 'C' lv_index_char INTO ls_line-c SEPARATED BY space .
    CONCATENATE 'D' lv_index_char INTO ls_line-d SEPARATED BY space .
    CONCATENATE 'E' lv_index_char INTO ls_line-e SEPARATED BY space .
    CONCATENATE 'F' lv_index_char INTO ls_line-f SEPARATED BY space .
    ls_line-show_d = show_d .
    ls_line-show_e = show_e .
    ls_line-show_f = show_f .
    APPEND ls_line TO gs_context-table .
  ENDDO .

ENDFORM .                    "fill_context


 

Result of the printing program execution: