Tabelle zur Eingabe auf Selektionsbild

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

Tabelle zur Eingabe auf Selektionsbild

Beitrag von DerAndi (ForumUser / 20 / 0 / 0 ) »
Hallo,

ich möchte auf dem Selektionsbild mit Hilfe des Table Control eine dreispaltige
Tabelle einblenden. In dieser soll der User dann Daten dreistufig eingeben können
(in den Feldern soll eine Wertehilfe angeboten werden).

Es soll möglich sein mehrere Zeilen in der Tabelle einzugeben z.B.

1. Spalte-------------- 2. Spalte--------------------3. Spalte
Materialgruppe I......Materialkategorie I....... Material I
Materialgruppe I......Materialkategorie I....... Material II
Materialgruppe II.....Materialkategorie I .......Material III

Werden diese Eingaben beim Speichern der Selektionsbild Variante mit abgespeichert?
Dies wäre Vorraussetzung für die Umsetzung.

Wäre für Tipps sehr dankbar!
Gruß,
Andi

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


Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Vielleicht lehne ich mich jetzt zuweit aus dem Fenster, weil bei SAP/ABAP lernt man nie aus und es ist oft mehr möglich als man denkt, aber:

Table Control auf einem Selektionsbildschirm(1000) ist nicht möglich.
Selbstverständlich kannst du Dir ein Dynpro erstellen, auf dem Du machen kannst was Du willst.
Das fällt bei mir allerdings nicht unter einen Standard-Selektionsbildschirm.

Ich würde es ungefähr folgendermassen umsetzen,...und somit ist das ganze auch im Standard als Variante abspeicherbar.


Code: Alles auswählen.

SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS p_matg1 TYPE matnr.
PARAMETERS p_matk1 TYPE matnr.
PARAMETERS p_mat1 TYPE matnr.
SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS p_matg2 TYPE matnr.
PARAMETERS p_matk2 TYPE matnr.
PARAMETERS p_mat2 TYPE matnr.
SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS p_matg3 TYPE matnr.
PARAMETERS p_matk3 TYPE matnr.
PARAMETERS p_mat3 TYPE matnr.
SELECTION-SCREEN END OF LINE.
Natürlich bestehen noch weitere Gestaltungsmöglichkeiten.... Texte.. Buttons...

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von black_adept (Top Expert / 4093 / 128 / 940 ) »
Hmmm - so ganz will ich das mal nicht stehen lassen.

Es geht durchaus möglich einen Tablecontrol auf den Selektionsbildschirm zu packen. Allerdings nur via Einblendung als Subscreen (->
http://help.sap.com/erp2005_ehp_03/help ... ontent.htm).

Dieser Subscreen ist nun allerdings tatsächlich nicht in die allgemeine Variantenspeicherung eingebunden. Aber auch dem kann abgeholfen werden. Man könnte z.B. eine Struktur erstellen ( für das Beispiel bestehend aus den 3 Feldern ) und eine (unsichtbare oder nicht änderbare) Selektionsoption erstellen für diese neu erstellte Struktur. Nun nur noch dafür sorgen, dass Tablecontrol und Selektionsoption immer gleich gefüllt sind.
Also bei AT SELECTION-SCREEN OUTPUT Daten aus Selektionsoption in Tablecontrol schieben, bei AT SELECTION-SCREEN Daten aus Tablecontrol in Selektionsoption übertragen.

Das Ganze ist allerdings schon mit ein wenig Programmierung verbunden - sieht aber nachher so aus, also ob der Tablecontrolinhalt in den Varianten abgelegt wird.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von DerAndi (ForumUser / 20 / 0 / 0 ) »
black_adept hat geschrieben:
Dieser Subscreen ist nun allerdings tatsächlich nicht in die allgemeine Variantenspeicherung eingebunden. Aber auch dem kann abgeholfen werden. Man könnte z.B. eine Struktur erstellen ( für das Beispiel bestehend aus den 3 Feldern ) und eine (unsichtbare oder nicht änderbare) Selektionsoption erstellen für diese neu erstellte Struktur. Nun nur noch dafür sorgen, dass Tablecontrol und Selektionsoption immer gleich gefüllt sind.
Also bei AT SELECTION-SCREEN OUTPUT Daten aus Selektionsoption in Tablecontrol schieben, bei AT SELECTION-SCREEN Daten aus Tablecontrol in Selektionsoption übertragen.
Genau auf diese Idee bin ich auch schon gekommen, allerdings würde ich die Selektionsoption mit NO-DISPLAY einbinden
(was der User nicht sieht, verwirrt ihn nicht ;-)). Das einbinden des Subsrceens funktioniert bereits tadellos.

