Verzweigung nach Metadaten

Aus Helper
Zur Navigation springen Zur Suche springen
Mantiseinträge
 2045
Systemtyp
 22

Beschreibung

Besteht aus einem Serverjob OJOHZDOMetadatenVerzweigung. Trennt die Objekte anhand ihrer Metadaten.

- wenn Bedingung erfüllt ist – DO geht zu HZ_HZ_SEQ1
- wenn Bedingung nicht erfüllt ist – DO geht zu HZ_HZ_SEQ2

Version 0

Die Bedingung kommt in das Feld Bezeichnung und ist in Omnis Code zu schreiben. Einige Beispiele hier:

- len('[Belegnummer]')> 5
- not(isclear(len('[MurdockCode]')))

Version 1

Die Bedingung kommt in das Feld HZ_FORMEL und HZ_VERSION muss 1.00 sein

- len([Sprache])<1


Es ist zudem Möglich die Funktion §OCRMatchCount('<Regex>',pEbene,pSpezialhändling) aufzurufen. Diese Methode gibt die Anzahl Vorkommnisse in allen Files des Objektes zurück. Der Parameter der Funktion ist ein Regex oder auch ein einfacher Text. Es können natürlich Attribute in Eckigen Klammern verwendet werden oder Omnis Befehle um eine Formel zu kreieren.

  • pEbene=0 macht eine Suche im OCR des Objektes, pEbene=1 sucht im OCR der Kinder
  • pSpezialhändling=1 ist eine selten verwendete Spezialfunktion (Grossbuchstaben, Umlaute zu AE,OU,UE, zweites Wort alleine suchen)



Funktionen

Beachte: Die Metadatumsfelder sind hier unbedingt als String ('Metadatum') zu übergeben und nicht wie andersweitig in eckigen Klammern.

§istMin und §istMax

Vergleicht von DO Objekten die Attributswerte des angegebenen Attributs miteinander, und ermittelt ob das DO den grössten oder den kleinsten Wert der verglichenen Objekte besitzt. Alle DO Typen, welchen den gleichen Attributsnamen besitzen, werden für den Vergleich herbeigezogen.
Die Hierarchiestufe der Objekte kann, ausgehend vom Objekt eingeschränkt werden.

Pflicht: Metadatumsname, Hierarchieebene
Optional: Metadatumsname2 (Ohne Metadatumsname2 werden allein die gefundenen Metadaten aus Metadatumsname verglichen, mit werden nur diejenigen Objekte welche den gleichen Wert in Metadatumsname2 haben verglichen).

§istMax(Metadatumsname,Hierachieebene,Metadatumsname2)
§istMax(Metadatumsname,../-2/-1/0/1/2/..,Metadatumsname2)
§istMin(Metadatumsname,../-2/-1/0/1/2/..,Metadatumsname2)

Bsp.:
§istMax('AnzahlDok',1,'Büronummer') Gibt 1 zurück, wenn das Objekt den grössten Wert im Attribut 'AnzahlDok' hat, innerhalb der eigenen Tranche und der gleichen Büronummer. 

Parameter

Metadatumsname: Der Name des Metadatums

Hierachieebene: (Einschränkung)
* 0 = Alle DO des Auftrages (=keine Einschränkung)
* 1 = Alle DO mit dem selben Vorfahren auf Ebene 1 (typischerweise alle Objekte einer Tranche, inklusive der Tranche)
* 2 = Alle DO mit dem selben Vorfahren auf Ebene 2
* 3 = Alle DO mit dem selben Vorfahren auf Ebene 3
* etc.
* -1 = Alle auf der gleichen Ebene wie das DO Objekt, inklusive des Vorfahren 
* -2 = Alle 2 Ebenen höher als das DO Objekt

Metadatumsname2: Schränkt die betrachteten Dos ein. Es werden nur die DO angesehen, die den gleichen Wert im Attribut Metadatumsname2 haben.

§sortierung

Gibt die Sortierreihenfolge des Objektes zurück. Analog zu verwenden wie $min/$max.

§sortierung(Metadatumsname,../-2/-1/0/1/2/.., Metadatumsname2,0/1)
Bsp:
§sortierung('Büronummer',-1,'Metadatumsname2',0)

