Abfrage von Konfigurationsparametern
Bei der Abfrage von Konfigurationsparametern muss immer der gesamte Pfad zum Konfigurationsparameter angegeben werden.
Syntax
Session.Config().GetConfigParm("<vollständiger Pfad>")
Wenn in einer Generierungsbedingung in VB.Net-Syntax ein Konfigurationsparameter getestet wird, so liefert die Funktion eine Zeichenkette. Soll dieser Wert gegen einen numerischen Wert verglichen werden, so klappt das nur so lange, wie der Konfigurationsparameter aktiv ist und einen numerischen Inhalt hat. Das liegt an der impliziten Wertart-Konvertierung von VB.Net. Ist der Konfigurationsparameter nicht aktiv, so liefert die Funktion eine leere Zeichenkette (""), die nicht gegen einen numerischen Wert verglichen werden kann, was in einen Laufzeitfehler von VB.Net mündet. Konfigurationsparameterwerte werden daher immer gegen Zeichenketten verglichen.
Nicht zu verwenden:
Session.Config().GetConfigParm("QER\Person\User\DeleteOptions\Homedir")=1
Stattdessen zu verwenden:
Session.Config().GetConfigParm("QER\Person\User\DeleteOptions\Homedir")="1"
Um sicher zu gehen, dass immer ein logischer Wert geliefert wird, sollte die Funktion VID_IsTrue verwendet werden.
Beispiel
If VID_IsTrue(Session.Config().GetConfigParm("QER\Person\User\DeleteOptions\Homedir")) Then ...
Verwandte Themen
Testen auf die Existenz eines bestimmten Datenbank-Eintrages
HINWEIS: Der Test sollte ohne Beachtung von Bearbeitungsberechtigungen erfolgen.
Syntax
Session.Source().Exists("<Tablename>","<WhereClause>")
Beispiel
Session.Source().Exists("Person", "CentralAccount = '" & accnt & "' and uid_person <> '" & uid_person & "'")
Verwandte Themen
Abfrage von globalen Variablen des Session-Objektes
Globale Variablen werden durch das einstellende Programm besetzt. Zusätzlich zu den vordefinierten Variablen können alle Umgebungsvariablen und alle am Session-Objekt definierten kundenspezifischen Variablen verwendet werden. Kundenspezifische Session-Variablen können beispielsweise über Skripte, Methoden oder Customizer definiert werden.
Hinweis: Wird eine kundenspezifische Session-Variable definiert, dann sollte sie anschließend wieder entfernt werden. Andernfalls bleibt sie bei Nachnutzung der Session bestehen und es werden unter Umständen falsche Prozesse generiert.
Syntax
Variables("<Variablenname>")
Beispiel zur Verwendung in den Parametern der Prozessschritten
Value = Variables("GENPROCID")
Value = CBool(Session.Variables("FULLSYNC"))
Tabelle 133: Zulässige vordefinierte globale Variablen
EnvUserName
|
Name des Benutzers in der Umgebung, gegen die authentifiziert wurde, beispielsweise Domain\User bei Active Directory. |
FullSync
|
Die Variable wird von allen Synchronisatoren gesetzt. Werte sind True und False. |
GenProcID |
Unikale ID-Nummer für den Prozess. |
LogonUser |
DialogUser.Username des angemeldeten Benutzers. |
DialogUserUID |
DialogUser.UID_DialogUser des angemeldeten Benutzers. |
UserName |
Der Name, der in XUserInserted bzw. XUserUpdated abgebildet wird. |
UserUID |
Die UID_Person des angemeldeten Benutzers, falls ein personenbezogenes Authentifizierungsmodul benutzt wurde. |
ShowCommonData |
Gibt an, ob Systemdaten angezeigt (Wert = 1) oder nicht angezeigt (Wert = 0) werden. Die Variable wird im Designer über die Programmeinstellung Systeminformationen anzeigen ausgewertet. |
SessionType |
Gibt an, ob eine direkte Datenbankverbindung oder eine Verbindung über Anwendungsserver unterstützt wird.
Nur direkte Datenbankverbindung: '%SessionType%' = 'Direct'
Nur Verbindung über Anwendungsserver: '%SessionType%' = 'AppServer' |
Feature_<Featurename> |
Abfrage zusätzlicher Programmfunktionen (QBMFeature), die für den Benutzer freigeschaltet sind. Der Wert ist 1, wenn die Programmfunktion verfügbar ist, ansonsten ist die Variable nicht gesetzt. |
ManageOutstandingOperation |
Die Variable wird bei der Zielsystemsynchronisation zur Unterscheidung der auszuführenden Operationen bei der Nachbehandlung ausstehender Objekte. Zulässige Werte sind Delete, DeleteState und Publish. |
Verwandte Themen
Verwendung der #LD-Notation
Die #LD-Notation wird zur sprachabhängigen Abbildung von Informationen genutzt. Die #LD-Notation wird vorrangig in der Prozessverfolgung und der Benachrichtigung zur Prozessverarbeitung eingesetzt, kann aber auch in Skripten, die in der Skriptbibliothek abgelegt sind, verwendet werden.
Syntax
Value=#LD[<Sprache>|<Sprachkultur>](<Schlüssel>,{<Parameter>}*)#
wobei:
<Sprache>|<Sprachkultur> |
(Optional) Sprache oder Sprachkultur für die Ausgabe. |
<Schlüssel> |
Basiszeichenkette mit Platzhaltern. Die Syntax der Platzhalter entspricht einem Format-Platzhalter in VB.Net ({0} bis {9}). |
<Parameter> |
Parameter für die Ersetzung der Platzhalter (kommagetrennt). |
Tabelle 134: Verwendung der #LD-Notation
Prozessverfolgung |
Job.ProcessDisplay |
Abbildung auf DialogProcessStep.DisplayName |
JobChain.ProcessDisplay |
Abbildung auf DialogProcessChain.DisplayName |
JobEventgen.ProcessDisplay |
Abbildung auf DialogProcess.DisplayName |
Benachrichtigung zur Prozessverarbeitung |
Job.NotifyAddress |
|
Job.NotifyAddressSuccess |
|
Job.NotifyBody |
|
Job.NotifyBodySuccess |
|
Job.NotifySender |
|
Job.NotifySenderSuccess |
|
Job.NotifySubject |
|
Job.NotifySubjectSuccess |
|
JobRunParameter.ValueTemplate |
Nur in der Prozesskomponente MailComponent. |
Bildungsregeln
|
DialogColumn.Template |
|
DialogColumn.CustomTemplate |
|
Formate
|
DialogColumn.FormatScript |
|
DialogColumn.CustomFormatScript |
|
Methodendefinitionen |
DialogMethod.MethodScript |
|
Einfügewerte
|
DialogObject.InsertValues |
|
DialogTable.InsertValues |
|
DialogTree.ListInsertValues |
|
DialogSheet.InsertValues |
|
Auswahlskripte
|
DialogTable.SelectScript |
|
DialogObject.SelectScript |
|
Skripte für die Prozessgenerierung |
Job.GenCondition |
|
Job.PreCode |
|
Job.ServerDetectScript |
|
JobChain.GenCondition |
|
JobChain.PreCode |
|
Verwandte Themen