Die meisten Regelausdrücke haben nur einen Wert. Sie beginnen mit einem Benutzerattributwert (der möglicherweise leer ist) und resultieren in einem Kontoattributwert (der möglicherweise auch leer ist). Manchmal ist es jedoch sinnvoll, einen leeren Benutzerattributwert als 0-Wert anzusehen. Manchmal ist es möglicherweise sinnvoll, mehrere Werte zu generieren, um einen Kontoattributwert mit mehreren Werten zu füllen.
Die folgende Regelsyntax lässt die Arbeit mit Null oder mehr Werten zu, die ein Benutzerattribut enthalten kann:
%*var%
Der optionale Platzhalter für mehrwertige Flags (*) direkt nach dem ersten Prozentzeichen % eines Regelausdrucks gibt an, dass das Ergebnis dieses Regelausdrucks aus 0, 1 oder mehr als 1 Wert bestehen sollte, je nachdem wie viele Werte das referenzierte Benutzerattribut enthält.
Die meisten Benutzerattributwerte haben einen Wert, d. h. sie können nur 0 oder 1 Werte enthalten. Bei den benutzerdefinierten Attributen (CustomField01 bis CustomField99) handelt es sich hingegen um mehrwertige Attribute, d. h. eine Regelvariable, die diese Attribute referenziert, kann 0, 1 oder mehr als 1 Wert enthalten.
Wenn ein Benutzerattribut mehr als einen 1 Wert hat, Sie jedoch das Sternchen (*) im Regelausdruck auslassen, entspricht das Ergebnis der Regelauswertung dem des ersten Werts. In den meisten Fällen sind Attributwerte offiziell nicht geordnet, d. h. es ist nicht vorhersehbar, welchen Wert CA Identity Manager als ersten Wert einstuft.
Wenn ein Benutzerattribut mehr als einen Wert enthält und * im Regelausdruck enthalten ist, werden mehrere Werte für das Kontoattribut generiert. Sie sollten einen solchen mehrwertigen Regelausdruck nicht in einer Kontovorlage definieren, wenn das Kontoattribut, das aus dem Attribut dieser Kontovorlage festgelegt wird, selbst nicht mehrwertig ist.
Sie können ein erweitertes Kontoattribut im ADS-Endpunkttyp als mehrwertig definieren und mit Hilfe dieser Syntax für mehrwertige Regelausdrücke das Attribut festlegen. Stellen Sie sich z. B. eine Umgebung vor, die ein erweitertes ADS-Kontoattribut mit der Bezeichnung "Patente" definiert, und das dritte benutzerdefinierte Benutzerattribut trägt auch die Bezeichnung "Patente".
Eine ADS-Kontovorlage würde für das Attribut "Patente" die Regelzeichenfolge %*UCU03% definieren. Anschließend könnten Sie das benutzerdefinierte Attribut "Patente" ändern, indem Sie einen oder mehre Werte hinzufügen. Wenn Sie nun diese Änderungen auf den Benutzer anwenden, aktivieren Sie die Option zur Aktualisierung der Konten des Benutzers. Daraufhin wird die Kontovorlage des Kontos überprüft und die Regelvariable %*UCU03% gefunden. Die Anwendung weiß dadurch, dass alle Patente des Benutzers auf das Kontoattribut für Patente kopiert werden sollen.
Auf dieselbe Weise werden beim Erstellen von Konten Regelzeichenfolgen ausgewertet. Wenn darüber hinaus während der Änderung einer Kontovorlage die Regelzeichenfolge geändert wurde, können Sie wahlweise die Regel für alle Konten neu berechnen, denen die Kontovorlage zugeordnet ist.
Die Syntax %*var% ist auch für Variablen var aussagekräftig, die sich auf einwertige Benutzerattribute beziehen. Das trifft nur zu, wenn Konkatenierung verwendet wird und die referenzierten Attribute für Benutzer nicht festgelegt wurden.
Der optionale mehrwertige Platzhalter für Flags (*) gibt an, dass die Regel mit einer %*var%-Regelvariablen bei der Auswertung keine Werte ergibt, wenn das Benutzerattribut keine Werte enthält. Das unterscheidet sich vom einwertigen Regelausdruck %var%, der bei der Auswertung immer einen einzelnen Wert ergibt, selbst wenn es sich dabei um eine leere Zeichenfolge handelt.
Um diesen Unterschied zu verstehen, betrachten Sie die folgenden Regelzeichenfolgen:
(310)%UP% (310)%*UP%
Beide Regelzeichenfolgen hängen anscheinend die Vorwahl 310 an die Telefonnummer. Sie unterscheiden sich jedoch, denn wenn ein Benutzer keinen Wert für die Telefonnummer hat, wird der Kontowert der ersten Regel als (310) ausgewertet. Die zweite Regelzeichenfolge generiert keinen Wert, d. h. das Kontoattribut bleibt nicht festgelegt.
Auf der anderen Seite, bedenken Sie die folgenden Regelzeichenfolgen, die anscheinend die Durchwahlnummer an die Telefonnummer anhängen:
%UP% %UPE% %UP% %*UPE%
Wenn jeder eine Telefonnummer hat, aber einige keine Durchwahlnummern, dann generiert die erste Regelzeichenfolge einen Wert, der die Telefonnummer für jeden Benutzer ohne Durchwahlnummer enthält. Die zweite Regelzeichenfolge generiert keine Werte. Verwenden Sie in diesem Fall die erste Regel mit %UPE%.
|
Copyright © 2015 CA Technologies.
Alle Rechte vorbehalten.
|
|