Anwenden einer Funktionstransformation

Mithilfe einer Funktionstransformation können Sie Funktionen auf Zeichenfolgenkategorien, numerische Kategorien, Konvertierungskategorien und „DateTime“-Kategorien anwenden, um das Attribut einer logischen Entität oder einen der Parameter einer übergeordneten Funktionstransformation zu definieren.

  1. Klicken Sie im Assistenten Entitätstransformation auf die Registerkarte Durchsuchen.
  2. Wählen Sie das gewünschte Attribut aus der Attributliste aus.
  3. Wählen Sie den Transformationstyp Funktion aus.
  4. Wählen Sie aus der Dropdown-Liste Kategorie je nach Bedarf eine der folgenden Funktionstransformationen aus:
    • Funktionstransformation String, z. B. die Verkettung von zwei Zeichenfolgenspalten und die linke bzw. rechte Kürzung.
    • Funktionstransformation Numeric, z. B. zum Abrufen des absoluten Wertes einer Zahl aus einer Spalte und zum Zurückgeben einer ASCII- oder Unicode-Ganzzahldarstellung eines Zeichens.
    • Funktionstransformation Conversion, z. B. Konvertieren oder Parsen von Datentypen
    • Funktionstransformation Datetime
      So wenden Sie die Funktionstransformation String an:
      Wählen Sie im Feld Kategorie den Eintrag String aus.
      Wählen Sie den Namen der erforderlichen Zeichenfolgentransformation aus.
      Klicken Sie auf den Pfeil String und verwenden Sie die Option Spalte, Konstante oder Funktion, um die Parameter der Zeichenfolgenfunktion zu definieren. Wenn Sie beispielsweise lcase(string string) als Funktion Name ausgewählt haben, wählen Sie die Zeichenfolge aus, die in Kleinbuchstaben umgewandelt werden soll.
      Anmerkung: Achten Sie bei der Auswahl der Funktion Name darauf, dass der Rückgabetyp der Funktion dem Datentyp der Spalte entspricht, die Sie für die Transformation ausgewählt haben. Der Rückgabetyp wird unter dem Feld Name angezeigt, nachdem Sie den Funktionsnamen ausgewählt haben.
      So wenden Sie die Funktionstransformation Numerican:
      Wählen Sie im Feld Kategorie den Eintrag Numeric aus.
      Wählen Sie den Namen der erforderlichen numerischen Transformation aus.
      Klicken Sie auf den Pfeil Nummer und verwenden Sie die Option Spalte, Konstante oder Funktion, um die Parameter der numerischen Funktion zu definieren. Wenn Sie beispielsweise abs(integer number) als Funktion Name ausgewählt haben, wählen Sie die ganze Zahl aus, die in ihren absoluten Wert umgewandelt werden soll.
      Anmerkung: Achten Sie bei der Auswahl der Funktion Name darauf, dass der Rückgabetyp der Funktion dem Datentyp der Spalte entspricht, die Sie für die Transformation ausgewählt haben. Der Rückgabetyp wird unter dem Feld Name angezeigt, nachdem Sie den Funktionsnamen ausgewählt haben.
      So wenden Sie die Funktionstransformation Conversion an:
      Wählen Sie im Feld Kategorie den Wert Konvertierung aus.
      Wählen Sie den Namen der erforderlichen Konvertierungstransformation aus. Optionen zum Angeben des zu konvertierenden Werts und des Zielausgabeformats werden unter dem Feld Name angezeigt. Wenn Sie beispielsweise parsedouble(string double, string format) als Funktion Name auswählen, werden die Optionen double und format angezeigt, um den Wert und das Format anzugeben.
      Klicken Sie auf double und verwenden Sie die Option Spalte, Konstante oder Funktion, um die ausgewählten Konvertierungsfunktionsparameter zu definieren.
      Anmerkung: Achten Sie bei der Auswahl der Funktion Name darauf, dass der Rückgabetyp der Funktion dem Datentyp der Spalte entspricht, die Sie für die Transformation ausgewählt haben. Der Rückgabetyp wird unter dem Feld Name angezeigt, nachdem Sie den Funktionsnamen ausgewählt haben.
      Wählen Sie das Format, in das der Quellwert konvertiert werden soll, indem Sie eine der folgenden Ziel-Optionen verwenden: Spalte, Konstante oder Funktion. Weitere Informationen finden Sie unter Unterstützte Datentypen für Konvertierungstransformationen.
      Anmerkung: Das Format entspricht dem Standardschema, das in Java Decimal-Formaten spezifiziert ist. Beispiele für Typ und Wert finden Sie in dieser Tabelle, wenn Sie für die Formatangabe die Option Konstante wählen:
      Tabelle 1. DecimalFormat.java-Ausgabe
      Wert Pattern Ausgabe Beschreibung
      123456,789 ###.###,### 123.456,789 Das Nummernzeichen (#) steht für eine Ziffer, der Punkt ist ein Platzhalter für das Gruppierungstrennzeichen und das Komma ist ein Platzhalter für das Dezimaltrennzeichen.
      123456,789 ###,## 123456,79 Der Wert hat drei Ziffern nach dem Dezimalkomma, das Muster jedoch nur zwei. Die Formatmethode löst dies durch Aufrunden.
      123,78 000000,000 000123,780 Das Muster gibt vorangehende und nachfolgende Nullen an, da anstelle des Nummernzeichens (#) das Zeichen 0 verwendet wird.
      12345,67 ###.###,### $ 12.345,67 $ Das letzte Zeichen im Muster ist das Dollarzeichen ($). Beachten Sie, dass es in der formatierten Ausgabe durch ein Leerzeichen getrennt am Ende steht.
      Anmerkung: Weitere Informationen zu Dezimalformaten finden Sie unter https://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html und zu Sonderzeichen für Zahlenmuster unter https://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html.
  5. Klicken Sie auf OK.
    Die angewandte Funktionstransformation wird unterhalb des Attributs angegeben.
    Anmerkung: Klicken Sie zum Löschen des Mappings auf . Klicken Sie zum Verwerfen der in diesem Popup-Fenster vorgenommenen Aktualisierungen auf die Schaltfläche Abbrechen.
  6. Klicken Sie auf OK.
    Die Mappings werden auf der Seite Mapping erstellen angezeigt.
  7. Klicken Sie zum Speichern von Details auf der Seite Mapping erstellen auf Speichern.

Beispiel 1: Anwenden der Funktionstransformation „Zeichenfolge“

Wenn Sie beispielsweise Leerzeichen rechts von jedem Wert der Spalte ItemName in der Relation demo_Customers1 des Physical Models kürzen und die gekürzten Werte in die verknüpfte Spalte Name in der Relation Product des Logical Models einfügen möchten, müssen Sie wie folgt vorgehen:
  1. Wählen Sie die Product-Relation auf der Arbeitsfläche aus.
  2. Klicken Sie im Bereich Transformationen neben der Spalte Name auf , und wählen Sie im Popup-Fenster Transformation der Spalte „NAME“ die Option Funktion aus.
  3. Wählen Sie in der Dropdown-Liste Kategorie den Eintrag String aus.
  4. Wählen Sie in der Dropdown-Liste Name die Funktion rtrim(string string) aus.
  5. Die Funktion String wird zu dem Popup-Fenster unter den Eingabefeldern hinzugefügt. Klicken Sie auf diese Funktion, und definieren Sie die Parameter, auf die diese Funktion angewendet werden soll über die Option Spalte so, dass der resultierende Datentyp des Parameters eine Zeichenfolge ist.
  6. Klicken Sie auf OK.
Die angewendete Funktionstransformation wird auf der Arbeitsfläche wie folgt dargestellt:

Beispiel 2: Anwenden der Funktionstransformation Numeric
  1. Wählen Sie die Spalte productid in der Produktrelation auf der Seite Mapping erstellen.
  2. Klicken Sie im Bereich Transformationen neben der Spalte productid auf und wählen Sie im Popup-Fenster Transformation von Spalte „productid (integer)“ die Option Funktion aus.
  3. Wählen Sie in der Dropdown-Liste Kategorie den Eintrag String aus.
  4. Wählen Sie in der Dropdown-Liste Nameabs(integer number) aus. Die Option zum Angeben der erforderlichen Zahl wird unter dem Feld Name angezeigt.
  5. Klicken Sie auf den Zahlenpfeil und verwenden Sie die Spaltenoption, um die Spalte CustID (Integer) der Relation customer_car im Physical Model FramworkDB2 auszuwählen.
  6. Klicken Sie auf OK.

    Dieses Mapping wird auf der Arbeitsfläche angezeigt.