Checkboxen dynamisch erstellen

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Checkboxen dynamisch erstellen

Beitrag von mareikemei92 (ForumUser / 49 / 18 / 0 ) »
Hallo zusammen,

Gibt es eine Möglichkeit, ein Selektionsbild mit Checkboxen dynamisch zu erstellen?
Ich habe mir das so vorgestellt: Ich lese eine Tabelle in eine interne Tabelle, dann mache ich einen LOOP über diese interne Tabelle, baue mir im LOOP den Parameter-Namen dynamisch zusammen und erstelle dann die Checkbox.
Damit würde sich mein Selektionsbild automatisch erweitern, wenn ein neuer Eintrag in der Tabelle hinzugefügt wird.

Bis jetzt habe ich noch keine Möglichkeit gefunden.. vielleicht hat hier jemand eine Idee?? :)

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


Re: Checkboxen dynamisch erstellen

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
Einfacher ist es wahrscheinlich, wenn du eine gewisse Anzahl an checkboxen erstellst und nicht verwendete ausblendest.
Den Text kannst du dynamisch ändern:
https://www.tricktresor.de/blog/dynamis ... tionstext/

Eine andere Alternative wäre ein Docking-Container mit einem ALV-Grid und entsprechenden Einträgen. Da ist es dann einfach, Einträge dynamisch zu verwalten.

Re: Checkboxen dynamisch erstellen

Beitrag von mareikemei92 (ForumUser / 49 / 18 / 0 ) »
ewx hat geschrieben:Einfacher ist es wahrscheinlich, wenn du eine gewisse Anzahl an checkboxen erstellst und nicht verwendete ausblendest.
Den Text kannst du dynamisch ändern:
https://www.tricktresor.de/blog/dynamis ... tionstext/

Eine andere Alternative wäre ein Docking-Container mit einem ALV-Grid und entsprechenden Einträgen. Da ist es dann einfach, Einträge dynamisch zu verwalten.
Die Möglichkeit mit den "Platzhalter"-Checkboxen habe ich auch schon im Ansatz gefunden, aber leider keine richtige Erklärung dazu.. Wie würde das funktionieren, dass dann von 4 ausgeblendeten Checkboxen automatisch mit Anpassung der Tabelle (ein Eintrag mehr -> eine zusätzliche Checkbox) nur noch 3 Checkboxen ausgeblendet werden? Das ist mir noch nicht ganz klar.

Die zweite Möglichkeit kenne ich gar nicht.

Re: Checkboxen dynamisch erstellen

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
Variante 1:

Code: Alles auswählen.

REPORT.

PARAMETERS p_anz TYPE i DEFAULT 3.

PARAMETERS p_01 AS CHECKBOX MODIF ID p01.
PARAMETERS p_02 AS CHECKBOX MODIF ID p02.
PARAMETERS p_03 AS CHECKBOX MODIF ID p03.
PARAMETERS p_04 AS CHECKBOX MODIF ID p04.
PARAMETERS p_05 AS CHECKBOX MODIF ID p05.
PARAMETERS p_06 AS CHECKBOX MODIF ID p06.
PARAMETERS p_07 AS CHECKBOX MODIF ID p07.

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.
    IF screen-group1+1(2) > p_anz.
      screen-active = '0'.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.
Variante 2:
https://www.tricktresor.de/blog/moderne ... -alv-grid/

Folgende Benutzer bedankten sich beim Autor ewx für den Beitrag:
mareikemei92


Re: Checkboxen dynamisch erstellen

Beitrag von mareikemei92 (ForumUser / 49 / 18 / 0 ) »
ewx hat geschrieben:Variante 1:

Code: Alles auswählen.

REPORT.

PARAMETERS p_anz TYPE i DEFAULT 3.

PARAMETERS p_01 AS CHECKBOX MODIF ID p01.
PARAMETERS p_02 AS CHECKBOX MODIF ID p02.
PARAMETERS p_03 AS CHECKBOX MODIF ID p03.
PARAMETERS p_04 AS CHECKBOX MODIF ID p04.
PARAMETERS p_05 AS CHECKBOX MODIF ID p05.
PARAMETERS p_06 AS CHECKBOX MODIF ID p06.
PARAMETERS p_07 AS CHECKBOX MODIF ID p07.

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.
    IF screen-group1+1(2) > p_anz.
      screen-active = '0'.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.
Variante 2:
https://www.tricktresor.de/blog/moderne ... -alv-grid/
Also das mit dem dynamisch ausblenden ging ohne Probleme, aber ich frage mich, wie ich den Text der Checkbox dynamisch ändern soll. Das funktioniert leider nicht wie gewollt (außer ich mache einen riesigen CASE-Block rein, der die Nummer abfragt und dementsprechend das richtige Screenelement zum Ändern auswählt). Wäre zwar funktional, aber nicht gerade schön.

