TYPES: BEGIN OF ty_task_types,
get_bseg TYPE char1,
get_ekpo TYPE char1,
get_lips TYPE char1,
get_vbrp TYPE char1,
END OF ty_task_types.
DATA: gs_get_types TYPE ty_task_types,
gt_bseg TYPE bseg_t,
gt_ekpo TYPE ekpo_tty,
gt_lips TYPE tab_lips,
gt_vbrp TYPE tab_vbrp.
CLEAR gs_get_types WITH 'X'.
PERFORM get_data.
*&---------------------------------------------------------------------*
*& Form get_data
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM get_data.
DATA: lv_error(80) VALUE space,
ls_count TYPE string,
lv_type TYPE fm_taskname,
lt_type TYPE TABLE OF fm_taskname.
APPEND gc_get_bseg TO lt_type.
APPEND gc_get_ekpo TO lt_type.
APPEND gc_get_lips TO lt_type.
APPEND gc_get_vbrp TO lt_type.
FREE: gt_bseg, gt_ekpo, gt_lips, gt_vbrp.
CALL FUNCTION 'SPBT_INITIALIZE'.
LOOP AT lt_type INTO lv_type.
CALL FUNCTION 'ZVGA_GET_DATA'
DESTINATION gc_rfcdest
STARTING NEW TASK lv_type
PERFORMING return_data ON END OF TASK
EXPORTING
iv_taskname = lv_type
EXCEPTIONS
communication_failure = 1 MESSAGE lv_error
system_failure = 2 MESSAGE lv_error
resource_failure = 3
OTHERS = 4.
IF sy-subrc IS NOT INITIAL.
IF lv_error IS INITIAL.
lv_error = 'Getting data error!'.
ENDIF.
EXIT.
ENDIF.
ENDLOOP.
DO 60 TIMES.
WAIT UNTIL gs_get_types IS INITIAL UP TO 300 SECONDS.
IF gs_get_types IS NOT INITIAL.
CALL FUNCTION 'TH_REDISPATCH'.
ELSE.
EXIT.
ENDIF.
ENDDO.
IF lv_error IS NOT INITIAL OR gs_get_types IS NOT INITIAL.
MESSAGE e000(su) WITH lv_error.
ENDIF.
*&---------------------------------------------------------------------*
*& Form return_data
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->TASKNAME text
*----------------------------------------------------------------------*
FORM return_data USING taskname TYPE clike.
DATA: lv_error(80) VALUE space,
lt_bseg LIKE gt_bseg,
lt_ekpo LIKE gt_ekpo,
lt_lips LIKE gt_lips,
lt_vbrp LIKE gt_vbrp.
RECEIVE RESULTS FROM FUNCTION 'ZVGA_GET_DATA'
IMPORTING
et_bseg = lt_bseg
et_ekpo = lt_ekpo
et_lips = lt_lips
et_vbrp = lt_vbrp
EXCEPTIONS
communication_failure = 1 MESSAGE lv_error
system_failure = 2 MESSAGE lv_error
resource_failure = 3
OTHERS = 4.
IF sy-subrc IS INITIAL.
CASE taskname.
WHEN gc_get_bseg.
gt_bseg = lt_bseg.
CLEAR gs_get_types-get_bseg.
WHEN gc_get_ekpo.
gt_ekpo = lt_ekpo.
CLEAR gs_get_types-get_ekpo.
WHEN gc_get_lips.
gt_lips = lt_lips.
CLEAR gs_get_types-get_lips.
WHEN gc_get_vbrp.
gt_vbrp = lt_vbrp.
CLEAR gs_get_types-get_vbrp.
ENDCASE.
ELSE.
MESSAGE s000(su) WITH taskname ' -> subrc = ' sy-subrc lv_error.
ENDIF.
ENDFORM. "return_data
*&---------------------------------------------------------------------*
*& Include ZVGA_PARALLEL_TOP
*&---------------------------------------------------------------------*
CONSTANTS: gc_rfcdest TYPE rfcdest VALUE 'NONE',
gc_get_bseg TYPE fm_taskname VALUE 'GET_BSEG',
gc_get_ekpo TYPE fm_taskname VALUE 'GET_EKPO',
gc_get_lips TYPE fm_taskname VALUE 'GET_LIPS',
gc_get_vbrp TYPE fm_taskname VALUE 'GET_VBRP'.
* Remote-enable function module
FUNCTION zvga_get_data.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" VALUE(IV_TASKNAME) TYPE FM_TASKNAME DEFAULT 'NEW_TASK'
*" EXPORTING
*" VALUE(ET_BSEG) TYPE BSEG_T
*" VALUE(ET_EKPO) TYPE EKPO_TTY
*" VALUE(ET_LIPS) TYPE TAB_LIPS
*" VALUE(ET_VBRP) TYPE TAB_VBRP
*" EXCEPTIONS
*" COMMUNICATION_FAILURE
*" SYSTEM_FAILURE
*" RESOURCE_FAILURE
*"----------------------------------------------------------------------
CASE iv_taskname.
WHEN gc_get_bseg.
SELECT * FROM bseg INTO TABLE et_bseg UP TO 1000 ROWS.
WHEN gc_get_ekpo.
SELECT * FROM ekpo INTO TABLE et_ekpo UP TO 1000 ROWS.
WHEN gc_get_lips.
SELECT * FROM lips INTO TABLE et_lips UP TO 1000 ROWS.
WHEN gc_get_vbrp.
SELECT * FROM vbrp INTO TABLE et_vbrp UP TO 1000 ROWS.
ENDCASE.
ENDFUNCTION.
* INCLUDE LZERU_VGATOP
FUNCTION-POOL zeru_vga. "MESSAGE-ID ..
INCLUDE zvga_parallel_top.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG. SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG. Every effort is made to ensure content integrity. Use information on this site at your own risk.