Code: Alles auswählen.
method GET_AUFRAEGE.
* vollständige Object Map
data: lo_object_map type ref to cl_object_map.
* Business Object Referenz
data: lo_auftrag type ref to 15_bo_auftrag.
* Interne Tabelle vom Typ VBUP
data: lt_auftraege type table of 15_st_auftrag.
* Field Symbol für einen Datensatz
field-SYMBOLS: <auftrag> type 15_st_auftrag.
* Erzeugen der Object Map
create object LO_OBJECT_MAP.
* Datenbankselektion
select VBELN LFSTA
from VBUP
into table LT_AUFTRAEGE
where LFSTA eq LIEFERSTATUS.
* Befüllen der Object-Map im Loop
loop at lt_auftraege assigning <auftrag>.
WRITE: / <auftrag>-VBELN, <auftrag>-LFSTA.
* Erzeuge eine Instanz des Business Object und befülle diese
create object lo_auftrag.
if lo_auftrag is bound.
* Befülle Object mit Daten
lo_auftrag->SET_AUFTRAG( AUFTRAG = <auftrag> ).
* Füge das Object an die Object Map
lo_object_map->PUT( key = <auftrag>-LFSTA
value = lo_auftrag ).
endif.
clear lo_auftrag.
endloop.
return ?= LO_OBJECT_MAP.
endmethod.
Code: Alles auswählen.
data: lo_om_auftraege type ref to cl_object_map. " Object Maps
* Holen aller offenen Aufträge
LO_OM_AUFTRAEGE = LO_AUFTRAG->GET_AUFRAEGE( LIEFERSTATUS = 'a').