CIB merge technischer Leitfaden
6. Aufrufparameter im Detail
6.52. Parameter --old-compare
Mit diesem Parameter kann die neue Interpretation von Bedingungen abgeschaltet werden.
Syntax
--old-compare=<Option>
--alter-Vergleich=<Option>
<Option>: +, - oder „“
Beschreibung
MS-Office hat mit neueren Versionen einen erweiterten Funktionsumfang im automatischen Vergleich von Datentypen bekommen. Dieser hat eine Erneuerung in CIB merge (seit Version 3.8.126) erforderlich gemacht. Kunden die ein älteres (konservatives) Vergleichsverfahren wünschen, können dies über den --old-compare Aufrufparameter erwirken.
Die Abschaltung der neuen Interpretation von Bedingungen kann über den Parameter --old-compare gesteuert werden. Der Parameter kann über die “AUTOSTART” - Funktionalität (ab Merge 3.9.104 und 3.8.130) für alle Mischläufe gesetzt werden. Dazu kann die "AUTOSTART" – Parameterdatei per Hex-Editor direkt in die Binär-Datei gepatcht werden oder die Umgebungsvariable "CIB_MRGAUTOSTART" mit dem Parameterdateiname gesetzt werden.
Spezifikation
Der Parameter heißt „OLD-COMPARE“. Alternativ kann auch „ALTER-VERGLEICH“ angegeben werden. Wie bei allen Merge - Parametern wird die Groß-/Kleinschreibung nicht berücksichtigt.
Für <Option> sind folgende Werte möglich:
Option |
Bedeutung |
+ |
CIB merge interpretiert die Bedingungen, wie in den vergangenen Versionen (bis 3.9.127 bzw. 3.8.126): Beide Seiten eines Vergleichs (Bedingung) haben einen „Daten-Typ“, passt der Typ nicht zusammen, ist das Ergebnis „false“. Auswertungen werden keine vorgenommen, Wildcards sind nicht zulässig. |
- |
Standardeinstellung. CIB merge interpretiert die Bedingungen nach dem aktuellen Vergleichsverfahren: Der auf der linken Seite verwendete Daten-Typ gibt an wie verglichen wird:
|
„“ |
gleiche Wirkung wie die Option „+“. |
Beispiel
--old-compare=+
CIB merge interpretiert die Bedingungen nach dem alten Vergleichsverfahren.
{compare …} |
Erläuterung |
Auswertung ohne Schalter |
Auswertung mit Schalter --old-compare=+ |
1.1.2004 = 01.01.2004 |
Vergleich als Kalenderdatum |
1 |
|
„1.1.2004“ = 01.01.2004 |
Vergleich als Text, weil links Anführungszeichen stehen. |
0 |
|
1.1.2004 = „01.01.2004“ |
Vergleich als Datum, weil die rechten Anführungszeichen nicht stören. |
1 |
0 |
1 = 01 |
Vergleich als Zahl |
1 |
1 |
„1“ = 01 |
Vergleich als Text, weil links Anführungszeichen stehen. |
0 |
0 |
1 = „01“ |
Vergleich als Zahl, weil die rechten Anführungszeichen nicht stören |
1 |
0 |
Betrag < „10.000 €“ |
Vergleich als Text, weil rechts Anführungszeichen stehen |
1 |
1 |
Höhe > 3,5m |
Vergleich als Zahl mit 3,5 |
1 |
1 |
Betrag < EUR10000 |
Vergleich als Text, weil 10000 nicht am Anfang steht. |
1 |
1 |
Betrag < „EUR 10000“ |
Vergleich als Text, weil 10000 nicht am Anfang steht. |
1 |
1 |
1.1.2004 = 1 |
Vergleich als Zahl, weil rechts kein Datum erkannt wurde. Wenn rechts kein Datum erkannt wird, wird versucht beide Seiten als Zahl zu interpretieren. |
0 |
0 |
1+1 = 2 |
Vergleich als Zahl, wobei der Ausdruck 1+1 nicht ausgewertet wird. (Also: 1 = 2) |
1 |
0 |
„Test Wild“ = „*W??d” |
„*“ und „?“ werden als gewöhnliche Zeichen interpretiert (ergibt also 0) |
1 |
0 |