..3 Программа печати

Создайте отчет Z_CHART_COMP и скопируйте в него этот код:


REPORT  z_chart_comp .

* declare the context
DATA gt_context  TYPE zcontext_chart_comp .

* fill the context
PERFORM fill_context .

* call the form
CALL FUNCTION 'ZXLWB_CALLFORM'
  EXPORTING
    iv_formname        = 'CHART_COMP'
    iv_context_ref     = gt_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_comp           TYPE zcontext_chart_comp_s ,
    ls_dataset        TYPE zcontext_chart_dataset_s ,
    lv_random_number  TYPE i .

  SELECT butxt
    INTO ls_comp-company
    FROM t001
      UP TO 10 ROWS .

    CLEAR ls_comp-dataset[] .

    DO 4 TIMES .
      CLEAR ls_dataset .
      CLEAR lv_random_number .

      ls_dataset-quarter = sy-index .

*     get random Sales
      CALL FUNCTION 'BKK_RANDOM'
        EXPORTING
          i_modulo        = 10000
        IMPORTING
          e_random_number = lv_random_number .
      ls_dataset-sales = lv_random_number + 50000 .

*     get random Advertizing
      CALL FUNCTION 'BKK_RANDOM'
        EXPORTING
          i_modulo        = 5000
        IMPORTING
          e_random_number = lv_random_number .
      ls_dataset-advertizing = lv_random_number + 10000 .

      APPEND ls_dataset TO ls_comp-dataset .
    ENDDO .

    INSERT ls_comp INTO TABLE gt_context .
  ENDSELECT .

ENDFORM .                    "fill_context


 

Результат работы программы:


SAP Chart MS Excel