SAP Jobsuche bei DV-Treff
Bernd_Re
  • Bernd_Re
  • SAP Forum - User Thema Starter
vor 6 Jahre
Hallo zusammen,

für ein QUERY versuch ich den Material-Grundtext neben dem Kurztext darzustellen.

Ich gebe dafür u.s. Coding im Infoset ein, bekomme aber immer das Ergebnis des vorherigen Satzes ausgegeben, wenn kein Grundtext angelegt ist. Wie kann ich das Feld leer übergeben?

CLEAR zname.

zname = mara-matnr.

CALL FUNCTION 'READ_TEXT'

EXPORTING

* CLIENT = SY-MANDT

id = 'GRUN'

language = 'E'

NAME = zname

OBJECT = 'MATERIAL'

* ARCHIVE_HANDLE = 0

* LOCAL_CAT = ' '

* IMPORTING

* HEADER =

* OLD_LINE_COUNTER =

TABLES

lines = ITAB

EXCEPTIONS

* ID = 1

* LANGUAGE = 2

* NAME = 3

NOT_FOUND = 4

* OBJECT = 5

* REFERENCE_CHECK = 6

* WRONG_ACCESS_TO_ARCHIVE = 7

OTHERS = 8

.

IF sy-subrc = 0.

CLEAR zname.

ENDIF.

Für jegliche Vorschläge bin ich dankbar.

Gutes neues Jahr!

Bernd

wreichelt
vor 6 Jahre
Hallo Bernd,

vor dem READ_TEXT ein Clear: ITAB und REFRESH: ITAB.

Gruß Wolfgang

Bernd_Re
  • Bernd_Re
  • SAP Forum - User Thema Starter
vor 6 Jahre
Hallo Wolfgang,

danke für deine Unterstützung, aber leider bekomme ich das gleiche Ergebnis. Mit dem Refresh hatte ich schon an allen möglichen Stellen experimentiert, aber nur am Ende hat es eine Auswirkung, dann ist das Feld natürlich leer, egal ob Text vorhanden oder nicht.

Viele Grüße!

Bernd

wreichelt
vor 6 Jahre
Hallo Bernd,

vor dem Read_text würde ich auf jeden Fall einen REFRESH: Itab machen.

Dann nimm bitte mal unter Exceptions alle Sterne raus.

Evtl. zeigt sy-subrc dann auch andere Returncodes an die dich weiterbringen.

Gruß Wolfgang

Bernd_Re
  • Bernd_Re
  • SAP Forum - User Thema Starter
vor 6 Jahre
Hallo Wolfgang,

erst mal ein gutes Neues Jahr!

Die Return Codes haben mich nicht weiter gebracht, ich rätsle noch immer.

Bin für jede Idee offen.

Viele Grüße

Bernd

wreichelt
vor 6 Jahre
Hallo Bernd,

ein gutes Neues Jahr.

Hier ein Beispiel für einen Vertriebstext: Ist deine Materialnummer auch 18-stellig ?

clear llines.

refresh llines.

CONCATENATE mara-matnr '120011' INTO l_tdname.

* l_tdname = mara-matnr.

CALL FUNCTION 'READ_TEXT'

EXPORTING

id = '0001'

language = p_spras

name = l_tdname

object = 'MVKE'

TABLES

lines = llines

EXCEPTIONS

ID = 1

LANGUAGE = 2

NAME = 3

NOT_FOUND = 4

OBJECT = 5

REFERENCE_CHECK = 6

WRONG_ACCESS_TO_ARCHIVE = 7

OTHERS = 8.

if sy-subrc = 0.

if llines[] is not initial.

LOOP AT llines.

* .....

ENDLOOP.

ENDIF.

Das Beispiel funktioniert so wie oben beschrieben.

Viel Erfolg

Gruß Wolfgang