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.
4543
Views
QR-Code dynamisch erzeugen und in SF ausgeben
von bapimueller » 27.11.2020 17:03 • Verfasst in ABAP® Core
3
Antw.
3815
Views
Druck-Nachricht per Code erzeugen (NAST)
von Sebastian82 » 14.08.2020 10:08 • Verfasst in ABAP® Core
7
Antw.
4280
Views
Arbeitsbereich dynamisch erzeugen
von isp » 29.08.2012 13:02 • Verfasst in ABAP® für Anfänger
8
Antw.
1757
Views
Interne Tabelle dynamisch erzeugen
von Der Formulator » 21.10.2021 09:30 • Verfasst in ABAP® Core
5
Antw.
4257
Views
Dynpro Elemente dynamisch erzeugen
von pohlmann-schwarza » 27.05.2008 15:02 • Verfasst in ABAP® für Anfänger

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.

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2418
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9008