Parameter

Metadatumsname: Der Name des Metadatums

Hierachieebene: 
* 0 = Alle DO des Auftrages 
* 1 = Alle aus der gleichen gesammthierarchie, bzw. mit den gleichen Vorfahren (z.B. alle Objekte einer Tranche, inklusive der Tranche)
* 2 = Alle mit und unter Ebene 2 
* 3 = Alle mit und unter Ebene 3
* etc.
* -1 = Alle auf der gleichen Ebene wie das DO Objekt, inklusive des Vorfahren
* -2 = Alle 2 Ebenen höher als das DO Objekt

Formel: Beliebige Omnis Formel, z.B. für einen Vergleich weiterer Attribute oder nur von Teilen des Attributs.
 
Sortierreihenfolge: 0 = Aufwärts, 1 = Abwärts

§istEindeutig

Prüft ob für ein DO Objekt ein bestimmtes Metadatum im Vergleich zu weiteren DOs eindeutig ist. Vergleiche sind mit DOs auf wählbarer Hierarchieebene sowie mit gleichem oder abweichendem DO Typ möglich.

§istEindeutig(Metadatumsname, 0/1/2, 0/1/2[,DO Typen])
§istEindeutig(Metadatumsname, Hierarchieebene, Typ-Einschränkung[,'Typ1,Typ2,..'])

Parameter

Metadatumsname: Der Name des Metadatums
Bereich: 0 = Ganzer Auftrag, alle DO dieses Auftrages, 1 =  Alle DO auf Ebene 1, 2 = Alle DO auf Ebene 2
Typ-Einschränkung: 0 = Alle Typen mit dem gleichen Metadatumsname, 1 = Gleicher Typ wie das Vergleichsobjekt, 2 = Alle im zwingend folgenden Parameter angegebenen Typen

Anwendung

§istEindeutig('Verlag',0,0) Alle DO des Auftrages, welche bei einem beliebiegen DO Typ und dem Attribut 'Verlag' das selbe Metadatum besitzen
§istEindeutig('Verlag',1,1) Alle DO auf Ebene 1, welche zum gleichen Typ und dem Attribut 'Verlag' das selbe Metadatum besitzen
§istEindeutig('Verlag',2,0) Alle DO auf Ebene 2, welche bei einem beliebiegen Typ und dem Attribut 'Verlag' das selbe Metadatum besitzen
§istEindeutig('Verlag',2,1) Alle DO auf Ebene 2, welche zum gleichen Typ und dem Attribut 'Verlag' das selbe Metadatum besitzen
§istEindeutig('Verlag',2,2,'Buch, Magazin, Zeitung') Alle DO auf Ebene 2, welche zu den angegebenen Typen 'Buch, Magazin, Zeitung' und dem Attribut 'Verlag' das selbe Metadatum besitzen

Fehleingabe vermeiden:

§istEindeutig('Verlag',2,2) Es wird eine Typeinschränkung (Parameter drei = 2) verlangt, ohne nachfolgende die gesuchten Typen zu nennen.

Weitere Beispiele

§OCRMatchCount('Bericht')>0 ==> Falls das Wort Bericht mindestens 1 Mal gefunden wurde ist der Ausdruck wahr
§OCRMatchCount('[0-9][0-9][.]')=0 ==> Falls KEINE 2 stellige Zahl mit einem Punkt gefunden wird ist der Ausdruck wahr
§OCRMatchCount('[BelegName]')>2 ==> Falls der Wert des Attributes BelegName mehr als 2 mal gefunden wird ist der Ausdruck wahr
§OCRMatchCount('[BelegName]',1)>0 ==> Falls der Wert des Attributes BelegName mindestens einmal im OCR der Kindern gefunden wurde.

Essentielle Felder

 HZ_TESTERGEBNIS Name des Metadatenfeldes in dem das Ergebnis gespeichert wird (0/1). Erlaubt sind auch Attribute des Vater usw. (^). Ohne Eckige Klammern.
 HZ_FORMEL Formel welche Ja (1) oder Nein (0) als Entscheidung zurück gibt.

Pane im Produktionsauftrag