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. Wählen Sie auf der Seite Mapping erstellen <Name des logischen Modells> die Entität aus, die dem Attribut entspricht, auf das der transformierte Wert angewendet werden soll. Klicken Sie anschließend auf die einklappbare Registerkarte Transformationen rechts auf der Seite.
    Der Bereich Transformationen wird mit den Namen aller Attribute in der ausgewählten Entität angezeigt. Die Spalte Transformation bleibt zunächst leer. Nach dem Speichern der Transformation zeigt sie den Transformationstyp an.
    Anmerkung: Der Bereich Transformation zeigt die Details der Tabelle des physischen Modells nicht an. Wenn Sie nach dem Klicken auf eine Entität auf die Tabelle eines physischen Modells klicken und den Bereich Transformation öffnen, werden die Details der zuletzt ausgewählten Entität angezeigt.
  2. Wählen Sie das Attribut aus, auf das der transformierte Wert angewendet werden soll. Klicken Sie anschließend auf das Symbol Transformation .
    Das Popup-Fenster Transformation der Spalte ‚<Spaltenname>‘ wird angezeigt.
  3. Wählen Sie die Option Funktion aus, und wählen Sie aus der Dropdown-Liste Kategorie die Kategorie der Funktion aus, die Sie anwenden möchten. Sie können eine dieser Funktionstransformationen ausführen: Wählen Sie String, Numeric, Conversion und Datetime.
    • Zeichenfolgen-Funktionstransformation, z. B. die Verkettung von zwei Zeichenfolgenspalten und die linke bzw. rechte Kürzung.
    • Numerische Funktionstransformationen, z. B. zum Abrufen des absoluten Werts einer Zahl aus einer Spalte und zum Zurückgeben einer ASCII- oder Unicode-Ganzzahldarstellung eines Zeichens.
    • Konvertierungsfunktionstransformation, z. B. Konvertieren oder Parsen von Datentypen
      So wenden Sie eine String -Funktionstransformation 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 String-Funktion 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 eine Numeric-Funktionstransformation an:
      Wählen Sie im Feld Kategorie den Eintrag Numeric aus.
      Wählen Sie den Namen der erforderlichen numerischen Transformation aus.
      Klicken Sie auf den Zahlenpfeil 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 eine Conversion Funktionstransformation 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 Muster 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.
  4. Klicken Sie auf OK.
    Die angewendete Funktionstransformation wird auf der Arbeitsfläche mit einem Transformationsknoten dargestellt.
  5. Klicken Sie auf Speichern.

Beispiel 1: Anwenden einer Funktionstransformation „String“

Wenn Sie beispielsweise Leerzeichen rechts von jedem Wert der Spalte ItemName in der Tabelle demo_Customers1 des physischen Modells kürzen und die gekürzten Werte in die verknüpfte Spalte Name in der Tabelle Product des logischen Modells einfügen möchten, müssen Sie wie folgt vorgehen:
  1. Wählen Sie die Product-Tabelle 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 Produkttabelle 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 Tabelle customer_car im physischen Modell FramworkDB2 auszuwählen.
  6. Klicken Sie auf OK.

    Dieses Mapping wird auf der Arbeitsfläche angezeigt.