Ansicht
Dokumentation
C14WF_WORKFLOWS_START - EHS: die Workflow-Abläufe im EH&S starten
Addresses (Business Address Services) General Material DataDiese Dokumentation steht unter dem Copyright der SAP AG.
Workflow im EH&S-System: Einführung
(Dokument für den Kunden (Rohfassung vom 25.2.99))
Anmerkung zum Dokument:
Dieses Dokument beschreibt in erster Linie die EH&S-spezifischen Funktionalitäten im Zusammenhang mit dem Thema
Workflow Es soll keine
Dokumentation der Workflow-Funktionalität im SAP-System an sich sein. Letztere ist bereits ausführlich
im SAP-Standard dokumentiert. Diese Dokumentation kann folgendermaßen angezeigt werden:
Starten Sie die Transaktion SWLD
Rufen Sie den Menüpunkt Hilfe -> Hilfe zur Anwendung auf.
Im untenstehenden Text wird bei Bedarf auf diese Standarddokumentation verwiesen.
Version 1 (Stand 25.2.1999):
Unter dem Sammelbegriff 'EH&S-Workflow' sind eine Reihe von Werkzeugen zusammengefaßt, die den Kunden bei der Erstellung von
Workflow-Definitionen (siehe
Standarddokumentation) innerhalb des EH&S-Systems unterstützen sollen. In der 1. Version wird
dabei vor allem die Pflege von Eigenschaften von Stoffen automatisiert. Ganz grob gesprochen finden
folgende Vorgänge beim Anlegen, Starten und Abarbeiten von Workflow-Abläufen statt (eine detailierte Beschreibung der einzelnen Punkte folgt weiter unten):
1.
Der Kunde legt zunächst eine Workflow-Definition an, indem er einfach die EH&S-Beispiel-Workflow-Definition
EHS_DEMO kopiert. Er erhält auf diese Weise eine Workflow-Definition mit einem einzelnen Workflow-Schritt
(siehe Standarddokumentation). Dieser ruft eine EH&S-Standard-Methode zur Bearbeitung von Stoffeigenschaften
auf. Der Kunde muß nun seine Workflow-Definition manuell nachbearbeiten um unter anderem festzulegen,
welche zuständigen Sachbearbeiter vom Workflow-Schritt benachrichtigt werden sollen. Ferner legt er im EH&S-Customizing fest:
- Bei welchen Ereignissen der Workflow gestartet werden soll
(z.B. nur bei Änderungen an Identifikatoren oder an der
Eigenschaft 'Dichte').
- Welche Eigenschaften von den Sachbearbeitern gepflegt werden
sollen, falls der Workflow sie benachrichtigt. Diese Liste
von Eigenschaften wird 'Aufgabenprofil' genannt und dem
Workflow-Schritt zugeordnet.
2.
Ein Hintergrund-Job des EH&S-Systems läuft periodisch (z.B. jede Nacht) ab und sammelt zunächst alle
Änderungsbelege
auf, die aufgrund von Änderungen an Stoffdaten seit dem letzten Start des Jobs erzeugt worden sind.
3.
Der Job prüft nun für jeden geänderten Stoff nach, ob an ihm eine workflow-relevante
Änderung gemacht worden ist. Dazu zieht er die Ereignisse heran, die der Kunde in Punkt 1. im
EH&S-Customizing seiner Workflow-Definition zugeordnet hat. Alle Stoffe, die diese Prüfung bestanden
haben, werden in einer sog. Stoffmenge zusammengefaßt, die dann dem Workflow des Kunden übergeben wird. Schließlich startet der Job den Workflow.
4.
Der Workflow-Ablauf erzeugt nun für jede Kombination
( Stoff der Stoffmenge, Eigenschaft im Aufgabenprofil )
ein Workitem (siehe
Standarddokumentation), das an alle Sachbearbeiter geschickt wird, die der Kunde in Punkt 1. seiner
Workflow-Definition zugeordnet hat. Die Sachbearbeiter finden die Workitems als Mails in ihrem Posteingang vor.
5.
Wenn nun ein Sachbearbeiter ein solches Workitem ausführt, so wird direkt der Bewertungsdialog
der Transaktion 'Stoff bearbeiten' des EH&S-Systems für die zugehörige Kombination (Stoff,
Eigenschaft) angezeigt, und der Sachbearbeiter kann die Eigenschaft des Stoffes prüfen und korrigieren.
(Hier gemachte Änderungen erzeugen natürlich ebenfalls Änderungsbelege, die dann beim nächsten Lauf des Hintergrund-Jobs zu neuen Workflows führen können.)
Es folgt nun die Beschreibung der obenstehenden Punkte im Detail.
zu 1.
Der Kunde legt eigene Workflow-Definitionen am bequemsten an, indem er die EH&S-Beispiel-Workflow-Definition
EHS_DEMO (mit dem internen Schlüssel WS11200006) kopiert. (Dies geschieht mit der Transaktion
SWLD. Zum Kopieren und Pflegen von Workflow-Definitionen betrachte man die Standarddokumentation.) Er
kann so beliebig viele Definitionen anlegen. Der Kunde erhält so eine Workflow-Definition, die
aus einem Schritt (mit der internen Nummer 000004) besteht. (Diesem Schritt ist die Standardaufgabe
(siehe Standarddokumentation) EHS_DEMO_TSK (mit dem internen Schlüssel TS11200005) zugeordnet.
(In der hier beschriebenen Version 1 des EH&S-Workflows darf es in einer Workflow-Definition nur höchstens einen Workflow-Schritt geben, der auf diese Standardaufgabe verweist!))
Der Kunde muß nun die Bearbeiterzuordnung seines Workflow-Schrittes pflegen. Dazu wird der Workflow-Schritt mit einer sog.
Planstelle im Modul HR
verknüpft. (Dies wird ausführlich in der Standarddokumentation beschrieben.) Auf diese
Weise legt er fest, welche Sachbearbeiter vom Workflow-Schritt benachrichtigt werden sollen. Insbesondere
hat der Kunde dazu die Rubriken 'Bearbeiterzuordnung' und 'Zuständige' seines Workflow-Schrittes manuell zu überarbeiten.
Desweiteren muß der Kunde einige Einstellungen im EH&S-Customizing pflegen, die er seiner
Workflow-Definition zuordnet. Zunächst einmal ordnet er der Definition eine sog. Startbedingung
mit dem Customizing-Punkt 'Startbedingung festlegen' zu. (Bei diesem Punkt ist eine ausführliche
Dokumentation hinterlegt worden.) Insbesondere ist hier bei den Feldern 'Standardobjekttyp', 'Objektid
Standardobjekt' die Workflow-Definition einzutragen. Zum Beispiel könnte man die Werte WS bzw. 11200006 in die jeweiligen Felder eintragen.
Die Startbedingung enthält zum einen eine Liste von sog. Startereignissen (die mit 'oder'
verknüpft werden). Hier legt der Kunde fest, wann der Workflow für einen Stoff gestartet
werden soll. (Der in Punkt 2. erwähnte Hintergrund-Job ermittelt die Stoffe, an denen seit seinem
letzten Lauf Daten geändert worden sind. Der Job übergibt die Stoffe den Workflow-Abläufen
und startet diese dann. Ein Stoff wird aber nur dann einem Workflow-Ablauf übergeben, wenn er
dessen Startbedingung erfüllt!) Z.B. könnte man bei einer Startbedingung die Startereignisse
ESTRI (Identifikatoren), SAP_EHS_1013_001 (Aggregatzustand),
SAP_EHS_1013_005 (Dichte)
eintragen. Dies würde dann konkret folgendes bedeuten:
Ein Stoff wird genau dann dem Workflow-Ablauf übergeben,
- wenn einer seiner Identifikatoren geändert wurde, oder
- wenn er bei der Eigenschaft 'Aggregatzustand' geändert wurde, oder
- wenn er bei der Eigenschaft 'Dichte' geändert wurde.
Zum Beispiel würde dann
ein Stoff dem Workflow-Ablauf übergeben, wenn eine der folgenden Datenänderungen an ihm vorgenommen worden sind:
- Der Text einer seiner Identifikatoren wurde geändert (innerhalb der
ersten 132 Zeichen oder im Langtext).
- Die Stofflistenzuordnung einer seiner Identifikatoren wurde
geändert.
- Zur Eigenschaft 'Aggregatzustand' wurde eine neue Bewertungsinstanz
angelegt.
- Die Beurteilung einer Bewertungsinstanz zur Eigenschaft
'Aggregatzustand' wurde geändert.
- Ein Freitext einer Bewertungsinstanz zur Eigenschaft 'Dichte' wurde
geändert.
Zum anderen enthält die Startbedingung eine Liste von Bewertungsarten. Ein Stoff besteht eine Startbedingung nur dann, wenn er in jeder Bewertungsart, die in der Liste vorkommt, bewertet ist.
Schließlich kann man bei einer Startbedingung noch einen User-Exit hinterlegen, um die obigen Prüfungen noch durch selbstprogrammierte zu ergänzen.
Als nächstes ordnet der Kunde seinem Workflow-Schritt ein sogenanntes Aufgabenprofil mit
dem Customizing-Punkt 'Aufgabenprofil festlegen' zu. (Bei diesem Punkt ist eine ausführliche
Dokumentation hinterlegt worden.) Dieses Profil besteht im wesentlichen aus einer Liste von Bewertungsarten.
Für jeden Stoff, der dem Workflow-Schritt zur Bearbeitung übergeben wird und für
jede Bewertungsart in der Liste wird ein Workitem generiert und an die zuständigen Sachbearbeiter
geschickt. (In der hier beschriebenen Version 1 des EH&S-Workflows darf es zunächst nur ein Aufgabenprofil
pro Workflow-Definition geben.) Insbesondere ist hier bei den Feldern 'Standardobjekttyp', 'Objektid
Standardobjekt', 'Knotennummer' der Workflow-Schritt einzutragen. Zum Beispiel könnte man die Werte WS bzw. 11200006 bzw. 4 in die jeweiligen Felder eintragen.
Anmerkung: Die Startereignisse und Bewertungsarten der Startbedingungen und Aufgabenprofile können bequem mit dem Eigenschaftsbaum gepflegt werden.
zu 2.
Der Kunde muß den Report RC1WFSUB als Hintergrund-Job einplanen. (Dies ist in
dem Customizing-Punkt 'Job zum Start des Workflows einrichten' ausführlich beschrieben.) Der
Job könnte dann z.B. jede Nacht um 23:55 Uhr eingeplant werden. Er selektiert alle Änderungsbelege,
die aufgrund von Änderungen an Stoffdaten seit seinem letzten Lauf erzeugt worden sind. Der Job
merkt sich den Zeitpunkt seines letzten Laufs in den beiden Umgebungsparametern WF_SUB_DATE_FROM und
WF_SUB_TIME_FROM. Wird der EH&S-Workflow zum ersten Mal beim Kunden eingerichtet, so muß in diese
Parameter manuell ein sinnvoller Zeitpunkt eingetragen werden (z.B. das aktuelle Tagesdatum und die
aktuelle Uhrzeit). Der Job überschreibt dann diese Parameterwerte bei jedem Lauf mit dem Zeitpunkt
seines Starts. Außerdem muß noch der Umgebungsparameter WF_SUB_FLG_ACTIVE manuell gesetzt
werden. Mit ihm kann der EH&S-Workflowkomplett ein- oder ausgeschaltet werden. (Das Einrichten der Umgebungsparameter
ist im Customizing-Punkt 'User-Exit und Umgebungsparameter prüfen' ausführlich beschrieben.)
zu 3.
Der Hintergrund-Job ermittelt aus den Änderungsbelegen die Stoffe, an denen Änderungen
vorgenommmen wurden. Dann prüft er für jeden Stoff, ob dieser die Startbedingung der Workflow-Definition
des Kunden erfüllt. Alle Stoffe, die diese Prüfung bestanden haben, werden dann dem Workflow übergeben, und der Job startet den Workflow mit dem Funktionsbaustein
SAP_WAPI_START_WORKFLOW. Der Job startet nur solche Workflows, zu denen eine Startbedingung im EH&S-Customizing gepflegt wurde!
zu 4.
Für jede Kombination Stoff <-> Bewertungsart im Aufgabenprofil wird ein Workitem
generiert und an die zuständigen Sachbearbeiter geschickt. Ein Sachbearbeiter kann dann ein Workitem
annehmen (siehe Standarddokumentation). Es erscheint dann nur noch in seinem Posteingang und verschwindet aus den Eingängen der anderen Sachbearbeiter.
zu 5.
Führt ein Sachbearbeiter mit dem Druckknopf 'Ausführen' ein Workitem aus,
so wird der Bewertungsdialog der Transaktion 'Stoff bearbeiten' gestartet, und der Sachbearbeiter kann
die zum Workitem gehörige Stoffeigenschaft prüfen und korrigieren. Korrekturen an den
Daten werden dabei genauso verarbeitet und verbucht, als wäre der Sachbearbeiter direkt über
die Dialoge Recherche, Trefferliste, Eigenschaftsbaum der Transaktion 'Stoff bearbeiten' (CG02) in den
Bewertungsdialog hinein navigiert. (Programmtechnisch wird tatsächlich intern vom Workitem dasselbe
ABAP-Coding gerufen, das auch der Eigenschaftsbaum ruft, wenn er den Benutzer in den Bewertungsdialog
führen will.) Insbesondere werden diegleichen Änderungsbelege erzeugt, die dann wieder
zu neuen Workflows beim nächsten Lauf des Hintergrund-Jobs führen können. Wird
der Bewertungsdialog von einem Workitem aus gestartet, so ist es aus technischen Gründen leider
nicht möglich in die übergeordneten Dialoge Recherche, Trefferliste, Eigenschaftsbaum,
... zu navigieren. Dafür erscheint ein zusätzlicher Druckknopf 'Workitem-Kontext'. Dieser
Druckknopf soll dem Sachbearbeiter Informationen darüber liefern, warum er das Workitem erhalten
hat. In der hier beschriebenen Version 1 des EH&S-Workflows wird hier eine Liste von Änderungsbelegen
angezeigt. Es handelt sich dabei um diejenigen Änderungsbelege, die der Hintergrund-Job bei seinem
letzten Lauf zum aktuellen Stoff ermittelt hat. In diesen Belegen ist also auf jeden Fall auch diejenige
Änderung protokolliert, die zur Generierung des Workitems geführt hat. Beendet der Sachbearbeiter
den Bewertungsdialog, so erscheint ein kleines Popup (das von der Standard-Workflow-Komponente des SAP-Systems
angezeigt wird), das ihn fragt, ob er das Workitem endgültig beenden oder später mit seiner Bearbeitung fortfahren ('Abbrechen') will.
Anmerkung: Das direkte Anzeigen des Bewertungsdialoges steht dem Kunden auch als BOR-Methode für
selbstprogrammierte Workflow-Schritte zur Verfügung. Es handelt sich dabei konkret um die Methode
ValuationDialogCall des BOR-Objekttypen Substance (mit dem internen Schlüssel BUS1077). Beim Aufruf der Methode sollten mindestens die Parameter ISubid und IEstcat befüllt werden.
Behandlung von Änderungsnummer und Stichtag im EH&S-Workflow:
Bei den Änderungsbelegen wird (seit Release EHS 2.5a) vermerkt, mit welcher Änderungsnummer
und mit welchem Stichtag die Änderung durchgeführt wurde. Der Hintergrund-Job, der ja
die Stoffe ermittelt, die seit seinem letzten Lauf geändert worden sind, ermittelt genauer alle
Kombinationen ( Änderungsnummer, Stichtag, Stoffschlüssel ), die die Änderungen
repräsentieren. Tatsächlich werden dann diese dem Workflow-Ablauf zur Abarbeitung übergeben. Es wird daher genauer zu jeder Kombination
( Änderungsnummer, Stichtag, Stoffschlüssel, Bewertungsart im
Aufgabenprofil )
ein Workitem generiert. Beim Ausführen des Workitems wird der Bewertungsdialog dann zu dieser
Änderungsnummer und zu diesem Stichtag gerufen. (Der Sachbearbeiter wird darüber bei Beginn seiner Arbeit mit einer entsprechenden Meldung informiert.)
------------------------------------------------------------------------
Ergänzende Anmerkungen und Hinweise zu Workflow
Hat man in einem eine Workflow-Definition durch Kopieren angelegt, so ist es mitunter erforderlich (z.B.
in einem Testsystem) das organisatorische Umfeld des SAP-Systems aufzufrischen, bevor man die neue Definition benutzen kann. Das organisatorische Umfeld kann wie folgt aufgefrischt werden:
Transaktion SWUS
-> Druckknopf 'Organisatorisches Umfeld auffrischen'
Bei der Pflege der Bearbeiterzuordnungen einer Workflow-Definition,
die durch Kopieren aus EHS_DEMO (WS11200006) enstanden ist, empfehlen
wir Ihnen die folgende Vorgehensweise:
Zunächst einmal müssen Sie die Bearbeiterzuordnung der gesamten
Workflow-Definition pflegen. Dazu lassen Sie sich die Grunddaten
der Definition anzeigen und klicken die Funktion
Zusätze -> Bearbeiterzuordnung -> Pflegen
an. Hier legen Sie generell fest, wer überhaupt die erzeugten
Workitems der Workflow-Definition ausführen darf. Wir empfehlen
Ihnen hier die Definition als generelle Aufgabe zu kennzeichnen:
Bearbeiten -> Eigenschaften ... , 'Generelle Aufgabe' .
Dann ist die Bearbeiterzuordnung des Workflow-Schrittes (000004)
zu pflegen. Hier sollten Sie innerhalb des Rahmens 'Bearbeiter' die
Felder 'Zuständige' (und evtl. auch noch 'Ausgeschlossene') pflegen.
Dies ist die Stelle, wo Sie genau festlegen, welche Sachbearbeiter
die Workitems, die von dem Workflow-Schritt generiert werden, erhalten
sollen.
Desweiteren ist auch noch die Rubrik 'Bearbeiterzuordnung' im Rahmen
'Eigenschaften der Aufgabe' zu pflegen. Dazu müssen Sie einfach den
gelb gekennzeichneten Druckknopf 'Bearbeiterzuordnung f. Aufgabe'
anklicken. Bitte beachten Sie: Sie pflegen jetzt die
Bearbeiterzuordnung der Aufgabe EHS_DEMO_TSK (TS11200005)! Diese
Aufgabe ist allen(!) Workflow-Definitionen zugeordnet, die Sie
mittels Kopieren aus EHS_DEMO (WS11200006) erstellt haben. Aus diesem
Grunde empfehlen wir Ihnen die Aufgabe als generelle Aufgabe zu
kennzeichnen. Dies geht auf die gleiche Weise, wie bei der gesamten
Workflow-Definition.
Damit sind die Pflegemaßnahmen bezüglich der Bearbeiterzuordnung
abgeschlossen. In Testsystemen ist es nun noch erforderlich die
organisatorischen Umfelder der Komponenten der Workflow-Definition
zu aktualisieren. Dazu gehen Sie wie folgt vor:
- Starten Sie die Transaktion SWUS.
- Tragen Sie in das Feld 'Aufgabe' den Wert TS11200005 ein.
- Drücken Sie den Druckknopf 'Organisatorisches Umfeld auffrischen'.
- Tragen Sie nun in das Feld 'Aufgabe' die interne Nummer WS... Ihrer
neu angelegten Workflow-Definition ein.
- Drücken Sie den Druckknopf 'Organisatorisches Umfeld auffrischen'.
- Beenden Sie die Transaktion SWUS.
Die Pflege der Bearbeiterzuordnung der Aufgabe EHS_DEMO_TSK
(TS11200005) sowie das Aufrischen ihres organisatorischen Umfeldes
muß natürlich nur einmal durchgeführt werden.
------------------------------------------------------------------------
Anlegen eines Demonstrationsbeispiels für den Workflow im EH&S
(Stand: 12.11.99)
Folgendes einfaches Szenario soll mittels Workflow im EH&S abgebildet werden:
Die physikalisch-chemische Eigenschaft 'Löslichkeit in Wasser' eines Stoffes wird von einem Sachbearbeiter geändert. Der Workflow im EH&S prüft dann, ob bei diesem Stoff zusätzlich auch noch die physikalisch-chemische Eigenschaft 'Dichte' gepflegt ist. Ist dies der Fall, so wird der Sachbearbeiter vom Workflow aufgefordert, die Eigenschaft 'Stabilität in Wasser' bei den Angaben zur Verteilung und zum Verbleib in der Umwelt bei dem Stoff zu überprüfen.
Um dieses Szenario beispielhaft zu implementieren, sind folgende Maßnahmen im System durchzuführen:
Als erstes ist ein Stoff anzulegen, bei dem die Eigenschaften 'Löslichkeit in Wasser', 'Dichte' und 'Stabilität in Wasser' gepflegt sind.
Als zweites muß der Workflow im EH&S generell aktiviert und eingerichtetwerden, falls dies noch
nicht geschehen ist. Dazu müssen bei den untenstehenden Umgebungsparametern die folgenden Einträge vorgenommen werden:
Parameter Wert
---------------------------------------------------------------
WF_SUB_FLG_ACTIVE X
WF_SUB_DATE_FROM (Tagesdatum im internen Format YYYYMMDD)
WF_SUB_TIME_FROM (aktuelle Uhrzeit im internen Format HHMMSS)
Dies geschieht im Customizing (Transaktion SPRO, F5-Taste) mit dem Knoten 'Umgebungsparameter festlegen':
5 Environment, Health & Safety
5 Produktsicherheit
5 Grundeinstellungen
0 EH&S Language Support einstellen
0 Codepages dem Betriebssystem zuordnen
0 Umgebungsparameter festlegen <--
Nun muß die EH&S-Beispiel-Workflow-Definition aktiviert werden, falls dies noch nicht geschehen
ist. Dazu ist die Transaktion PFTC_DIS aufzurufen. Dort trägt man auf dem angezeigten Bild folgendes ein
Aufgabentyp WS
Aufgabe 11200006
und klickt den Druckknopf 'Anzeigen' an. Es erscheint das Bild 'Workflow-Muster Anzeigen'. Nun sind der Reihe nach folgende Aktionen durchzuführen:
- Springen -> Alphanumerischer Editor -> Aktuelle Version
- Doppelklick auf den Eintrag 000004
- Doppelklick auf den Eintrag TS11200005
- Zusatzdaten -> Bearbeiterzuordnung -> Pflegen
- Angezeigten Eintrag markieren und Druckknopf 'Eigenschaften ...'
anklicken
- 'Generelle Aufgabe' auswählen und Enter drücken
- mit dem grünen Pfeil zum Bild 'Workflow-Muster Anzeigen'
- Zusatzdaten -> Bearbeiterzuordnung -> Pflegen
- Angezeigten Eintrag markieren und Druckknopf 'Eigenschaften ...'
anklicken
- 'Generelle Aufgabe' auswählen und Enter drücken
- Transaktion beenden
- Transaktion SWUS aufrufen
- TS11200005 im Feld 'Aufgabe' eintragen und den Druckknopf
'Organisatorisches Umfeld auffrischen' anklicken, Enter
- WS11200006 im Feld 'Aufgabe' eintragen und den Druckknopf
'Organisatorisches Umfeld auffrischen' anklicken, Enter
- Transaktion beenden
Nun ist das Customizing des Workflows im EH&S zu pflegen. Zu pflegen sind hier die beiden Punkte 'Startbedingung
festlegen' und 'Aufgabenprofil festlegen'. Diese sind wie folgt zu finden (Transaktion SPRO, F5-Taste):
5 Environment, Health & Safety
5 Produktsicherheit
4 Grundeinstellungen
4 Stoffverwaltung
4 Phrasenverwaltung
4 Berichtsgenerierung
4 Berichtsverwaltung
4 Berichtsversand
4 Stoff-/Berichtsauskunft
5 Schnittstellen
4 Import und Export
4 EH&S Application Link Enabling (ALE)
4 EH&S ArchiveLink
5 EH&S Workflow
0 User-Exit und Umgebungsparameter prüfen
0 Startbedingung festlegen <--
0 Aufgabenprofil festlegen <--
Beim Punkt 'Startbedingung festlegen' sind folgende Einträge vorzunehmen:
Bez. Start Kurztext OT Objektid
------------------------------------
WF_TEST Demonstration WS 11200006
Rubrik 'Startereignisse':
Stoffbewertungsart
------------------
SAP_EHS_1013_016 (techn. Name der Stoffbewertungsart
'Löslichkeit in Wasser')
Rubrik 'Bewertungsarten der Startbedingung':
Stoffbewertungsart
------------------
SAP_EHS_1013_005 (techn. Name der Stoffbewertungsart
'Dichte')
Beim Punkt 'Aufgabenprofil festlegen' sind folgende Einträge
vorzunehmen:
Aufgprof. Kurztext OT Objektid Knotennummer
------------------------------------------------
WF_DEMO_P Demonstration WS 11200006 4
Rubrik 'Bewertungsarten des Aufgabenprofils':
Stoffbewertungsart
------------------
SAP_EHS_1017_002 (techn. Name der Stoffbewertungsart
'Stabilität in Wasser')
Man kann nun wie folgt Workitems erzeugen:
Man ändert die Eigenschaft 'Löslichkeit in Wasser' des zu Anfang angelegten Stoffes und
sichert die Änderung. Dann kann man die Stoffverwaltungstransaktion beenden. Als nächstes
startet man (z.B. mit der Transaktion SE38) den Report RC1WFTST. Auf seinem Selektionsbild braucht man
nichts zu ändern und drückt dann einfach die F8-Taste. Nun ist das Workitem erzeugt worden.
Um es zu anzuzeigen und auszuführen ruft man die Transaktion SO01 auf und klickt den Druckknopf
'Workflow' an. Das Workitem ist nun zu sehen und hat die Beschreibung 'Stoffeigenschaft bearbeiten'.
Man selektiert es und drückt den Druckknopf 'Ausführen'. Auf diese Weise gelangt man in
den Pflegedialog der Eigenschaft 'Stabilität in Wasser' des zu Anfang angelegten Stoffes. Mit
dem Druckknopf 'Workitem-Kontext' erhält man Informationen darüber, warum das Workitem
erzeugt wurde. Man kann nun die Eigenschaft wie gewohnt pflegen. Beim Beenden des Workitems erscheint
ein Popup mit dem Titel 'Benutzerbestätigung'. Klickt man hier 'Abbrechen' an, so bleibt das Workitem erhalten.
------------------------------------------------------------------------
Beispiel für ein Workflowprojekt (Degussa, Feb. 2001):
Beispiel
------------------------------------------------------------------------
Beschreibung des Bausteins C14WF_WORKFLOWS_START
Funktionalität aus der Sicht des Aufrufers
Allgemeines
- Der Start der Workflow-Abläufe innerhalb des EH&S-Systems wird durch einen Hintergrund-Job durchgeführt, der regelmäßig in einer vom Kunden festzulegenden Zeitperiode (z.B. jede Nacht um 0:00 Uhr) die Abläufe startet. Der Job startet den Report RC1WFSUB. Dazu befüllt er zuvor aus der Datenbank die Stoffmengen der Abläufe (siehe dazu auch die Struktur RCG_SUBSTANCE_SET). Die Logik dieses Hintergrund-Jobs ist vollständig innerhalb dieses Funktionsbausteines abgelegt.
Schnittstelle
- Eingabe
- -
- Ausgabe
- -
Sonstiges
- -
Grobe Beschreibung der Ablauflogik
Vorbedingungen
- -
Ablauf
-
Der Hintergrund-Job kennt den Zeitpunkt seines letzten Aufrufs und hat nun die Aufgabe alle Änderungen an Stoffdaten, die im Zeitintervall
] Zeitpunkt des letzten Aufrufs, aktueller Zeitpunkt ]
durchgeführt wurden, in die Stoffmengen der Workflow-Abläufe zu überführen und die Abläufe dann zu starten. Dazu geht er im einzelnen wie folgt vor:
Zunächst werden alle Stoffe ermittelt, bei denen im Zeitintervall Änderungen vorgenommen wurden.
-
Dann werden alle Änderungsbelege zu diesen Stoffen ermittelt, die im obigen Zeitintervall erstellt
wurden. Die Belege werden zu einer Menge verdichtet, die aus Tupeln der folgenden Gestalt besteht:
(Änderungsnummer, Stichtag, Stoffschlüssel, Tabellenname,
Tabellenschlüssel)
(Der Stichtag ist der Tag, zu dem die Änderung gemacht wurde.) Diese verdichtete Menge wird nun Element für Element wie folgt logisch in die Stoffmenge überführt:
- Die Felder Änderungsnummer, Stichtag, werden in die allgemeinen Daten geschrieben. (Dabei wird der Stichtag in das Feld VALFR eingetragen.)
- Der Stoffschlüssel wird in den Stoffschlüssel der Stoffmenge geschrieben.
- Nun ist die Unterkomponente der Stoffmenge zu befüllen. Ist der Tabellenname in der Liste 'ESTRH', 'ESTRR', 'ESTRI', 'ESTMJ' enthalten, so wird dieser direkt in die Unterkomponente geschrieben. Ist er gleich 'ESTVH' oder gleich einer untergeordneten Tabelle der ESTVH, so wird in die Unterkomponente der Name der aktuellen Eigenschaft eingetragen. (Dieser befindet sich in der Tabelle ESTVH.) In jedem anderen Fall wird der Name der übergeordneten Tabelle in die Unterkomponente eingetragen.
- Als nächstes wird der Standardteil der Zusatzinformation befüllt. Dazu werden alle Datensätze ermittelt, die zum Tabellenschlüssel im oben erwähnten Tupel gehören bzw. ihm übergeordnet sind. (Dabei werden die Daten zum Stichtag des Tupels gelesen.) (Beispiel: Zu einem Tabellenschlüssel in der ESTRL werden die zugehörigen Datensätze in den Tabellen ESTRL, ESTRI, ESTRH ermittelt.) Diese Datensätze werden dann in die entspr. Felder der Zusatzinformation geschrieben. Desweiteren wird mittels der Änderungsbelege zum Tabellenschlüssel der älteste Stand innerhalb des obigen Zeitintervalls ermittelt und ebenfalls in die Zusatzinformation geschrieben. So kann man erkennen, was sich seit dem letzten Start des Hintergrund-Jobs an den Daten geändert hat. (Dazu werden im Intervall die ältesten Positionen ermittelt, die eine Änderung ('update') protokolliert haben. Sie enthalten die ältesten Werte der Felder.) (Bem.: Die Protokollierung der ältesten Stände erfolgt erst zu einem späteren Relese (Holger M., 12.2.99).)
- In die Art der Änderung der Stoffmenge wird die jüngste Aktion ('anlegen', 'ändern', 'löschen') geschrieben die zum aktuellen Tabellenschlüssel durchgeführt wurde.
- Schließlich wird der Kundenteil der Zusatzinformation durch den Aufruf eines User-Exit-Bausteines befüllt.
-
(Bem.: Die Übergabe der Stoffmenge an die Workflow-Abläufe, so wie oben beschrieben, erfolgt erst zu einem späteren Release (Holger M. , 26.2.99).)
-
Anhand der Unterkomponentenwerte können nun die Elemente der Stoffmenge auf die einzelnen Workflow-Definitionen
verteilt werden. (Ein Element wird einer Workflow-Definition zugeordnet, wenn der Wert seiner Unterkomponente
mit dem Startereignis übereinstimmt, und wenn das Element die Startbedingung der Workflow-Definition
erfüllt.) Ist die Stoffmenge für eine Workflow-Definition nicht leer, so wird der Workflow-Ablauf gestartet.
Nachbedingungen
- -
mögliche Ausnahmen
- -
Beispiel
Das Workflow-Muster EHS_DEMO (WS11200006) dient als Beispiel (und weitere Kopiervorlage) für einen Workflow im EH&S.
Hinweise zur Wartung des Bausteines
Der eigentliche Start der Workflow-Abläufe wird technisch durch den Baustein C14WF2_CONT_FILL_WORKFL_START veranlaßt.
Ist I_FLG_SMALL_SUB_SET gesetzt, so wird nur eine vom Datenvolumen her reduzierte Stoffmenge generiert. (In späteren Versionen wird dieser Parameter zurückgesetzt.) (Konkret wird das Befüllen der Zusatzkomponente der Stoffmenge unterdrückt, da diese Daten zur Zeit (26.2.99) noch nicht verwendet werden.)
Weiterführende Informationen
Das Workflow-Muster EHS_TEMPLATE (WS11200002) kann als Kopiervorlage zum Anlegen von Workflows verwendet werden.
Beispiel für den technischen Ablauf eines Workflows
Bei der Neuanlage eines Stoffes mittels Workflow-Unterstützung werden intern folgende Vorgänge gestartet:
Zunächst beginnt ein Sachbearbeiter damit einen Stoff anzulegen und einige elementare physikalische Eigenschaften (wie z.B. die Dichte und den Schmelzpunkt) zu pflegen. Dann ist seine Arbeit beendet, und es ist nun die Aufgabe der ihm nachgeordneten Sachbearbeiter, den Stoff vollends fertig zu pflegen. Diese sollen dazu mittels Workflow an die noch zu pflegenden Eigenschaften herangeführt werden.
Die Pflegearbeiten des ersten Sachbearbeiters erzeugen einige Änderungsbelege, die Änderungen an den Tabellen ESTRH, ESTVH und ESTVA (und evtl. noch weiteren Tabellen) protokollieren. Über Nacht startet nun der Hintergrund-Job, der die Workflow-Abläufe zu aktivieren hat. Er sammelt die entstandenen Änderungsbelege auf und befüllt anhand dieser Belege eine Stoffmenge, die innerhalb der 'lokalen Daten' des Jobs deklariert ist (und im Hauptspeicher liegt). Die Stoffmenge enthält im Feld 'Unterkomponente' die Information, daß eine Veränderung an einem Stoffkopf vorgenommen wurde, und daß an diversen Eigenschaften (die namentlich aufgeführt werden) Pflegeaktionen stattgefunden haben. Diese Informationen benutzt der Hintergrund-Job, um zu entscheiden, welche Workflow-Abläufe überhaupt für einen Start in Frage kommen. (Dazu betrachtet er die logischen Startereignisse, die bei den Startbedingungen der Abläufe hinterlegt sind.) Ferner werden die Daten der geänderten Sätze (aktueller Stand, ursprünglicher Stand) in die Stoffmenge eingetragen.
Wir nehmen nun an, daß eine Workflow-Definition 'Sekundäreigenschaften pflegen' im System angelegt wurde, deren Aufgabe es ist, einen angelegten Stoff, dessen elementare physikalische Eigenschaften bereits gepflegt wurden, mit den nötigen Sekundäreigenschaften zu vervollständigen. Eine solche Workflow-Definition könnte im einfachsten Fall aus einem einzigen Workflow-Schritt bestehen. Diesem Schritt ist die Standardmethode zur Bearbeitung von Stoffeigenschaften (siehe Baustein C107TS_VALUATION_DIALOG_CALL), sowie ein Aufgabenprofil zugeordnet, das genau aus den Sekundäreigenschaften besteht. Der Workflow-Definition sei das logische Startereignis 'ESTRH' zugeordnet.
Der Hintergrund-Job erkennt nun, daß er evtl. diesen Workflow starten muß. Er prüft
zunächst einmal, ob der angelegte Stoff die Startbedingung der Workflow-Definition erfüllt.
Ein Stoff erfüllt die Startbedingung genau dann, wenn jede in der Bedingung aufgeführte
Eigenschaft bei ihm gepflegt ist, und wenn im Zeitintervall am Stoff an mindestens einer dieser Eigenschaften eine Änderung vorgenommen wurde (dieser Punkt muß allerdings explizit über das Kennzeichen
Änderung in Bewertungsarten erforderlich
bei der Startbedingung eingeschaltet werden), oder falls der bei der Startbedingung hinterlegte User-Exit den Stoff akzeptiert. (Dies ist im Baustein
C14WF_SUB_CHECK_BY_START_COND
implementiert.) Dann stellt er alle Elemente der Stoffmenge zusammen, die zum angelegten Stoff gehören,
und übergibt sie dem zu startenden Workflow-Ablauf. Schließlich startet er den Ablauf. Der Workflow-Ablauf bildet das kartesische Produkt
Stoffe der Stoffmenge x Eigenschaften des Aufgabenprofils
und generiert zu jedem Tupel
dieses Produktes ein Workitem. Ein Sachbearbeiter erhält aber nur dann ein Workitem, wenn er
auch die notwendigen Berechtigungen dazu besitzt. Per Doppelklick auf das Workitem wird er in die entsprechende
Eigenschaft geführt. Zusätzlich kann der Sachbearbeiter sich die relevanten Änderungsbelege ansehen und einen Text, den der Startbedingungs-User-Exit evtl. geschrieben hat.
Parameter
I_FLG_ENV_PARAMS_RESET_ONLYI_FLG_ITEMS_WITH_CHNGD_PROPS
I_FLG_SMALL_SUB_SET
I_TASK
I_USERNAME
Ausnahmen
ILLEGAL_INPUTINTERNAL_ERROR
Funktionsgruppe
C14WFGeneral Data in Customer Master rdisp/max_wprun_time - Maximum work process run time
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 36975 Date: 20240523 Time: 151514 sap01-206 ( 696 ms )