Workflow-Eigenschaften

Um Missbrauch der Workfloweigenschaften zuvor zu kommen, gibt es 2 Tabellen in der Entwicklungsdatenbank die für die Workfloweigenschaften von Bedeutung sind:

WFLP - Workfloweigenschaften:
In dieser Tabelle werden alle mögliche Workfloweigenschaften definiert, die überhaupt in den Anwendungen benutzt werden können. Eine genaue Beschreibug finden Sie hier.

BCTP - Geschäftsvorfalltyp-Workfloweigenschaft
In dieser Tabelle wird festgehalten, welche Workfloweigenschaften für welche Geschäftsvorfalltypen verwendet werden können. Um Workfloweingenschaften für alle Geschäftsvorfalltypen freizugeben, benutzen Sie * als Wert für die Spalte BcType.

Die WFLP-Tabelle wird verwendet, um in dem Schnittstellendialog zu spezifizieren, welche Eigenschaften ein Baustein verwendet, oder in dem Baustein gesetzt werden. Die verwendeten Workfloweigenschaften werden dann zur Generierungszeit und auch zur Laufzeit gegen diese Information geprüft.

Die BCTP-Tabelle wird nur zur Laufzeit verwendet, um die Verwendung von Workfloweigenschaften zu prüfen.

WFLP - Workfloweigenschaften

Neben dem Namen der Workfloweigenschaft enthält diese Tabelle auch Informationen darüber, wie diese Eigenschaft zu verwenden ist. Hierzu gibt es die Spalten Flags und SysID.

Flags

Die Spalte Flags enthalt eine Kombination von einem oder mehreren der folgenden Werte:

Flag1)WertBemerkung
TAA_WFLP_NUMERIC 1 Wenn dieser Flag gesetzt ist, wird der Inhalt dieser Eigenschaft als numerischer Wert interpretiert. Ist sie nicht gesetzt, wird der Inhalt als Zeichenfolge interpretiert.
TAA_WFLP_BPPROP 2 Dieser Flag kennzeichnet die Eigenschaft als eine Arbeitsgangeigenschaft, anstatt eine Eigenschaft zum Geschäftsvorfall. Dies hat auch zu Folge, dass der Inhalt nach Beendigung des Arbeitsganges verschwindet. Dieser Flag wird in der Regel nur von bestimmten Systemeigenschaften verwendet.
TAA_WFLP_DATE 4 Wenn dieser Flag gesetzt ist, wird der Inhalt dieser Eigenschaft als Datumswert interpretiert. Der Flag ist kombinierbar mit TAA_WFLP_TIME um den Wert dieser Eigenschaft mit einem Datum und einer Uhrzeit zu versehen.
TAA_WFLP_TIME 8 Wenn dieser Flag gesetzt ist, wird der Inhalt dieser Eigenschaft als Uhrzeitswert interpretiert. Der Flag ist kombinierbar mit TAA_WFLP_DATE um den Wert dieser Eigenschaft mit einem Datum und einer Uhrzeit zu versehen.
TAA_WFLP_TIMESTAMP 16 Wenn dieser Flag gesetzt ist, wird der Inhalt dieser Eigenschaft als Timestamp interpretiert.

SysID

Außerdem enthält diese Tabelle eine Spalte SysID, in der die Workflow-Eigenschaften gekennzeichnet sind, die von der Infrastruktur versorgt werden, oder für die Infrastruktur eine spezielle Bedeutung haben. Wenn diese Spalte einen Wert ungleich 0 enthält, handelt es sich hier um eine Systemeigenschaft, und an Hand des Wertes weiß die Infrastruktur, um welche Systemeigenschaft es sich handelt. Hierdurch kann der Name auch für diese Eigenschaften frei vergeben werden. Folgende Systemeigenschaften sind derzeitig definiert:

