Einfache Fragen zu Dynpro

Getting started ... Alles für einen gelungenen Start.
12 Beiträge • Seite 1 von 1
12 Beiträge Seite 1 von 1

Einfache Fragen zu Dynpro

Beitrag von Trulchen (Specialist / 241 / 4 / 1 ) »
Witme mich seit einigen Tagen der Dynpro Materie.

Frage 1:
Und zwar soll ich ein Verwaltungstool schreiben mit dennen ich Reiseprospekte und Angebote innerhalb der Reiseprospekte verwalten kann!

Habe jetzt ein EInfaches Dynpro erstellt mit folgender Bildschirmlogig ( Screen 100) ( siehe Anhang)

So jetzt hätte ich gerne das man wenn man auf die Drucktaste Eintrag Anzeigen auf Scrren 200 geht
Und auf die Drucktaste Anzeigen Prospekte auf den Screen 300 geht
Und auf die Drucktaste Angebote Löschen/Hinzufügen auf Screen 400 geht!

Über den POB Befehl "Call screen xxx" klappt es nicht -.-
Geht das überhaupt ?

Frage 2:
Sollte Frage 1 nicht Funktionieren brauche ich eine Info wie ich Feldinnhalte mit Drucktastenbefehl löschen kann.

Wäre super wenn ihr mir Helfen könnt :)

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


Re: Einfache Fragen zu Dynpro

Beitrag von Trulchen (Specialist / 241 / 4 / 1 ) »
Ach ja Anmerkung ^^ Ist nichts offizielles sondern eine Tutorial Aufgabe ^^

Re: Einfache Fragen zu Dynpro

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
Trulchen hat geschrieben:So jetzt hätte ich gerne das man wenn man auf die Drucktaste Eintrag Anzeigen auf Scrren 200 geht
Und auf die Drucktaste Anzeigen Prospekte auf den Screen 300 geht
Und auf die Drucktaste Angebote Löschen/Hinzufügen auf Screen 400 geht!

Über den POB Befehl "Call screen xxx" klappt es nicht -.-
Was klappt nicht?
Das ist nämlich genau das, was du machen musst um auf einen anderen Screen zu wechseln.
(der wie in deinem Fall nicht Teil einer Dynpro-Folge ist; Aber das ist eine andere Geschichte)

lg ADT
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Einfache Fragen zu Dynpro

Beitrag von Trulchen (Specialist / 241 / 4 / 1 ) »
Der Befehl Call SCREEN geht an sich ja schon ^^ Aber eben immer nur zum Folgedynpro.... Und ich habe ja auf den "Startdynpro" mehrer Buttons die jeweils zu einem andern Folgedynpro gehören sollen .... Eben es ist nicht Teil der Dynpro Folge....
Aber wie gehört das Programmiert?

Oder sind Subscrenns in dem Fall nicht besser?
Für die Programmlogik?

Re: Einfache Fragen zu Dynpro

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
hi!

häää?

Im PAI:
Wenn auf den Button 1 geklickt dann CALL SCREEN 1
Wenn auf den Button 2 geklickt dann CALL SCREEN 2
Wenn auf den Button 3 geklickt dann CALL SCREEN 3

Was soll da nicht gehen?

Und lass das mit den Dynprofolgen, war nur ein Hinweis von mir, dass man dabei ganz anders vorgehen muss und in deinem Fall sowieso nicht anwendbar ist, da du ausgehend von deinem Hauptdynpro mehr als ein Folgedynpro brauchst.

lg ADT
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Einfache Fragen zu Dynpro

Beitrag von Trulchen (Specialist / 241 / 4 / 1 ) »
Weil es nicht geht :(

Nehmen wir an Hauptdynpro ist 100 ( siehe Grafik)

PAI von 100 ist :

Code: Alles auswählen.

module USER_COMMAND_0100 input.

CASE ok_code.
  WHEN 'BACK'.
    LEAVE PROGRAM.
  WHEN 'SELECT'.
   SELECT SINGLE  *  FROM ZZ1000_Angebot INTO CORRESPONDING FIELDS OF WA_ANGEBOT WHERE ANGEBOTS_ID = ZZ1000_Angebot-ANGEBOTS_ID.
  SELECT SINGLE * FROM ZZ1000_ANGEBOT INTO CORRESPONDING FIELDS OF WA_PROSPK Where ProspID = ZZ1000_ANGEBOT-PROSPID AND PROSPID = ZZ1000_PROSP-PROSPID.
   CALL SCREEN 200.
  WHEN 'BILDSCH'.
    CALL SCREEN 300.
  ENDCASE.

   CLEAR ok_code.
endmodule.                 " USER_COMMAND_0100  INPUT
Ich denke das geht eben nicht weil ich mehr als ein Folgedynpro brauche im Screen 100 oder?

Okay, dann muss ich umdenken ! Kannst du mir Frage 2 beantworten ? ( Eingangspost)

Re: Einfache Fragen zu Dynpro

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
Trulchen hat geschrieben:Ich denke das geht eben nicht weil ich mehr als ein Folgedynpro brauche im Screen 100 oder?
Das ist aber die Lösung!
Was genau funktioniert hierbei nicht?
Wie gesagt: Das Feld für "Folgedynpro" in der Dynprodefinition ist LEER zu lassen.

Zur Frage 2:
Ganz einfach: Die zugehörigen Variablen im Programm einfach mit Clear löschen. Wenn du das Ganze auch bei F4 (Value-Request) oder F1 (Help-Request) erreichen willst, brauchst du zusätzlich den Baustein DYNP_VALUES_UPDATE.
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Einfache Fragen zu Dynpro

Beitrag von Trulchen (Specialist / 241 / 4 / 1 ) »
Wie gesagt: Das Feld für "Folgedynpro" in der Dynprodefinition ist LEER zu lassen.
Die Info hatte ich überlesen :o Danke :) jetzt klappt es !

