Verzweigung nach Metadaten
- 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 Attribute des gewählten Attributsnamens 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, aussgehend vom Objekt, erweitert oder 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.