Steuerelemente dynamisch im Code erzeugen

Benutzeroberflächen in SAP®-Systemen.
21 Beiträge • Seite 1 von 2 (current) Nächste
21 Beiträge Seite 1 von 2 (current) Nächste

Steuerelemente dynamisch im Code erzeugen

Beitrag von LordDeath (ForumUser / 20 / 0 / 0 ) »
Hi

Wie kann ich Steuerelemente dynamisch auf ein Dynpro von ABAP aus setzen? Geht das überhaupt?

Und wie kann ich Icons auf Buttons per Quelltext ändern?

Greetz LordDeath
Programmieren ist wie S** wenn man einen Fehler macht muss man ihn für den Rest seines Lebens supporten !

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


Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo LordDeath,

beschreibe bitte etwas genauer, was Du erreichen willst. Wie und wann sollen 'Steuerelemente' dynamisch gesetzt werde und was soll mit ihnen bewirkt werden?

Bzgl. Austausch Icon: ja, das geht, wobei das Vorgehen ein bisschen davon abhängt, wo sich die Icons befinden.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von LordDeath (ForumUser / 20 / 0 / 0 ) »
Ich will zur Laufzeit Textboxen auf einen Dynpro erzeugen. Die Anzahl der Textboxen richtet sich nach der Anzahl der Einträge einer DB Tabelle. Das Dynpro wird über einen Button aufgerufen.

Die Icons sind auf Buttons. Die Buttons wiederum befinden sich in einem Table Control.

Greetz
Programmieren ist wie S** wenn man einen Fehler macht muss man ihn für den Rest seines Lebens supporten !

Beitrag von babap (Expert / 681 / 1 / 1 ) »
Hallo,

ein Dynpro heißt Dynpro, weil es eigentlich ein Dynamisches "Ding" ist oder sein soll.

Die bislang übliche Vorgehensweise ist schon sehr alt:

Man definiert alle Objekte, die man jemals zur brauchen meint.
Man versieht die Objekte mit einer Kennzeichnung in den Screen-Group-Feldern.
Man blendet per Programm die Objekte aus, die man nicht braucht und blendet die Objekte ein, die man gerade braucht. (LOOP AT SCREEN. ... )

Dies macht man meistens von der gerade laufenden "User-Aktion" (OK-Code, SY-UCOMM) abhängig. Und den läßt man vom User per Kommando, Knopf oder sonstwas setzen.

Ganz Hartgesottene jubeln dem Dynpro zur Laufzeit noch ein paar Dinge unter, die bisher noch nicht definiert waren (aber das tue ich mir nicht an ...).

Oder meintest Du noch was ganz anderes.

Gruß
babap

Beitrag von LordDeath (ForumUser / 20 / 0 / 0 ) »
Genau ich möchte die Textboxen zur Laufzeit erstellen da ich nicht weiß wieviele Einträge in der DB Tabelle sind.
Programmieren ist wie S** wenn man einen Fehler macht muss man ihn für den Rest seines Lebens supporten !

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Wenn Du von TextBoxen sprichst, sind damit MultiLine-Texte gemeint?

Wenn ja, solltest Du Dir mal die Anzeige von z.B. Grunddatentexten im Materialstamm (über Zusätze) ansehen. Dort hat SAP die Verwaltung von, hier sprachabhängigen, Langtexten mit TableControl und einem TextEdit-Control gelöst.

Mehrere Langtext-Elemente dynamisch auf dem Bildschrim unterbringen dürfte interssant werden. Möglicherweise ist dies nur durch dynamisch erstellte Dynpros zu erreichen.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von LordDeath (ForumUser / 20 / 0 / 0 ) »
Nee es sollen einfach nur einzeilige Ein/Ausgabefelder sein.

Greetz
Programmieren ist wie S** wenn man einen Fehler macht muss man ihn für den Rest seines Lebens supporten !

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Dann ist die Antwort doch eigentlich schon klar. Nimm ein TableControl und Du brauchst Dir keine/wenige Gedanken über Datenvolumen der DB-Tabelle machen.

