Code: Alles auswählen.
REPORT ZTEST5.
DATA: Z_LINES2 TYPE STANDARD TABLE OF MATNR,
WA_ERGEBNIS TYPE MATNR.
FIELD-SYMBOLS <WA> TYPE MATNR.
LOOP AT Z_LINES2 ASSIGNING <WA> WHERE TABLE_LINE(2) = 'WA'.
WA_ERGEBNIS = <WA>.
EXIT. " Dich interessiert ja offenbar nur die erste passende Fundstelle; ansonsten machst Du hier was anderes
ENDLOOP.
Das wird nicht hinhauen, da READ TABLE auf exakte Gleichheit prüft, nicht darauf, womit ein Feld beginnt. Letzteres geht nur mit einem LOOP WHERE.wreichelt hat geschrieben:Hallo,
READ TABLE itab INTO wa WITH KEY feld = 'WA*'.
Gruß Wolfgang
Code: Alles auswählen.
DATA: begin of z_stxh occurs 0.
include type stxh.
DATA: end of z_stxh.
DATA: Z_TEXT like stxh-tdname.
DATA: z_lines type TABLE OF TLINE WITH HEADER LINE.
clear: z_text, z_stxh, z_lines, ztextpp.
concatenate '100' afko-aufnr into z_text.
select single * FROM STXH into z_stxh
where TDOBJECT = 'AUFK' and
TDID = 'KOPF' and
* TDSPRAS = 'DE' and
TDNAME = z_text.
if sy-subrc = 0.
" Text gefunden, dann erste Zeile einlesen
CALL FUNCTION 'READ_TEXT'
EXPORTING
ID = z_stxh-tdid
LANGUAGE = z_stxh-tdspras
NAME = z_stxh-tdname
OBJECT = z_stxh-tdobject
TABLES
LINES = z_lines
EXCEPTIONS
id = 1
language = 1
name = 3
not_found = 4
object = 5
reference_check = 6
wrong_access_to_archive = 7.
if sy-subrc = 0.
read table z_lines into ZTEXTPP index 1.
" erste Zeile -> z_lines-tdline.
endif.
endif.
Code: Alles auswählen.
if sy-subrc = 0.
read table z_lines into wa WITH KEY = 'WA'.
ZTEXTPP = wa.
endif.
Natürlich, weil du das (2) vergessen hast. Der READ findet nur Zeilen, die ausschließlich "WA" enthalten.phil-10 hat geschrieben:Ganz unten habe ich den Code eingebaut aber mein Feld ZTEXTPP bleibt leider leer.
Code: Alles auswählen.
if sy-subrc = 0. read table z_lines into wa WITH KEY = 'WA'. ZTEXTPP = wa. endif.
Code: Alles auswählen.
if sy-subrc = 0.
read table z_lines2 into WA WITH KEY table_line(2) = 'WA'.
ZTEXTPP2 = WA.
endif.
In "feld" schreibst du die Spalte mit der der Vergleich stattfinden soll.phil-10 hat geschrieben:Was muss ich für feld(2) denn einsetzen? Es kommt immer die Meldung "Es existiert keine Komponente mit dem Namen...".
Code: Alles auswählen.
IF sy-subrc = 0.
READ TABLE z_lines INTO wa WITH KEY tdline(2) = 'WA'.
ZTEXTPP = wa.
ENDIF.