Beispiel Lesen Klassenmerkmale über Tabellen

Aus SAP-Wiki
Wechseln zu: Navigation, Suche

Importparameter der Methode sind hier IV_MATNR und IV_LANGU. Zurückgegeben wird eine Struktur mit dem Labelnamen des Merkmals und dessen Ausprägung.

method FILL_PRUEFAUFTRAG_KLMERKMALE. "Projekt Sch

 DATA: lv_atinn TYPE atinn,
       lv_atwrt TYPE atwrt.

 Constants: lc_ja   type char20 value 'Ja',
            lc_nein type char20 value 'Nein',
            lc_nd   type char20 value 'nicht definiert'.

******************
* Produktbereich *
******************
 clear: lv_atinn, lv_atwrt.

*Lesen interner Merkmalswert für externen Merkmalswert
 SELECT SINGLE
   atinn
   INTO lv_atinn
   FROM cabn
   WHERE atnam = 'TC_1145'.

*Lese Ausprägung Merkmalswert
 SELECT SINGLE
   atwrt
   INTO lv_atwrt
   FROM ausp
   WHERE objek = iv_matnr
     AND atinn = lv_atinn.

*Umschlüsselung auf Ausgabe im Formular
 CASE lv_atwrt.
   WHEN 'J'.
     es_pruefauftrag_klmerkmale-produktbereich = lc_ja.
   WHEN 'N'.
     es_pruefauftrag_klmerkmale-produktbereich = lc_nein.
   WHEN OTHERS.
     es_pruefauftrag_klmerkmale-produktbereich = lc_nd.
 ENDCASE.

*Sprachabhängige Bezeichnung
 SELECT SINGLE
   atbez  "z. B. 'Produktbereich'
   INTO es_pruefauftrag_klmerkmale-produktbereich_lbl
   FROM cabnt
   WHERE atinn = lv_atinn
    AND spras  = iv_langu.
 
endmethod.