Auf ECATT Datencontainer zugreifen

In dem letzten Artikel – ECATT Datencontainer nutzen – habe ich dir gezeigt, was ein Testdatencontainer ist. Den Artikel brauchte ich als Vorbereitung für diesen, viel interessanteren Artikel: Der Zugriff auf die Daten des Testdatencontainers.

Ein Testdatencontainer kann wunderbar für eigene Zwecke „missbraucht“ werden um mehrere verschiedenartige Daten an einer Stelle zu verwalten.

Zugriff!

Der Zugriff auf den Datencontainer des ECATT ist durch die zur Verfügung gestellte API sehr simpel:

"Objekte für Zugriff auf Testdatencontainer
DATA tdc_ref TYPE REF TO cl_apl_ecatt_tdc_api.
DATA par_ref TYPE REF TO etpar_gui.

"Datenstrukturen
DATA ls_mara TYPE mara.
DATA demo    TYPE zecatt_heads.

"Objekt für Testdatencontainer erzeugen
tdc_ref = cl_apl_ecatt_tdc_api=>get_instance( 'Z1' ).

"Datenselektion MARA-MATNR für Default-Variante
tdc_ref->get_value( EXPORTING i_param_name   = 'MARA'
                              i_path         = 'MATNR'
                              i_variant_name = 'ECATTDEFAULT'
                    CHANGING  e_param_value  = ls_mara-matnr ).

"Datenselektion gesamte Struktur MARA für Variante A1
tdc_ref->get_value( EXPORTING i_param_name   = 'MARA'
                              i_variant_name = 'A1'
                    CHANGING  e_param_value  = ls_mara ).

"Datenermittlung des komplexen DEMO-Objektes aus der Default-Variante
tdc_ref->get_value( EXPORTING i_param_name   = 'DEMO'
                              i_variant_name = 'ECATTDEFAULT'
                    CHANGING  e_param_value  = demo ).

Über die Klasse CL_APL_ECATT_TDC_API kann der gesamte Datencontainer per Programm verwaltet werden. Es können eigene Container erstellt werden, Attribute ausgelesen und geändert werden und die Daten können ebenfalls gelesen und manipuliert werden.

Im Gegensatz zu meinem Tipp, komplexe Daten in einer INDEX-Tabelle per XML zu speichern, haben die Testdatencontainer den großen Vorteil, dass die Daten strukturiert angezeigt und manipuliert werden können.

image_pdfimage_print