Re: Einfache Fragen zu Dynpro

Beitrag von Trulchen (Specialist / 241 / 4 / 1 ) »
Neue Frage..... wie kann ich Textfelder und Labels dynamisch verschwinden lassen?

Und zwar in meiner Oberfläche sind ja einmal die Angebote zum Anzeigen und einmal die Prospekte zum Anzeigen (Dynpro 100)
Wenn ich jetzt auf Button Angebote Anzeigen will sollen im Dynpro 200 nur die Textfelder erscheinen die mit dem Angebot zu tun haben.
Bei den Prospekten genau andersrum.

Ich weiß ich benötige Loop at Screen

Aber wo schreibe ich das hin? Und es ist ja nicht nur ein Feld sondern mehrere .... ( siehe Beispiel)
Das Bild ist ein Screenshot von Dynpro 200! Also die Ausgabe.
Derzeit erscheint kein Text bei Prospekte.... ich hätte gern eine IF das wenn BUTTON ANgebot Anzeigen gedrückt wird verschwinden die Textfelder von Prospekte.
Und andersrum....
Aber meine Versuche sind bis jetzt gescheitert :(

Re: Einfache Fragen zu Dynpro

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
Trulchen hat geschrieben:Aber meine Versuche sind bis jetzt gescheitert :(
1. Im Screen 100 musst du dir merken, welche Auswahl der User getroffen hat (z.B.: globale Variable füllen)
2. Im Screen 200 erstellst du ein PBO-Modul in dem du mit LOOP AT SCREEN die Felder, die du nicht brauchst deaktivierst (hier musst du die gobale Variable auswerten). Am einfachsten ist es, wenn du den einzelen Feldern im Screen-Editor Gruppen zu weist (du brauchst mind. zwei) und diese dann in deinem LOOP AT SCREEN abfragst.
Gruß Hendrik

Re: Einfache Fragen zu Dynpro

Beitrag von Trulchen (Specialist / 241 / 4 / 1 ) »
Ich habe jetzt im im TOP INCLUDE die golobale variable gv_answer definiert.

Im Screen 100 im PAI
fülle ich die Variable mit p_anz.
Codeschnippsel:

Code: Alles auswählen.

CASE ok_code.
  WHEN 'QUIT'.
    LEAVE PROGRAM. WHEN 'ANG_ANZ'.
      SELECT SINGLE * FROM ZZ1000_Angebot INTO WA_ANGEBOT WHERE ANGEBOTS_ID = ZZ1000_Angebot-ANGEBOTS_ID.
     if sy-subrc = 4.
        MESSAGE e001.
     ELSE.
       gv_answer ='a_anz'.
     LEAVE to SCREEN 300.
     ENDIF.

   WHEN 'PRO_ANZ'.
  SELECT SINGLE  * FROM ZZ1000_PROSP INTO  WA_PROSPK Where ProspID = ZZ1000_PROSP-PROSPID.
     if sy-subrc = 4.
        MESSAGE e001.
        gv_answer = 'p_anz'.
      ENDIF.

     LEAVE to SCREEN 300.
ENDCASE. 
Gruppe habe ich definiert als als ANG = angebote unf PRO = Projekte.
Habe jetzt im POB von Screen 200 folgendes:

Code: Alles auswählen.

LOOP AT SCREEN.
   CASE answer.
     WHEN 'a_anz'.
        IF screen-group1 = 'PRO'.
           screen-input = 1.
           screen-active = 0.
        ENDIF.
     WHEN 'p_anz'.
          IF screen-group1 = 'ANZ'.
           screen-input = 1.
           screen-active = 0.
        ENDIF.
   MODIFY SCREEN.
ENDLOOP.
Anwendung läuft ohne Fehler! Aber die Felder werden nicht angezeigt! Was mach ich falsch? Abgesehen davon das ich nicht weiß ob das Codeschnipssel überhaupt stimmt.

Re: Einfache Fragen zu Dynpro

Beitrag von Trulchen (Specialist / 241 / 4 / 1 ) »
Hat sich erledigt :) ES GEHT !!

Seite 1 von 1

Vergleichbare Themen

10
Antw.
6650
Views
Dynpro Fragen
von stony007_de » 21.12.2014 10:10 • Verfasst in ABAP® für Anfänger
3
Antw.
4952
Views
Einfache ALV Ausgabe
von erzoo24 » 01.07.2015 10:43 • Verfasst in ABAP® für Anfänger
28
Antw.
13979
Views
Einfache Frage: RFBIBL00 vs. CT vs. ???
von ralf.wenzel » 30.08.2007 11:40 • Verfasst in ABAP® Core
0
Antw.
5227
Views
ALV Kapselung für einfache Tabellen
von Thomas R. » 11.08.2005 12:02 • Verfasst in Tips + Tricks & FAQs
8
Antw.
2349
Views
Funktionsbaustein für einfache Abfrage
von Mueller.D » 12.09.2017 11:15 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Regex in where
vor 9 Stunden von tar 8 / 243
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1532
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 179
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 417

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 9 Stunden von tar 8 / 243
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1532
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 179
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 417

Unbeantwortete Forenbeiträge

BUSOBJEKT zu CMIS PHIO ermitteln
vor 2 Tagen von snooga87 1 / 125
aRFC im OO-Kontext
letzen Monat von ralf.wenzel 1 / 3299
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9856