Wert Bedeutung
1 GUID des Geschäftsvorfalls, wird intern von der Infrastruktur vergeben.
2 Geschäftsvorfallnr, wird vom Geschichtsbuch (GEVES) vergeben.
3 Geschäftsvorfalltyp, z.B. aus dem Startkonstrukt
4 Verantwortlicher OE für den Geschäftsvorfall.
5 Verantwortlicher Sachbearbeiter für den Geschäftsvorfall.
6 Vermittler, kommt aus Systvar.Gve-Rgs-Vmi
7 Bemerkung, kommt aus Systvar.Gve-Bem
8 Kundennummer, kommt aus Systvar.Kundennummer bzw. Systvar.000-Ptn-K
9 Gesamtordnungsbegriff, kommt aus Systvar.Ordnungsbegriff
10 Infodatum, kommt aus Systvar.Gvf-Inf-D0
11 Firstdatum, kommt aus Systvar.Gvf-Gevo-Fri-D0
12 Arbeitsgangsnummer, besteht aus Geschäftsvorfallnr und einer 4-stelligen fortlaufenden Nummer
13 Arbeitsgangstyp
14 Verantwortlicher OE für den Arbeitsgang
15 Verantwortlicher Sachbearbeiter für den Arbeitsgang
16 Aktuelle Arbeitsgangstatus in GEVES Geschichtsbuchformat, kommt aus Systvar.Vst-Vrg-St-K
17 Datum zu Arbeitsgangstatus, kommt aus Systvar.Vor-St-D0
18 Kommt aus Systvar.Vor-Vrg-Ref-Lnr
19 Benutzerid des aktuellen Sachbearbeiters, kommt aus Systvar.Ben-Ben-ID
20 Anrede des aktuellen Sachbearbeiters, kommt aus Systvar.Epe-Ben-Anr
21 Nachname des aktuellen Sachbearbeiters, kommt aus Systvar.Epe-Ben-Nnam-Nam1
22 Vorname des aktuellen Sachbearbeiters, kommt aus Systvar.Epe-Ben-Vnam-Nam1
23 Kurzname des aktuellen Sachbearbeiters, kommt aus Systvar.Epe-Ben-Nnam-Kurz
24 Durchwahl des aktuellen Sachbearbeiters, kommt aus Systvar.Epe-Duw
25 Angestelltenverhältnis des aktuellne Sachbearbeiters, kommt aus Systvar.Epe-An-Vhael
26 Abteilungsnummer Leben des aktuellen Sachbearbeiters, kommt aus Systvar.Epe-Abt-Nr-L
27 Abteilungsnummer Sach des aktuellen Sachbearbeiters, kommt aus Systvar.Epe-Abt-Nr-S
28 Organisationseinheit des aktuellen Sachbearbeiters, kommt aus Systvar.Org-Oe-K
29 Kurzbezeichnung der Organisationseinheit des aktuellen Sachbearbeiters, kommt aus Systvar.Org-Oe-Kbz
30 Langbezeichnung der Organisationseinheit des aktuellen Sachbearbeiters, kommt aus Systvar.Org-Oe-Bz
31 Telefonnummer der Organisationseinheit des aktuellen Sachbearbeiters, kommt aus Systvar.Org-Oe-Tel
32 Faxnummer der Organisationseinheit des aktuellen Sachbearbeiters, kommt aus Systvar.Org-Oe-Fax
33 Bemerkung zu Organisationseinheit des aktuellen Sachbearbeiters, kommt aus Systvar.Org-Oe-Hinw-Oe
34 Benutzerid für BS2000 des aktuellen Sachbearbeiters, kommt aus Systvar.Epe-Ben-Id-Bs2
35 Benutzerid für das Archiv des aktuellne Sachbearbeiters, kommt aus Systvar.000-Ach-Ben-Id
36 kommt aus Systvar.000-Aufr-Modul
37 kommt aus Systvar.000-Anw-Aufr-Module
38 Prüftage (START-Konstrukt)
39 Bezeichnung des Geschäftsvorfalls
40 Parent-Geschäftsvorfall
41 Verbose Flag
42 Kundenvorname, kann beim Startkonstrukt übergeben werden
43 Kundennachname, kann beim Startkonstrukt übergeben werden
44 Registrierungsdatum
45 Anzahl der unterschiedlichen Sachbearbeiter
46 Anzahl Wechsel der Sachbearbeiter
47 Anzahl Wechsel der verantwortlichen OE für den Geschäftsvorfall
48 Anzahl der unterschiedlichen Organisationseinheiten
49 Anwendung des Geschäftsvorfalltyps
50 Kurzname des Geschäftsvorfalltyps
51 Stufe
52 Name des Webservice, der zur Zeit ausgeführt wird
53 Ausgelöste Methode des Webservice, der zur Zeit ausgeführt wird
54 Gesellschaftsschlüssel des Gesamtordnungsbegriffs, kommt aus Systvar.Vbg-Gss-K
55 Artschlüssel des Gesamtordnungsbegriffs, kommt aus Systvar.X3x-Ob-Art-K
56 Ordnungsbegriff des Gesamtordnungsbegriffs, kommt aus Systvar.Gob-Ob
57
GUID des zuletzt eingestellten Startrequests (siehe TFS134125)
58
Wird der Geschäftsvorfall maschinell ausgeführt? (siehe hier)
59 Empfangsart (siehe hier)2)
60 Sachbearbeiter, der den Gevo angelegt hat (siehe hier)3)
61 OE, in der der Gevo empfangen wurde (siehe hier)4)

Laufzeit

Um zur Laufzeit auf die Workfloweigenschaften zu zugreifen, gibt es neue API Funktionen:

