Dynamische TableControls

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
8 Beiträge • Seite 1 von 1
8 Beiträge Seite 1 von 1

Dynamische TableControls

Beitrag von Margolwes (ForumUser / 83 / 2 / 0 ) »
Hallo,

ich möchte ein Programm schreiben, das aus einer externen Datenbank Tabellen einliest und zur Bearbeitung darstellt. Im Selektionsbildschirm soll die Tabelle gewählt werden, die dann in einem TableControl angezeigt wird und bearbeitet werden kann. Die Tabellen haben unterschiedliche Strukturen.

Muß ich jetzt für jede der Tabellen ein eigenes Dynpro mit einem jeweils spezifischen TableControl schreiben, oder kann ich auch irgendwie ein TC nehmen, dessen Struktur dann der jeweiligen Tabelle angepaßt wird?

Ich hoffe, ich habe mich verständlich ausdrücken können.

Viele Grüße, Margolwes

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von just (ForumUser / 35 / 0 / 0 ) »
soweit ich weiß, muss man bei einem TC immer alle Felder vorher bekannt geben, d.h. die angezeigte Struktur muss jedes Feld, dass du anzeigen möchtest enthalten.

Du kannst aber zur Laufzeit alle nicht benötigten Felder ausblenden:

Loop at screen.
if screen-name = 'FELD1'.
screen-invisible = 1.
modify screen.
endif.
endloop.

ggf. musst du diesen loop in den step-loop des tc aufnehmen.


Obige Möglichkeit würde ich persönlich aber nur empfehlen, falls die Tabellen einige übereinstimmende Felder.
Wenn es komplett unterschiedlich ist, würde ich eigene Dynpros empfehlen um die Übersichtlichkeit zu wahren.

Eine weitere Alternative ist auch die Verwendung eines ALV_GRID.
Hier gibt man immer dynamisch die Struktur mit, sodass wechselnde Tabellen kein Problem darstellen.

Beitrag von Margolwes (ForumUser / 83 / 2 / 0 ) »
Sowas hatte ich vermutet. Wie kriege ich es den mit ALV hin. Ich hatte das als Liste [b]Viewer[/b] verstanden, aber eben nicht als Instrument, um Daten zu ändern.

Gruß, Margolwes

STC1_FULLSCREEN_TABLE_CONTROL

Beitrag von mtakacs (ForumUser / 3 / 0 / 0 ) »
Hallo, siehe die Doku zu FuBa STC1_FULLSCREEN_TABLE_CONTROL
und die Gruppe STC1 (allgemeines Table Control).
Eingeschränkt aber vielleicht hilft was. und sind schon einige Dinge vorprogrammiert.
Das wird auch in der Tr. KB21N verwendent.

Oder versuche eventuell die Tabellenpflegegenerator in der Laufzeit aufrufen.

Takacs

Beitrag von meinrad (ForumUser / 67 / 0 / 0 ) »
Hallo,
Wenn auf dem Dynpro ausser dem TC noch weitere Felder zu verarbeiten sind, dann wurde ich mit SUBSCREENS arbeiten. Die verschiedenen Subscreens enthaten die verschiedenen TCs mit der zugehörigen Ablauflogik. Im Hauptdynpro erfolgt der Aufruf des Subscreens variabel zum Zeitpunkt PBO:
"CALL SUBSCREEN SUB INCLUDING SY-REPID Z_SUBSCREEN." Im der Variablen Z_subscreen steht die entsprechende Dynpro-nr. , die auf Grund der Anwender-Eingaben im Programm gefüllt wurde.
Die Ablauflogik des Hauptdynpros ist für alle TCs gleich.
Die Ablauflogik für die einzelnen SUBSCREENs und TCs müsste ja sehr ähnlich sein d.h. es gibt die gleichen Module und mit "PERFORM USING" innerhalb der einzelnen Module ergibt sich vieleicht ein übersichtliches Coding.

Beitrag von ewx (Top Expert / 4908 / 331 / 649 ) »
Hallo Margolwes,

es gibt auch die Möglichkeit, die Daten als einfache Liste auszugeben und die Felder mittels WRITE ... INPUT ON eingabebereit zu machen.
Die Werte können dann mit READ LINE wieder eingelesen werden. Ist relativ simpel. Technisch nicht so "schön" wie ALV oder TableControl aber für deine Zwecke ja vielleicht sehr praktikabel?!

Gruß, Enno

Beitrag von just (ForumUser / 35 / 0 / 0 ) »
es gibt ein paar demoprogramme im sap-sytem, die du dir mal anschauen kannst.
z.b. den report BCALV_EDIT_01 bzw. BCALV_EDIT_02

oder hier die kurze variante:
1. container auf dynpro definieren
2. container erzeugen
3. grid erzeugen
4. layout-edit = 'X'. setzen
5. CALL METHOD g_grid->set_table_for_first_display
EXPORTING i_structure_name = 'SFLIGHT'
is_layout = layout
CHANGING it_outtab = gt_outtab.

und schon bist du eingabebereit.

Beitrag von Margolwes (ForumUser / 83 / 2 / 0 ) »
Hallo an alle,

vielen Dank für Eure Tips, muß mal noch schauen, was für mich geeigneter ist, TC mit unsichtbaren Feldern oder die guten Beispielreports mit ALV.

Nochmals Danke,
Margolwes

Seite 1 von 1

Vergleichbare Themen

0
Antw.
1556
Views
SAP GUI 7.10: Problem in Tablecontrols
von Matthias_L. » 20.02.2007 05:19 • Verfasst in Basis
3
Antw.
3361
Views
Dynamische SQL
von Gabriel99 » 22.06.2015 17:59 • Verfasst in ABAP® für Anfänger
1
Antw.
1657
Views
Dynamische Selektionsmaske
von dimes » 27.01.2009 09:55 • Verfasst in ABAP® Core
0
Antw.
1452
Views
Dynamische Variablennamen?
von mbecker » 23.03.2009 12:16 • Verfasst in ABAP® für Anfänger
2
Antw.
2906
Views
Dynamische Referenz
von sapnup » 24.10.2016 13:07 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.