ABAP 销售范围
*&---------------------------------------------------------------------*
*& Report ZSDR008
*&
*&---------------------------------------------------------------------*
REPORT zsdr008.
TABLES: tvbvk ,cskt ,ztsd007.
*自建表ztsd007:销售办公室-销售组-成本中心
TYPES:ty_xs LIKE v_tvbur.
DATA:gt_xs LIKE TABLE OF v_tvbur.
DATA:wa_xs TYPE v_tvbur.
DATA:edit(1) VALUE ''."ALV是否处于可编辑状态
FIELD-SYMBOLS: <f1>, <f2>, <f3>.
TYPES:BEGIN OF ty_zz,
vkbur TYPE tvkbt-vkbur,
vkburtext TYPE tvkbt-bezei,
vkgrp TYPE tvkgr-vkgrp,
vkgrptext TYPE tvgrt-bezei,
kostl TYPE csks-kostl,
ltext TYPE cskt-ltext.
TYPES:END OF ty_zz.
DATA :gt_zz TYPE STANDARD TABLE OF ztsd007 .
DATA:wa_zz TYPE ztsd007.
DATA: excel TYPE ole2_object,
workbook TYPE ole2_object,
sheet TYPE ole2_object,
cell TYPE ole2_object,
row TYPE ole2_object.
FORM get_data.
* CALL FUNCTION 'VIEW_GET_DATA'
* EXPORTING
* view_name = 'V_TVBUR'
* TABLES
* data = gt_xs.
SELECT *
FROM ztsd007
INTO CORRESPONDING FIELDS OF TABLE gt_zz.
LOOP AT gt_xs INTO wa_xs.
wa_zz-vkbur = wa_xs-vkbur.
wa_zz-vkburtext = wa_xs-bezei.
APPEND wa_zz TO gt_zz.
ENDLOOP.
* SELECT *
* FROM cskt
* INTO CORRESPONDING FIELDS OF TABLE gt_zz.
ENDFORM.
DATA: gs_fcat TYPE lvc_s_fcat,
gt_fcat TYPE lvc_t_fcat,
gs_layo TYPE lvc_s_layo,
gs_grid TYPE lvc_s_glay.
DATA: gt_event TYPE slis_t_event WITH HEADER LINE,
gt_event_exit TYPE slis_t_event_exit WITH HEADER LINE.
DATA: ref_grid TYPE REF TO cl_gui_alv_grid .
"parameters: p_ds type c as checkbox.
SELECTION-SCREEN BEGIN OF BLOCK blk2 WITH FRAME TITLE text-002.
PARAMETERS: r1 RADIOBUTTON GROUP gr1 DEFAULT 'X' USER-COMMAND radio.
PARAMETERS: r2 RADIOBUTTON GROUP gr1.
SELECTION-SCREEN END OF BLOCK blk2.
DATA: filepath LIKE rlgrap-filename .
DATA: file LIKE rlgrap-filename.
START-OF-SELECTION.
IF r1 EQ 'X'.
PERFORM get_data.
PERFORM show_data_to_alv.
ELSEIF r2 EQ 'X'.
PERFORM frm_path_selected CHANGING filepath.
CONCATENATE filepath '\销售范围维护模板.XLS' INTO file.
PERFORM frm_download_template USING file.
ENDIF.
*START-OF-SELECTION.
* PERFORM get_data.
* PERFORM show_data_to_alv.
CLASS lcl_event_receiver DEFINITION.
PUBLIC SECTION.
METHODS handle_modify
FOR EVENT data_changed_finished OF cl_gui_alv_grid
IMPORTING e_modified et_good_cells.
METHODS data_changed