Code: Alles auswählen.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_auftr.
TYPES: BEGIN OF ty_cls_ref,
auftrag TYPE ztmsnotiz-auftrag, " Datenelement: TRKORR Datentyp: CHAR Länge: 20
freitext TYPE ztmsnotiz-freitext, " Datenelement: TEXT1024 Datentyp: CHAR Länge: 1024
END OF ty_cls_ref.
DATA: it_cls_ref TYPE TABLE OF ty_cls_ref,
ls_cls_ref TYPE ty_cls_ref.
DATA: it_return TYPE TABLE OF ddshretval.
DATA: oref TYPE REF TO cx_root,
text TYPE string.
CLEAR it_cls_ref.
TRY.
SELECT auftrag freitext FROM ztmsnotiz
INTO CORRESPONDING FIELDS OF TABLE it_cls_ref. "UP TO 100 ROWS.
* LOOP at it_cls_ref INTO ls_cls_ref.
* ls_cls_ref-freitext = ls_cls_ref-freitext(5).
* ENDLOOP.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'AUFTRAG'
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'P_AUFTR'
value_org = 'S'
window_title = text-003
TABLES
value_tab = it_cls_ref
return_tab = it_return
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
CATCH cx_root INTO oref.
text = oref->get_text( ).
MESSAGE text TYPE 'I' DISPLAY LIKE 'S'.
ENDTRY.
Hm, das hat auch nichts gebracht. Habe das Feld "FREITEXT" in der DB-Tabelle geändert auf:a-dead-trousers hat geschrieben:Hast du schon mal probiert, das Freitextfeld selbst zu kürzen. Also statt TEXT1024 nur TEXT100 oder ähnliches?
Ich glaube, dass die Hilfe intern nur mit maximal 2000 Byte (= 1000 Zeichen) zurecht kommt.
Folgende Benutzer bedankten sich beim Autor Hotzenplotz für den Beitrag:
DeathAndPain