v Wenn Sie vorhaben, ein benutzerdefiniertes Makro über mehrere Datenbanken
hinweg einzusetzen, ist es unter Umständen besser, einen IBM Ausdruck zu ver-
wenden anstatt auf direktes SQL zurückzugreifen. Direktes SQL ist in der Regel
datenbankspezifisch.
v Wenn ein benutzerdefiniertes Makro direktes SQL und ein anderes benutzerdefi-
niertes Makro enthält, wird zunächst das benutzerdefinierte Makro aufgelöst,
ausgeführt und der Wert zurückgegeben, bevor der direkte SQL-Code ausge-
führt wird.
v In Campaign werden Kommas als Trennzeichen für Parameter behandelt. Wenn
Sie in einem Parameter Kommas als Text verwenden möchten, müssen Sie den
Text wie im folgenden Beispiel illustriert in geschweifte Klammern ({}) einschlie-
ßen:
TestCM( {STRING_CONCAT(UserVar.Test1, UserVar.Test2) } )
v Campaign unterstützt die einfache Ersetzung von Parametern in Benutzerdefi-
nierten Makros mit Hilfe von direktem SQL-Code. Wenn Sie beispielsweise in ei-
nem Ablaufdiagramm ein Auswahlprozessfeld mit der folgenden Abfrage ein-
richten:
exec dbms_stats.gather_table_stats(tabname=> <temptable>,ownname=>
'autodcc')
fügt Campaign anstelle des Tokens <temptable> erfolgreich den Namen der ak-
tuellen temporären Tabelle ein. Beachten Sie, dass die einfachen Anführungszei-
chen um den Tabellennamen erforderlich sind.
In den folgenden Tabellen wird erläutert, wie Campaign benutzerdefinierte Makros
in Abfragen und abgeleiteten Feldern behandelt.
Benutzerdefinierte Makros in Abfragen und abgeleiteten Feldern (Prozesse
"Auswählen", "Segmentieren" und "Zielgruppe")
Typ des benutzerdefinierten
Makros
Direktes SQL: IDs
Direktes SQL: IDs + Value
IBM Ausdruck
In einer Direkt-SQL-Abfrage (Prozesse "Auswählen", "Segmentieren" und "Ziel-
gruppe")
Verwendung
Wird als eigenständige Abfrage ausgeführt. Die ID-Liste
wird mit anderen Ergebnissen zusammengeführt.
Wenn ein benutzerdefiniertes Makro andere
benutzerdefinierte Makros und direktes SQL enthält, wer-
den zuerst die benutzerdefinierten Makros aufgelöst und
ausgeführt. Anschließend wird der direkte SQL-Code aus-
geführt.
Es wird erwartet, dass der Rückgabewert in einem Aus-
druck oder Vergleich verwendet wird.
Wird der Wert nicht auf diese Art eingesetzt, wird von
Campaign ein Wert ungleich null bei einer ID-Auswahl als
TRUE ausgewertet. Ein Wert gleich null oder eine
Zeichenkette ergeben FALSE.
Der Ausdruck wird aufgelöst und die Syntax wird über-
prüft. Es wird eine Abfrage pro Tabelle unterstützt und die
IDs werden verglichen / zusammengeführt.
Kapitel 11. Gespeicherte Objekte
237