Re: Checkboxen dynamisch erstellen

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
mareikemei92 hat geschrieben: Also das mit dem dynamisch ausblenden ging ohne Probleme, aber ich frage mich, wie ich den Text der Checkbox dynamisch ändern soll.
Hatte ich doch oben schon geschrieben...
ewx hat geschrieben:Den Text kannst du dynamisch ändern:
https://www.tricktresor.de/blog/dynamis ... tionstext/

Code: Alles auswählen.

PARAMETERS p_anz TYPE i DEFAULT 3.

PARAMETERS p_01 AS CHECKBOX MODIF ID p01.
PARAMETERS p_02 AS CHECKBOX MODIF ID p02.
PARAMETERS p_03 AS CHECKBOX MODIF ID p03.
PARAMETERS p_04 AS CHECKBOX MODIF ID p04.
PARAMETERS p_05 AS CHECKBOX MODIF ID p05.
PARAMETERS p_06 AS CHECKBOX MODIF ID p06.
PARAMETERS p_07 AS CHECKBOX MODIF ID p07.

INITIALIZATION.
  TYPES tt_seltexts TYPE STANDARD TABLE OF rsseltexts WITH DEFAULT KEY.
  DATA(seltexts) = VALUE tt_seltexts(
      ( name = 'P_01' kind = 'P' text = 'Option numero uno' )
      ( name = 'P_02' kind = 'P' text = 'Option no. deux' )
      ( name = 'P_03' kind = 'P' text = 'Option number three' )
      ( name = 'P_04' kind = 'P' text = 'Option Nr. Vier' ) ).

  CALL FUNCTION 'SELECTION_TEXTS_MODIFY'
    EXPORTING
      program  = sy-cprog
    TABLES
      seltexts = seltexts
    EXCEPTIONS
      OTHERS   = 3.

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.
    IF screen-group1+1(2) > p_anz.
      screen-active = '0'.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.

Folgende Benutzer bedankten sich beim Autor ewx für den Beitrag:
mareikemei92


Re: Checkboxen dynamisch erstellen

Beitrag von mareikemei92 (ForumUser / 49 / 18 / 0 ) »
ewx hat geschrieben:
mareikemei92 hat geschrieben: Also das mit dem dynamisch ausblenden ging ohne Probleme, aber ich frage mich, wie ich den Text der Checkbox dynamisch ändern soll.
Hatte ich doch oben schon geschrieben...
ewx hat geschrieben:Den Text kannst du dynamisch ändern:
https://www.tricktresor.de/blog/dynamis ... tionstext/

Code: Alles auswählen.

PARAMETERS p_anz TYPE i DEFAULT 3.

PARAMETERS p_01 AS CHECKBOX MODIF ID p01.
PARAMETERS p_02 AS CHECKBOX MODIF ID p02.
PARAMETERS p_03 AS CHECKBOX MODIF ID p03.
PARAMETERS p_04 AS CHECKBOX MODIF ID p04.
PARAMETERS p_05 AS CHECKBOX MODIF ID p05.
PARAMETERS p_06 AS CHECKBOX MODIF ID p06.
PARAMETERS p_07 AS CHECKBOX MODIF ID p07.

INITIALIZATION.
  TYPES tt_seltexts TYPE STANDARD TABLE OF rsseltexts WITH DEFAULT KEY.
  DATA(seltexts) = VALUE tt_seltexts(
      ( name = 'P_01' kind = 'P' text = 'Option numero uno' )
      ( name = 'P_02' kind = 'P' text = 'Option no. deux' )
      ( name = 'P_03' kind = 'P' text = 'Option number three' )
      ( name = 'P_04' kind = 'P' text = 'Option Nr. Vier' ) ).

  CALL FUNCTION 'SELECTION_TEXTS_MODIFY'
    EXPORTING
      program  = sy-cprog
    TABLES
      seltexts = seltexts
    EXCEPTIONS
      OTHERS   = 3.

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.
    IF screen-group1+1(2) > p_anz.
      screen-active = '0'.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.
Danke! Mit deinem Beispiel habe ich es jetzt verstanden. So funktioniert es bei mir auch wunderbar.

Seite 1 von 1

Vergleichbare Themen

7
Antw.
6421
Views
Sturktur dynamisch erstellen
von jondahl11 » 23.02.2007 09:31 • Verfasst in ABAP Objects®
9
Antw.
6468
Views
Selektionsbild dynamisch erstellen
von BesenWesen » 17.01.2007 15:26 • Verfasst in ABAP® Core
12
Antw.
10180
Views
Select Option dynamisch erstellen
von irian » 06.05.2008 11:59 • Verfasst in ABAP® für Anfänger
5
Antw.
3487
Views
Datenbanktabellen dynamisch zur Laufzeit erstellen
von KK » 20.12.2005 07:50 • Verfasst in ABAP® Core
10
Antw.
13291
Views
Dynpro: Eingabefelder dynamisch erstellen und ausrichten
von Nautilus » 08.11.2005 15:20 • Verfasst in Dialogprogrammierung

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Aktuelle Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

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

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 107
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 140