Workflow Protokoll

Benutzeroberflächen in SAP Systemen.

Workflow Protokoll

Postby Ilaria3634 » Tue May 11, 2004 1:21 pm

Hallo,

ich habe folgendes Problem. Bei uns gibt es eine Transaktion, über die sich die User spezielle Workflowprotokolle anzeigen lassen können. Das funktioniert so weit auch sehr gut. Doch nun werden einige Protokolle archiviert und müssen deshalb anders aufgerufen werden. Ich nutze hierbei den FuBa SWWX_SELECT_ARCHIVED_FLOW das klappt auch sehr gut, doch wenn danach ein nicht archiviertes Protokoll über den FuBa SWL_WI_DISPLAY aufgerufen werden soll, klappt dieses nicht, da die globale Variable "g_archive_mode" der Funktionsgruppe SWL7 immer noch ein 'X' enthält. Wie kann ich diese globale Variable clearen? Es ist wirklich sehr dringend!!!

Danke und Gruß
Paint
Ilaria3634
...
...
 
Posts: 117
Joined: Thu Jul 17, 2003 2:06 pm

Postby Philippa2744 » Tue May 11, 2004 2:23 pm

Moin,

normalerweise kannst Du dann auf globale Variablen zugreifen, wenn Dein Baustein in derselben Funktionsgruppe ist (und damit Zugriff auf die global definierten Variablen hat). Du musst mal in der betreffenden Funktionsgruppe nachschauen, wo die globale Variable definiert ist (meistens ein Include). Wenn Du diesen Include in Deinem eigenen FUBA/Programm includierst, hast Du Zugriff auf die Variable und kannst sie dann auch clearen.

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

Postby Ilaria3634 » Tue May 11, 2004 2:36 pm

Das klappt irgendwie nicht bei dem include LSWL7TOP. Fehler: Es gibt bereis eine report- oder program- Anweisung
Ilaria3634
...
...
 
Posts: 117
Joined: Thu Jul 17, 2003 2:06 pm

Postby Philippa2744 » Tue May 11, 2004 2:46 pm

Is zwar dreckig, aber müsste funktionieren. Häng mal Deinen eigenen Baustein in dieselbe Funktionsgruppe, das müsste gehen. Damit müsstest Du dann ebenfalls Zugriff auf die globale Variable haben.

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

Postby Ilaria3634 » Tue May 11, 2004 3:02 pm

Es muss doch noch eine andere Möglichkeit geben. Das krieg ich so nie an unserer QS vorbei.
Ilaria3634
...
...
 
Posts: 117
Joined: Thu Jul 17, 2003 2:06 pm

Postby Ilaria3634 » Tue May 11, 2004 3:05 pm

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?
Ilaria3634
...
...
 
Posts: 117
Joined: Thu Jul 17, 2003 2:06 pm

Postby Philippa2744 » Tue May 11, 2004 3:35 pm

Wüsste nicht, dass das anders geht. Schau mal hier:

http://help.sap.com/saphelp_webas630/he ... ameset.htm

Du findest alles relevante dazu unter:
ABAP Programmiersprache -> Modularisierungtechniken -> Prozeduren -> Funktionsbausteine.
Dort insbesondere 'Organisation von externen Prozeduraufrufen'

aus der Doku:
In Funktionsgruppen kann kein gemeinsamer Datenbereich (COMMON PART) deklariert werden und Funktionsgruppen verwalten eigene Tabellen-Arbeitsbereiche (TABLES). Funktionsgruppen kapseln also Daten vor dem Aufrufer von Funktionsbausteinen und stellen somit eine Vorstufe zu den Klassen von ABAP Objects dar (siehe Von Funktionsgruppen zu Objekten).

Alle Funktionsbausteine einer Funktionsgruppe haben gemeinsamen Zugriff auf die globalen Daten der Gruppe. Deshalb sollten solche Funktionsbausteine in einer Funktionsgruppe zusammengefaßt werden, die mit den gleichen Daten arbeiten. Beispielsweise können alle Funktionsbausteine, die auf eine bestimmte interne Tabelle zugreifen, in einer Gruppe zusammengefaßt werden, in der die interne Tabelle global definiert wird.


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

Postby Ilaria3634 » Tue May 11, 2004 3:37 pm

Das ist mir ja schon klar, aber ich benutze ja 2 StandardFuBas: SWL_WI_DISPLAY, SWWX_SELECT_ARCHIVED_FLOW.
Ilaria3634
...
...
 
Posts: 117
Joined: Thu Jul 17, 2003 2:06 pm

Postby Ilaria3634 » Tue May 11, 2004 3:40 pm

es muss doch ne möglichkeit geben diese variablen alle auf ihren initialwert zu setzten, wenn ich meinen report beende und neu starte sind die variablen der fubas ja wieder initial.
Ilaria3634
...
...
 
Posts: 117
Joined: Thu Jul 17, 2003 2:06 pm

Postby Willy1492 » Tue May 11, 2004 6:43 pm

Die Variable wird an keiner Stelle wieder initialisiert.
Bist Du sicher, dass Du die richtigen FBs aufrufst?
(Freigegeben sind sie ja alle nicht, daher hast Du auch keinen Anspruch auf Support seitens SAP, es sei denn, Du kannst den Fehler im SAP-Standard reproduzieren.
Dabei könnte der Verwendungsnachweis helfen.)

Als Notlösung (korrekte Implementierung und Prüfung auf Nebeneffekte bleibt Dir überlassen) hilft evtl:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. ...
  2. UNASSIGN <f>.
  3. ASSIGN ... TO <f>. " es gibt eine nur für interne Verwendung vorgesehene Variante
  4. IF <f> IS ASSIGNED.
  5. * sollte klappen, wenn schon mal ein FB der FUGR aufgerufen wurde
  6.  
  7. * Fallunterscheidung:
  8.   IF ...
  9.     <f> = 'X'.
  10.   ELSE.
  11.     CLEAR <f>.
  12.   ENDIF.
GeSHi ©
Willy1492
....
....
 
Posts: 581
Joined: Tue Dec 03, 2002 4:44 pm

Next

Return to Dialogprogrammierung

Who is online

Users browsing this forum: No registered users and 18 guests