Hallo,
wenn's via ABAP gelöst werden soll, verweise ich mal auf folgende FuBas, jeweils mit Code-Schnipseln (hat nix mit meinem Usernamen hier zu tun ;-) ):
* Liste der Kalkulationen von BAPI holen
CALL FUNCTION 'BAPI_COSTESTIMATE_GETLIST'
EXPORTING
cost_estimate = '01'
maxrows = 999999999
IMPORTING
return = b_return
TABLES
costing_variant = sklvar_a
material = ra_mara_a
plant = ra_werk_a
validity_from = sabdat_a
costing_status = sstat_a
costing_version = b_versi
cost_estimate_list = b_header.
* Wenn in der Selektion ein genaues Datum gefragt ist. Alle bis auf die Gültige löschen
IF p_date IS NOT INITIAL.
LOOP AT b_header ASSIGNING WHERE ( valid_from > p_date OR valid_to < p_date ).
* IF p_date < -valid_from or p_date > -valid_to .
DELETE TABLE b_header FROM .
* ENDIF.
ENDLOOP.
DANACH:
(a) wenn Schichtung gewünscht ist:
* Schichtung für jede Kalkulation ermitteln
LOOP AT b_header ASSIGNING FIELD-SYMBOL(
).
CALL FUNCTION 'BAPI_COSTESTIMATE_GETDETAIL'
EXPORTING
referenceobject = -ref_object
costingnumber = -cstg_num
costingtype = -cstg_type
costingdate = -cstg_date
costingversion = -version
valuationvariant = -vltn_vrnt
enteredmanually = -enter_man
cost_component_view = '01'
IMPORTING
cost_estimate_header = wa_ceheader
return = b_return
TABLES
cost_components = b_result.
*****...und dann die Daten aufbereiten, für ALV-Output bzw. Download ******
ENDLOOP.
(b) wenn Itemization gewünscht ist:
* Einzelnachweis für jede Kalkulation ermitteln
LOOP AT b_header ASSIGNING FIELD-SYMBOL().
PERFORM progress_indicator USING sy-tabix.
CLEAR: wa_item_header, lt_item_result.
CALL FUNCTION 'BAPI_COSTESTIMATE_ITEMIZATION'
EXPORTING
referenceobject = -ref_object
costingnumber = -cstg_num
costingtype = -cstg_type
costingdate = -cstg_date
costingversion = -version
valuationvariant =