call profile(a[,b],c[,d))
Gruppe |
Ruft das Profil mit dem Namen a synchron oder asynchron per Message auf. Im synchronen Fall wird auf das Ende des Profildurchlaufs gewartet, im asynchronen Fall mit der eigenen Verarbeitung weitergemacht, ohne auf das Ende zu warten. Damit ein Profil mit dieser Funktion aufgerufen werden kann, muss es aktiv sein und mit dem Eingangsagenten Message konfiguriert sein. Bei Profilen mit anderen Eingangsagenten, nicht aktiven Profilen und nicht vorhandenen Profilen liefert die Funktion false zurück. Hat Parameter b den Wert direct, wird das Profil a nicht per Message gerufen und muss keinen Eingangsagenten des Typs Message haben.
Die Daten, die das aufgerufene Profil verarbeiten soll, befinden sich in c. Diese werden mit der Kodierung in d interpretiert und als entsprechender Byte-Strom an das Profil weitergegeben, wenn es einen Eingangsagenten des Typs Message hat. Bei Parameter b=direct, werden die Daten mit der Kodierung des Profils a eingestellt.
Nach erfolgreichem Lauf des gerufenen Profils liefert die Funktion true zurück, bzw. sofort, wenn der Aufruf asynchron war. Bricht das aufgerufene Profil mit einem Fehler ab, wird der Fehler zwar geloggt, das aktuelle Profil aber weiter fortgeführt. Das Ergebnis der Funktion ist in diesem Fall false. Für Parameter b=direct wird ein String mit den konvertierten Daten der aufgerufenen Profils geliefert, dazu muss im aufgerufenen Profil aber die Klasse PassBackDataResponse (Eigene Klasse, Phase 6) verwendet werden. Ist ein Fehler aufgetreten, ist der zurückgegebene String leer.
Parameterbeschreibung
Parameter |
Beschreibung |
a |
Name des zu rufenden Profils. |
b |
(optional) sync für synchronen Aufruf oder async für asynchronen Aufruf oder direct. Default: async |
c |
Daten, die an das Profil übergeben werden. |
d |
(optional) Kodierung für c. Default: 8859_1. Hinweis: Wenn Sie hier den Wert Base64 angeben, dann wird der Wert in Parameter c als Base64-kodiert interpretiert und dekodiert an das Profil gesendet. |
Beispiele
Gegeben seien folgende Profile.
Profilname |
Eingangsagent |
FTP to File |
Cron:Ftp |
Message to FTP |
Message |
FTP to File2 |
Cron:Trigger |
Parameter a |
Parameter b |
Parameter c |
Parameter d |
Gerufenes Profil erfolgreich |
Ergebnis |
FTP to File |
sync |
Data |
|
Information nicht vorhanden. |
false, da das Profil keinen Eingangsagenten des Typs Message hat. |
FTP to File2 |
async |
Data |
|
Information nicht vorhanden. |
false, da das Profil keinen Eingangsagenten des Typs Message hat. |
Message to FTP |
sync |
Data |
|
Ja. |
true |
Message to FTP |
sync |
Data |
|
Nein. |
false |
Message to FTP |
async |
Data |
|
Ja. |
true |
Message to FTP |
async |
Data |
|
Nein. |
true |
Variablen
Die Jobnummer des rufenden Profils wird an das gerufene Profil in der System-Variable MSG_CALL_VAR_JOBNR übergeben. Legen Sie diese Variable im aufgerufenen Profil an, um auf den Wert zuzugreifen.
Tritt eine Exception auf, weil der MessageService nicht erreichbar ist, liefert die Funktion lediglich false zurück, aber die Exception-Fehlermeldung kann über die System-Variable MSG_CALL_VAR_SYS_EXCEPTION abgerufen werden (wenn diese angelegt ist).
Siehe allgemein Abschnitt Übergebene Variablen, Listen und Maps (Profilketten).
Profilketten
Siehe Abschnitt Profilketten.