Einzig die Wertehilfe in einem Tabellenfeld will nicht korrekt funktionieren, da die Wertehilfe abhängig ist von der Spalte voher
in der Tabellenzeile z.B. das Feld in der zweiten Zeile und der zweiten Spalte darf nur Werte enthalten die von der Materialgruppe I
sind (siehe Tabellendarstellung im ersten Posting).

Die Wertehilfe ist an der Struktur hinterlegt mit der die Tabelle definiert ist. Auf anderen Selektionsbildern bei dem diese Werthilfe auch
verwendet wird, funktioniert diese Abhängigkeit (Felder sind normal mit SELECT-OPTIONS definiert).

Anscheindend gibt es ein Problem, das nicht korrekt erkannt wird in der Wertehilfe, auf welcher Tabellenzeile geprüft werden müsste.

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Irgendwie sehe ich dort kein Table Control :?


Und der Unterschied zwischen meinem Beispiel und dem dort angegeben Beispiel ist lediglich, dass ich alle drei Parameter auf einen Bildschirm positioniere und im Beispiel drei Subscreens dafür genommen werden. :?

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von black_adept (Top Expert / 4093 / 128 / 940 ) »
Nee - das ist doch völlig anders.

Der Link zeigt lediglich auf die Methode wie man Subscreens auf Selektionsbilder aufbringt ( weil das evtl. nicht jeder aus dem FF kennt ).

Desweiteren löst dein Beispiel das Problem nicht im Allgemeinen. Es sind lediglich 3 Gruppen à 3 Felder eingabebereit - die Version mit Tablecontrol hingegen lässt (fast) beiliebig viele Gruppen à 3 Felder zu.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
ich möchte auf dem Selektionsbild mit Hilfe des Table Control eine dreispaltige
Tabelle einblenden.
Meine bescheidene Meinung: Table Control auf einem Selektionsbildschirm nicht möglich.
(Lasse mich gerne eines besseren belehren, obwohl ich es wohl nie brauchen oder anwenden würde!)
Werden diese Eingaben beim Speichern der Selektionsbild Variante mit abgespeichert?
Dies wäre Vorraussetzung für die Umsetzung.

Natürliche läßt sich das ganze trotzdem realisieren.. aber unter anderen Voraussetzungen!

Oberes Viertel: Selektionsbildschirm, darunter ein Table Control oder ALV!
Selektionsbildschirm enthält diese drei gewünschten Felder.
Eingabe über dieser drei Parameter mit gewünschter Prüfung, abspeichern in den darunter sichtbaren ALV!
Alle Eingaben getätigt: Programm kann ausgeführt werden. Dazu werden die Inhalte des ALV quasi in Select-Options umgesetzt und genutzt.