LPCSTR TAAFUNC taaImBcPropertyStringGet (HTAASTME hStme, LPCSTR lpszProp); 
BOO TAAFUNC taaImBcPropertyStringSet (HTAASTME hStme, LPCSTR lpszProp, LPCSTR lpszValue); 
DWORD TAAFUNC taaImBcPropertyDwordGet (HTAASTME  hStme, LPCSTR lpszProp); 
BOOL TAAFUNC taaImBcPropertyDwordSet (HTAASTME hStme, LPCSTR lpszProp, DWORD dwValue); 
LPCSTR TAAFUNC taaImBpPropertyStringGet (HTAASTME hStme, LPCSTR lpszProp); 
BOOL TAAFUNC taaImBpPropertyStringSet (HTAASTME hStme, LPCSTR lpszProp, LPCSTR lpszValue); 
DWORD TAAFUNC taaImBpPropertyDwordGet (HTAASTME hStme, LPCSTR lpszProp); 
BOOL TAAFUNC taaImBpPropertyDwordSet (HTAASTME hStme, LPCSTR lpszProp, DWORD dwValue); 

Die Funktionen, um von COBOL-Modulen aus auf die Workfloweigenschaften zuzugreifen, sind in der TAA_COBOL-Hilfe beschrieben.

Wenn bei dem Aufruf einer dieser Funktionen ein Fehler auftritt, wird eine der folgende Conditions aus der Meldungsgruppe TAAIM1 geraised:

Code Severity Meldungstext Bedeutung
0 Severe Ungültiger Bausteinbezug übergeben. Das Argument hStme ist nicht (mehr) gültig.
1 Severe Unbekannte Workflow-Eigenschaft „%1“. <lpszProp> konnte in der WFLP-Tabelle nicht gefunden werden.
2 Error „%1“ nicht in Bausteinschnittstelle angegeben. <lpszProp> ist nicht in der Schnittstelle des aktuellen Baustein angegeben, und der Zugriff wird deshalb verweiget.
3 Severe „%1“ ist keine Arbeitsgangeigenschaft. Es wird versucht mit einer der taaImBpProperty… Methoden auf eine Workflow-Eigenschaft zu zugreifen, obwohl das Flag TAA_WFLP_BPPROP nicht gesetzt ist.
4 Severe „%1“ ist keine Geschäftsvorfalleigenschaft. Es wird versucht mit einer der taaImBcProperty… Methoden auf eine Workflow-Eigenschaft zu zugreifen, obwohl das Flag TAA_WFLP_BPPROP gesetzt ist.
5 Error „%1“ ist für Geschäftsvorfalltyp nicht definiert. Es konnte keinen EIntrag in der BCTP-Tabelle gefunden werden, der besagt das <lpszProp> in dem aktuellen Geschäftsvorfalltyp freigegeben ist.
6 Severe Ungültiger Zugriff. Es wird versucht eine Workflow-Eigenschaft als Zeichenfolge zu interpretieren, obwohl diese als numerisch gekennzeichnit ist, oder umgekehrt.
7 Error „%1“ kann nicht geändert werden. <lpszProp> kann nicht gesetzt werden, da sie entweder nicht in der Bausteinschnittelle entsprechend gekennzeichnet ist, oder es handelt sich um eine Systemeigenschaft, die von der Infrastruktur versorgt wird.
8 Severe Unbekannte Systemeigenschaft. <lpszProp> ist in der WFLP-Tabelle als ein Systemeigenschaft gekennzeichnet, die der Infrastruktur nicht bekannt ist.

MDB Änderungen

Verwenden Sie folgende SQL Statements für die notwendigen Änderungen in der TAA Metadatenbank. Diese Änderungen gehen von eine Tabelle in der Access MDB aus; wenn die Tabelle nicht in Access gespeichert werden soll, müssen diese Queries entsprechend angepasst werden.

Außerdem muss für die Modultypen, die ihrer Schnittstelle Workflow-Properties referenzieren können sollen, in der Tabelle edbBstn in der Spalte InterfaceDialog der Wert 512 (Hex 200) Bestandteil des Gesamtwertes sein.

sample.sql
INSERT INTO edbBstn ( Name, Bezeichnung, Suffix, Präfix, Zielsystem, Aufrufbar,
		      Baustein_Kategorie, Parent, EdbInt, Version, Interface_Version,
		      Header_Record, Anzahl_Felder, Table_Mode, Flags )
SELECT "WFLP", "Workfloweigenschaft", "GSE", "ASAA", "DMR", 0, 0, "NETW", 38, 1, 0, 1, 4, 1, 16;
INSERT INTO edbTdef ( EdbInt, Feldnummer, Feldname, Cluster, POSITION, Länge, Typ,
		      Rochadetyp, LinkBstn, Redundant, Bezeichnung, Flags )