Dynamisch irgendetwas hinzubiegen ist hier definitiv nicht sinnvoll.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von zzcpak (Expert / 673 / 5 / 68 ) »
und warum nutzt du für diese einzeligen Textfelder nicht einfach ein Table-Control?

Beitrag von LordDeath (ForumUser / 20 / 0 / 0 ) »
Oki dann mach ichs mit nem Table Control.

Und wie sieht das mit den Icons auf Buttons ändern aus?

Greetz
Programmieren ist wie S** wenn man einen Fehler macht muss man ihn für den Rest seines Lebens supporten !

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Sind das Buttons, die Du innerhalb der Scrollliste anzeigen willst?
Dann sollte es reichen, wenn Du mit ICON_CREATE das jeweilige ICON in das jeweilige Tabellenfeld schreibst.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von LordDeath (ForumUser / 20 / 0 / 0 ) »
Wenn ich da so umsetze

Code: Alles auswählen.

 gt_view-aktflg = icon_create(icon_led_green).
Kommt ein Laufzeitfehler der besagt "Es wurde versucht, den Wert '@5B@' als Zahl zu interpretieren."

gt_view = Interne Tabelle
-aktflg = Ist das Buttonfeld mit dem Typ PUSH

Hast du eine Ahnung woran das liegen könnte?

Greetz
Programmieren ist wie S** wenn man einen Fehler macht muss man ihn für den Rest seines Lebens supporten !

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo LordDeath,

ich vermute mal, dass das Feld für den Pushbutton ein zeichenartiges, aber kein String-, Feld sein muss. So genau weiss ich das nicht, weil ich bisher noch keine Pushbuttons in TableControl's benutzt habe.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von LordDeath (ForumUser / 20 / 0 / 0 ) »
In der Interne Tabelle ist es eine Zeichenkette (Typ C)
mit der Länge 5.
Programmieren ist wie S** wenn man einen Fehler macht muss man ihn für den Rest seines Lebens supporten !

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Stell mal bitte den Coding-Abschnitt mit der Zuweisung und der Tabellendefinition hier ein. Vielleicht versteh ich dann, was das Problem ist.

Ansonsten solltest Du Dir mal den Quelltext einer Transaktion ansehen, die Pushbuttons im TableControl verwendet. Die Elementeansicht zum Dynpro könnte dazu das Richtige sein.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Vergleichbare Themen

6
Antw.
4551
Views
QR-Code dynamisch erzeugen und in SF ausgeben
von bapimueller » 27.11.2020 17:03 • Verfasst in ABAP® Core
3
Antw.
3827
Views
Druck-Nachricht per Code erzeugen (NAST)
von Sebastian82 » 14.08.2020 10:08 • Verfasst in ABAP® Core
7
Antw.
4290
Views
Arbeitsbereich dynamisch erzeugen
von isp » 29.08.2012 13:02 • Verfasst in ABAP® für Anfänger
8
Antw.
1779
Views
Interne Tabelle dynamisch erzeugen
von Der Formulator » 21.10.2021 09:30 • Verfasst in ABAP® Core
5
Antw.
4258
Views
Dynpro Elemente dynamisch erzeugen
von pohlmann-schwarza » 27.05.2008 15:02 • Verfasst in ABAP® für Anfänger

Aktuelle Forenbeiträge

Regex in where
vor 7 Stunden von black_adept 2 / 65
Programm anlegen mit Vorlage
vor 14 Stunden von DeathAndPain 2 / 114
IT0024 Qualifikationen CP-ID
vor 14 Stunden von DeathAndPain 2 / 352
BUSOBJEKT zu CMIS PHIO ermitteln
vor 16 Stunden von snooga87 1 / 84

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

Regex in where
vor 7 Stunden von black_adept 2 / 65
Programm anlegen mit Vorlage
vor 14 Stunden von DeathAndPain 2 / 114
IT0024 Qualifikationen CP-ID
vor 14 Stunden von DeathAndPain 2 / 352
BUSOBJEKT zu CMIS PHIO ermitteln
vor 16 Stunden von snooga87 1 / 84

Unbeantwortete Forenbeiträge

BUSOBJEKT zu CMIS PHIO ermitteln
vor 16 Stunden von snooga87 1 / 84
aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3261
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9821