Workflow Protokoll

Benutzeroberflächen in SAP Systemen.

Postby Philippa2744 » Wed May 12, 2004 8:53 am

Moin,

muss ehrlich zugeben, dass mir das noch nicht ganz klar geworden ist. Normalerweise ist es doch so, dass der Report einen internen Modus startet (Rollbereich). Wenn Du dann einen FUBA aufrufst, wird das dortige Rahmenprogramm gestartet in einem weiteren internen Modus.
Der eine Speicherbereich kann in den anderen doch überhaupt nicht reingreifen. Die gemeinsamen Memory-Bereich sind doch einmal das ABAP-Memory und global das SAP-Memory. Auf diese Bereich kann man (m.E.) nur über export bzw. import zugreifen.
Auf die unterschiedlichen Rollbereiche der internen Modi hat man keinen gegenseitigen Zugriff, d.h. nach meinem Verständnis kann ich nicht von dem Report aus auf den gemeinsamen Speicherbereich der Funktionsgruppe zugreifen, dessen Fuba ich in meinem Report aufgerufen habe. Somit habe ich keine Möglichkeit, auf dort global definierte Variablen zuzugreifen und diese (wie im obigen Beispiel) zu clearen!? Oder liege ich falsch?

Ciao, LoLo
Philippa2744
...
...
 
Posts: 303
Joined: Fri Mar 07, 2003 5:17 pm

Postby Willy1492 » Wed May 12, 2004 9:30 am

LoLo hat geschrieben:Somit habe ich keine Möglichkeit, auf dort global definierte Variablen zuzugreifen und diese (wie im obigen Beispiel) zu clearen!? Oder liege ich falsch?Ciao, LoLo

Ja, Du liegst falsch.
Hast Du mal die F1-Hilfe zu ASSIGN gelesen, insbesondere die von mir erwähnte für interne Verwendung vorgesehene Variante?
Oder im Debugger nach Aufruf eines Funktionsbausteins den Inhalt des Feldes
(SAPLfugrname)global_field_name
anzeigen lassen?

Aber man sollte genau wissen, was man tut. Insbesondere wenn man globale Variablen anderer geladener Rahmenprogramme ändert.
Das kann fatale Folgefehler nach sich ziehen, die schwerer zu finden sind als ein z.B. durch Modifikationen am SAP-Standard verursachtes Problem.
Willy1492
....
....
 
Posts: 581
Joined: Tue Dec 03, 2002 4:44 pm

Postby Willy1492 » Wed May 12, 2004 9:36 am

Paint hat geschrieben:Wie kann es denn überhaupt sein, dass nach dem beenden des FuBas SWL_SHOW_PROCESS_DATA diese globale Variable noch gefüllt ist, wenn dieser erneut aufgerufen wird, die müsste sich doch beim beenden automatisch clearen oder?

Nein. Das Rahmenprogramm ist auch nach dem FB-Aufruf noch in der Liste der geladenen Programme (s. Zustandsinfo im Debugger.)
Willy1492
....
....
 
Posts: 581
Joined: Tue Dec 03, 2002 4:44 pm

Postby Willy1492 » Wed May 12, 2004 9:40 am

Paint hat geschrieben:Das klappt irgendwie nicht bei dem include LSWL7TOP. Fehler: Es gibt bereis eine report- oder program- Anweisung

Das Einbinden des Includes kann man noch hinkriegen.
(z.B. indem man vorher per Makro-Definition die Bedeutung einer FUNCTION-POOL-Anweisung verbiegt - das soll aber keine Empfehlung sein, so etwas zu tun!)

Nur hast Du dann trotz gleicher Namen andere Variablen definiert.
Willy1492
....
....
 
Posts: 581
Joined: Tue Dec 03, 2002 4:44 pm

Postby Philippa2744 » Wed May 12, 2004 9:41 am

Moin Frank,

Hatte ich total übersehen. Danke! Wieder etwas dazugelernt. (Verneige mich in tiefer Ehrfurcht ;-) )

Ciao, LoLo
Philippa2744
...
...
 
Posts: 303
Joined: Fri Mar 07, 2003 5:17 pm

Postby Ilaria3634 » Wed May 12, 2004 10:36 am

Sorry irgendwie stehe ich total auf dem Schlauch, was ist daran falsch?
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. ASSIGN &#40;SWL7&#41;G_ARCHIVE_MODE TO <f>.
  2.  
GeSHi ©
Ilaria3634
...
...
 
Posts: 117
Joined: Thu Jul 17, 2003 2:06 pm

Postby Ilaria3634 » Wed May 12, 2004 10:55 am

habs: (SAPLSWL7)g_archive_mode
*vornkopfhau*
Ilaria3634
...
...
 
Posts: 117
Joined: Thu Jul 17, 2003 2:06 pm

Postby Ilaria3634 » Wed May 12, 2004 11:10 am

naja so richtig klappt es doch noch nicht.
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1.   FIELD-SYMBOLS <f>.                                              
  2.   UNASSIGN <f>.                                                    
  3.   data: test&#40;24&#41; value '&#40;saplswl7&#41;g_archive_mode'.                
  4.   ASSIGN test TO <f>.                                              
  5.   " es gibt eine nur für interne Verwendung vorgesehene Variante  
  6.   IF <f> IS ASSIGNED.                                              
  7. * sollte klappen, wenn schon mal ein FB der FUGR aufgerufen wurde  
  8. * Fallunterscheidung:                                              
  9.     CLEAR <f>.                                                    
  10.   ENDIF.                                                          
  11.  
GeSHi ©

beim clear <f> wird (saplswl7)g_archive_mode nicht gecleart.
Ilaria3634
...
...
 
Posts: 117
Joined: Thu Jul 17, 2003 2:06 pm

Postby Alva1590 » Wed May 12, 2004 11:25 am

Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1.   FIELD-SYMBOLS <f>.                                              
  2.   UNASSIGN <f>.                                                    
  3.   data: test&#40;24&#41; value '&#40;SAPLSWL7&#41;G_ARCHIVE_MODE'.                
  4. * ASSIGN test TO <f>.   " Falsch
  5.   ASSIGN &#40;test&#41; TO <f>.
  6. * oder ASSIGN &#40;'&#40;SAPLSWL7&#41;G_ARCHIVE_MODE'&#41; TO <f>.
GeSHi ©


beim clear <f> wird (saplswl7)g_archive_mode nicht gecleart.

Weil Du test initialisiert hast ;)
Alva1590
.....
.....
 
Posts: 4387
Joined: Mon Dec 02, 2002 3:01 pm

Postby Ilaria3634 » Wed May 12, 2004 12:14 pm

Jap, klappt... Danke!!!
Ilaria3634
...
...
 
Posts: 117
Joined: Thu Jul 17, 2003 2:06 pm

Previous

Return to Dialogprogrammierung

Who is online

Users browsing this forum: No registered users and 12 guests