Zufälliges Text-Token
Wertauflöser - Kurzfassung
Zweck: Liefert ein zufälliges Text-Token (String) als hexatrigesimale Darstellung eines zufälligen Long-Werts.
Siehe auch: Zufälliger Long-Wert
Der Zufälliges Text-Token-Wertauflöser liefert ein zufälliges Text-Token (String) zurück.
Das erzeugte Text-Token ist das base36-Abbild eines zufälligen Long-Werts, serverseitig also die hexatrigesimale Darstellung einer 64-Bit-Ganzzahl, deren höchstwertiges Bit das Vorzeichen definiert.
Für die willkürlich als Text-Token bezeichnete Zeichenfolge im Rückgabewert (String) bedeutet das konkret:
Die Zeichenfolge beginnt in ca. 50% der Fälle mit einem Minuszeichen. Für positive Werte wird kein Pluszeichen vorangestellt.
Da die base36-Ziffernfolge keine "führenden Nullen" für den Absolutbetrag verwendet, muss als erstes Zeichen nach dem ggf. vorangestellten Minus eine base36-Ziffer (Definition als Regulärer Ausdruck: [0-9a-z]) erscheinen.
Abhängig vom Absolutbetrag des intern "gewürfelten" Long-Werts folgen darauf bis zu 12 weitere base36-Ziffern ([0-9a-z]).
Die Länge des zurückgegebenen Text-Tokens kann aufgrund des Wertebereichs für Long theoretisch zwischen 1 und 14 Zeichen liegen, wobei 14 Zeichen nur mit dem vorangestellten Minus erreicht werden.
Auch wenn der Rückgabewert mit hoher Wahrscheinlichkeit Zeichenfolgen von 10 oder mehr Zeichen produziert, sollte man das zufällige Auftreten kürzerer Zeichenfolgen zur Laufzeit nicht pauschal vernachlässigen.
►WICHTIG◄ In einem Client Workflow werden nur die niedrigsten 52 Bits des zufälligen Long-Werts verarbeitet. Die höherwertigen Bits werden ignoriert bzw. abgeschnitten. Das schließt auch das Vorzeichen-Bit (Nr. 64) mit ein! Der Wertebereich im Client Workflow ist also auf Ganzzahlen im Intervall [0;2^52[ begrenzt. Ein per Client Workflow erzeugtes Text-Token beginnt daher nie mit einem Minuszeichen und erreicht auch nur eine Länge von maximal 11 Zeichen.
►HINWEIS◄ Wenn eine minimale Textlänge (>1 Zeichen) für den zufälligen Text unbedingt erforderlich ist, muss diese durch weitere Maßnahmen systematisch erzwungen werden. Die Beispiele (unten) demonstrieren mit zwei unterschiedlich aufwändigen Ansätzen, wie das erreicht werden kann.
Konfiguration
Der Zufälliges Text-Token-Wertauflöser ignoriert den Eingabewert und verwendet keine Parameter.
Beispiele
Zufälliges Text-Token mit exakt 14 Zeichen
Die folgende Konfiguration weist der Variablen token eine zufällige Folge von Ziffern und Kleinbuchstaben mit einer Länge von 14 Zeichen zu:
Die Wert-Konfiguration auf der rechten Seite der Setze Wert-Ereignisaktion definiert den zugewiesenen Textwert in drei Schritten:
Die erste Teilzeichenfolge innerhalb des Textverkettung-Wertauflöser wird mit dem Zufälliges Text-Token-Wertauflöser "gewürfelt".
Der Textverkettung-Wertauflöser hängt als zweite Teilzeichenfolge eine statisch definierte Zeichenfolge von 13 Nullen an.
Der verkettete Teilstring-Wertauflöser gibt nur die ersten 14 Zeichen der verketteten Zeichenfolge zurück.
Die angehängten Nullen kompensieren den Umstand, dass der Zufälliges Text-Token-Wertauflöser weniger als 14 Zeichen liefern kann.
►ANMERKUNG◄ Da der Zufälliges Text-Token-Wertauflöser eine Textlänge nur mit Rückgabewerten erreicht, die mit einem Minuszeichen beginnen, endet der "aufbereitete" Token mit dieser Konfiguration immer mit dem Zeichen "0", wenn er nicht mit einem Minuszeichen beginnt.
Zufälliges Text-Token mit beliebig definierbarer Länge
In einer Ereignisbehandlung, soll zuverlässig ein zufälliges Text-Token mit 50 Zeichen erzeugt und der Variablen token zugewiesen werden.
Die rechts dargestellte Konfiguration für eine Für jeden Eintrag wiederholen (Schleife)-Ereignisaktion, greift bis zu 50 mal auf den Zufälliges Text-Token-Wertauflöser zu, um der Variablen token per Verkettung eine ausreichen lange Zeichenfolge zuzuweisen. ►ANMERKUNG◄ Der Variablen token sollte vor Ausführung der Schleife sicherheitshalber "Kein Wert" ($null) bzw. eine leerer String ("") zugewiesen werden. Im Aktionsblock für die Iteration werden folgende Schritte ausgeführt:
►ANMERKUNG◄ Durch den mehrfachen Zugriff auf die innerhalb der Schleife automatisch befüllte Variable $length, kann die token-Länge durch Anpassung des Parameters Wertauflöser für Einträge im Kopf der Schleife bei Bedarf einfach angepasst werden. |
|