SELECT 38, 0, "NAME", 1, 0, 32, 1, 0, 0, 0, "Name", 0;
INSERT INTO edbTdef ( EdbInt, Feldnummer, Feldname, Cluster, POSITION, Länge, Typ,
		      Rochadetyp, LinkBstn, Redundant, Bezeichnung, Flags )
SELECT 38, 1, "UMS", 2, 0, 53, 1, 0, 0, 0, "Bezeichnung", 0;
INSERT INTO edbTdef ( EdbInt, Feldnummer, Feldname, Cluster, POSITION, Länge, Typ,
		      Rochadetyp, LinkBstn, Redundant, Bezeichnung, Flags )
SELECT 38, 2, "SYSID", 1, 2, 4, 2, 0, 0, 0, "SystemID", 0;
INSERT INTO edbTdef ( EdbInt, Feldnummer, Feldname, Cluster, POSITION, Länge, Typ,
		      Rochadetyp, LinkBstn, Redundant, Bezeichnung, Flags )
SELECT 38, 3, "FLAGS", 1, 1, 4, 2, 0, 0, 0, "Flags", 0;
CREATE TABLE edbWflp (
	Name VARCHAR (32) NOT NULL,
	Bezeichnung VARCHAR (64),
	SysID INT NOT NULL,
	Flags INT NOT NULL,
	CONSTRAINT PK_edbWflp PRIMARY KEY (
		Name
	)
);
INSERT INTO edbBstn ( Name, Bezeichnung, Suffix, Präfix, Zielsystem, Aufrufbar,
		      Baustein_Kategorie, Parent, EdbInt, Version, Interface_Version,
		      Header_Record, Anzahl_Felder, Table_Mode, Flags )
SELECT "BCTP", "Geschäftsvorfalltyp-Workflowproperty", "GSE", "ASAA", "DMR", 0, 0,
       "NETW", 39, 1, 0, 1, 2, 1, 16;
INSERT INTO edbTdef ( EdbInt, Feldnummer, Feldname, Cluster, POSITION, Länge, Typ,
		      Rochadetyp, LinkBstn, Redundant, Bezeichnung, Flags )
SELECT 39, 0, "BCTYPE", 1, 0, 12, 1, 0, 0, 0, "Geschäftsvorfalltyp", 0;
INSERT INTO edbTdef ( EdbInt, Feldnummer, Feldname, Cluster, POSITION, Länge, Typ,
		      Rochadetyp, LinkBstn, Redundant, Bezeichnung, Flags )
SELECT 39, 1, "WFLP", 1, 1, 32, 1, 0, 0, 0, "Workfloweigenschaft", 0;
CREATE TABLE edbBctp (
	BcType VARCHAR (12) NOT NULL,
	Wflp VARCHAR (32) NOT NULL,
	CONSTRAINT PK_edbBctp PRIMARY KEY (
		BcType,
		Wflp
	)
);
INSERT INTO edbBstn ( Name, Bezeichnung, Suffix, Präfix, Zielsystem, Aufrufbar,
		      Baustein_Kategorie, Parent, EdbInt, Version, Interface_Version,
		      Header_Record, Anzahl_Felder, Table_Mode, Sequenz, Flags )
SELECT "MWFL", "Workfloweigenschaft", "", "", "", 0, 4, "MODL", 312, 1, 0, 920, 2, 4, 10, 0;
INSERT INTO edbTdef ( EdbInt, Feldnummer, Feldname, Cluster, POSITION, Länge, Typ,
		      Rochadetyp, LinkBstn, Redundant, Bezeichnung, Flags )
SELECT 312, 0, "NAME", 1, 0, 32, 1, 0, 0, 0, "Name", 0;
INSERT INTO edbTdef ( EdbInt, Feldnummer, Feldname, Cluster, POSITION, Länge, Typ,
		      Rochadetyp, LinkBstn, Redundant, Bezeichnung, Flags )
SELECT 312, 1, "READONLY", 1, 1, 1, 3, 0, 0, 0, "Readonly", 0;
1)
Die Formate Datum, Uhrzeit und Timestamp werden derzeit nur für die von ExpEdge generierten Basisklassen verwendet. In allen anderen Implementierungen werden die derart markierten Eigenschaften als Zeichenfolge betrachtet und behandelt.
2) , 3) , 4)
Ab V909
faq:allg:wflp · Zuletzt geändert: 13.02.2020 10:49

Copyright © 1992-2020 TeamWiSE Gesellschaft für Softwaretechnik mbH         Adressen |  Kontakt |  AGB |  Datenschutzerklärung |  Impressum