Variante muss im Programm manuell erstellt werden und beim starten auch manuell eingelesen werden.

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von Frank Dittrich (Expert / 674 / 0 / 15 ) »
Unit605 hat geschrieben:
ich möchte auf dem Selektionsbild mit Hilfe des Table Control eine dreispaltige
Tabelle einblenden.
Meine bescheidene Meinung: Table Control auf einem Selektionsbildschirm nicht möglich.
(Lasse mich gerne eines besseren belehren
Belehr.

Es geht genau wie von Stefan beschrieben.
(Nur dass ich wohl für jede Spalte des Table Controls eine eigene Select-Option genommen hätte, statt alle Felder zusammen in eine Select-Option zu pressen.)

Frank

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Belehr.

Es geht genau wie von Stefan beschrieben.
(Nur dass ich wohl für jede Spalte des Table Controls eine eigene Select-Option genommen hätte, statt alle Felder zusammen in eine Select-Option zu pressen.)

Frank
Auch wenn ich mich gerne wiederhole:
Irgendwie sehe ich dort kein Table Control
Ich sehe dort nur Subscreens und Tabreiter...

Bitte gebt mir die Erleuchtung...

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von Frank Dittrich (Expert / 674 / 0 / 15 ) »
Unit605 hat geschrieben: Auch wenn ich mich gerne wiederhole:
Irgendwie sehe ich dort kein Table Control
Ich sehe dort nur Subscreens und Tabreiter...

Bitte gebt mir die Erleuchtung...
Du klickst auf den angegebenen Link
http://help.sap.com/erp2005_ehp_03/help ... ontent.htm
oder (es muss ja nicht EN sein)
http://help.sap.com/erp2005_ehp_03/help ... ontent.htm

Da gibt es zu Anfang eine Aufzählung:

· A subscreen screen defined using the Screen Painter.

· A selection screen subscreen, defined in an ABAP program.

Oder

· Subscreen-Dynpros, die mit dem Screen Painter definiert wurden

· Selektionsbilder als Subscreens, die in einem ABAP-Programm definiert wurden.

Du legst also einen normalen Subscreen (keinen Selection-Screen-Subscreen) an, z.B. mit Transaktion SE51.
Darin definierst Du Dein Table Control.
Im Absatz über der Aufzählung steht, wie man dem Subscreen-Bereich im Selektionsbild mitteilt, welcher Subscreen da eingeblendet werden soll.

Ich versteh Deine Frage nicht.

Ach ja, zur Ablauflogik des Table Controls:

Am einfachsten zu programmieren, aber nicht unbedingt am effektivsten:

im ersten PBO-Modul des Dialog-Subscreens wird der Inhalt der No-Display-Select-Options in die Table-Control-Spalten übernommen.
Im letzten PAI-Modul werden die Select-Options wieder aus den Spalten des Table Controls gefüllt.

Frank

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Du kannst auch ein Call Transaction oder einen Fuba aufrufen oder ein Call Screen oder sonstwas programmieren.

Oder das Beispiel, was ich beschrieben habe.
Da ist eben kein Table Control, sondern ein ALV in den "Selections-Bildschirm" eingebettet.



Das und mein Beispiel läuft bei mir aber nicht mehr unter Standard-Selektionsbildschirm.

Bei Dir schon .... ich weiß... ich weiß.

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von Frank Dittrich (Expert / 674 / 0 / 15 ) »
Unit605 hat geschrieben:Du kannst auch ein Call Transaction oder einen Fuba aufrufen oder ein Call Screen oder sonstwas programmieren.
Dann hast Du aber einen zusätzlichen Dialogschritt.
Das und mein Beispiel läuft bei mir aber nicht mehr unter Standard-Selektionsbildschirm.

Bei Dir schon .... ich weiß... ich weiß.
Klar sind in einem Selection Screen nur Parameter (incl. Checkbox/Radio button), Select-Options, Kommentare, Rahmen, Buttons usw. möglich, kein Table Control oder ALV Grid.
Für den Anwender ist das aber ein Selektionsbild. Und wenn die Werte aus dem Table Control in der Variante gespeichert werden, ist alles gut.

Ich bezog mich mit meiner früheren Aussage v.a. auf Dein
Irgendwie sehe ich dort kein Table Control
.
Ich hatte Dich zuerst so verstanden, dass die schematische Darstellung im OP fraglich erscheinen lässt, ob es lt. Anforderung überhaupt ein Table Control sein muss.

Bei der Wiederholung dachte ich, Du hast den angegeben Hilfe-Link vielleicht nur überflogen und festgestellt, dass ein Table Control da nirgends vorkommt...


Frank

Re: Tabelle zur Eingabe auf Selektionsbild

Beitrag von Frank Dittrich (Expert / 674 / 0 / 15 ) »
DerAndi hat geschrieben:
black_adept hat geschrieben:Einzig die Wertehilfe in einem Tabellenfeld will nicht korrekt funktionieren, da die Wertehilfe abhängig ist von der Spalte voher
in der Tabellenzeile z.B. das Feld in der zweiten Zeile und der zweiten Spalte darf nur Werte enthalten die von der Materialgruppe I
sind (siehe Tabellendarstellung im ersten Posting).

Die Wertehilfe ist an der Struktur hinterlegt mit der die Tabelle definiert ist. Auf anderen Selektionsbildern bei dem diese Werthilfe auch
verwendet wird, funktioniert diese Abhängigkeit (Felder sind normal mit SELECT-OPTIONS definiert).
Was passiert denn, wenn Du Deinen Subscreen in ein normales Dialog-Dynpro einbindest?
Funktioniert die Wertehilfe da?
Wenn nein, hast Du irgendetwas falsch gemacht.
Wenn ja, könnte es sich auch um einen SAP-Kernel-Fehler handeln.
GUI-Fehler würde ich erst mal ausschließen.

Also prüfen, wie alt Kernel und GUI sind, im Zweifelsfall erst mal die SAP-Basis zum Einspielen eines neuen Kernels im Entwicklungssystem überreden.
Ansonsten eine Fehlermeldung an SAP aufmachen.

Wenn die Hilfe bei Einbindung in ein normales Dynpro funktioniert, bei Einbindung in Selection-Screen nicht, lass Dich nicht durch die Aussage abwimmeln, dass das eine Eigenentwicklung ist.
Du nutzt eine von SAP dokumentierte Technologie (verweise auf den Link) und möchtest, dass diese funktioniert.

Wenn klar ist, woran es lag, bitte hier posten. (Auch wenn Du bei der Suchhilfe-Definiton etwas falsch gemacht hast. Man will ja nicht jeden Fehler selbst machen, um dann daraus zu lernen.)

Seite 1 von 1

Vergleichbare Themen

16
Antw.
4338
Views
*-Eingabe bei eingabemaske ins Selektionsbild
von patlau » 05.06.2013 09:48 • Verfasst in ABAP® für Anfänger
2
Antw.
1958
Views
Selektionsbild
von KarstenS. » 30.11.2006 15:38 • Verfasst in ABAP® für Anfänger
11
Antw.
4468
Views
Selektionsbild
von Kerstin » 26.04.2006 08:19 • Verfasst in ABAP® Core
1
Antw.
620
Views
Dynpro -> Selektionsbild
von JoaquinRayces » 13.01.2023 10:32 • Verfasst in ABAP® für Anfänger
5
Antw.
7784
Views
Parameter im Selektionsbild
von Kerstin » 02.10.2013 10:53 • Verfasst in ABAP® Core

Aktuelle Forenbeiträge

Trennen Strasse und Hausnummer
vor 16 Stunden von msfox 18 / 11135
Dialog-Container mit Toolbar/Status
vor 19 Stunden von black_adept gelöst 27 / 4261
IT0024 Qualifikationen CP-ID
vor 20 Stunden von ArjenR 1 / 179

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.

Aktuelle Forenbeiträge

Trennen Strasse und Hausnummer
vor 16 Stunden von msfox 18 / 11135
Dialog-Container mit Toolbar/Status
vor 19 Stunden von black_adept gelöst 27 / 4261
IT0024 Qualifikationen CP-ID
vor 20 Stunden von ArjenR 1 / 179

Unbeantwortete Forenbeiträge

IT0024 Qualifikationen CP-ID
vor 20 Stunden von ArjenR 1 / 179
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 3111
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9707