Code: Alles auswählen.
DATA: container TYPE REF TO cl_gui_custom_container,
editor1 TYPE REF TO cl_gui_textedit,
editor2 TYPE REF TO cl_gui_textedit,
editor3 TYPE REF TO cl_gui_textedit.
CREATE OBJECT: container EXPORTING container_name = 'DYNPRO_CONTAINER',
editor1 EXPORTING parent = container.
CREATE OBJECT: container EXPORTING
container_name = 'DYNPRO_CONTAINER_2',
editor2 EXPORTING parent = container.
CREATE OBJECT: container EXPORTING
container_name = 'DYNPRO_CONTAINER_3',
editor3 EXPORTING parent = container.
Code: Alles auswählen.
FORM pruefe_textedit USING name_editor TYPE REF TO cl_gui_textedit CHANGING is_modified TYPE i.
CALL METHOD name_editor->get_textmodified_status
IMPORTING
status = is_modified
EXCEPTIONS
OTHERS = 1.
IF sy-subrc <> 0.
RAISE error_cntl_call_method.
ENDIF.
ENDFORM. " pruefe_textedit
Code: Alles auswählen.
PERFORM PRUEFE_TEXTEDIT
USING
EDITOR1
CHANGING
IS_MODIFIED.
IF is_modified EQ 1.
tmp = 'X'.
ENDIF.
Code: Alles auswählen.
DATA: tmp TYPE c VALUE ' '.
DATA: textobjekt(6) type c VALUE 'EDITOR'.
DATA: tmpobjekt(8) TYPE c.
DATA: zaehler TYPE c.
DO 3 TIMES. "derzeit 3 Textfelder
ADD 1 TO zaehler.
CONCATENATE textobjekt zaehler INTO tmpobjekt.
PERFORM PRUEFE_TEXTEDIT
USING
tmpobjekt
CHANGING
IS_MODIFIED.
IF is_modified EQ 1.
tmp = 'X'.
ENDIF.
ENDDO.
Code: Alles auswählen.
FORM pruefe_textedit USING name_editor
CHANGING is_modified TYPE i.
DATA: name_editor_class TYPE REF TO cl_gui_textedit.
MOVE name_editor TO name_editor_class.
* field-symbols: <text> type ref to cl_gui_textedit,
* <editor> type any.
* assign name_editor to <editor>.
* assign <editor> to <text>.
* CALL METHOD <text>->get_textmodified_status
CALL METHOD name_editor_class->get_textmodified_status
IMPORTING
status = is_modified
EXCEPTIONS
OTHERS = 1.
IF sy-subrc <> 0.
RAISE error_cntl_call_method.
ENDIF.
ENDFORM. " pruefe_textedit
Das hab ich befürchtet, einen FuBa z.B. GET_OBJECT_FROM_OBJECTNAME konnte ich leider auch nicht finden.Flo hat geschrieben: //Edit
Mir ist keine Möglichkeit bekannt über den Namen des Objektes das Objekt aus dem Speicher auszulesen. Du brauchst soweit ich weis immer eine Referenz auf das Objekt um damit arbeiten zu können.
Code: Alles auswählen.
field-symbols: <editor> TYPE REF TO cl_gui_textedit.
DO 3 TIMES. "derzeit 3 Textfelder
ADD 1 TO zaehler.
CONCATENATE textobjekt zaehler INTO tmpobjekt.
assign (tmpobjekt) to <editor> .
PERFORM pruefe_textedit
USING
<editor>.