Application d'une transformation de fonction

Une transformation de fonction vous permet d'appliquer des fonctions de type chaîne, numérique, conversion et datetime pour définir un attribut d'une entité logique, ou l'un des paramètres d'une transformation de fonction parente.

  1. Sur la page Créer mappage <nom de Logical Model>, sélectionnez l'entité correspondant à l'attribut dont vous souhaitez appliquer la valeur transformée, puis cliquez sur l'onglet réductible Transformations sur le côté droite de la page.
    Le volet Transformations s’affiche, indiquant le nom de tous les attributs de l'entité sélectionnée. La colonne Transformation reste initialement vide. Elle affiche le type de transformation une fois que vous avez enregistré la transformation.
    Remarque : Le volet Transformation n’affiche pas les détails de la table Physical Model. Si vous cliquez sur une table Physical Model après une entité et si vous ouvrez le volet Transformation, il affiche les détails de la dernière entité sélectionnée.
  2. Sélectionnez l’attribut auquel vous souhaitez appliquer la valeur transformée, puis cliquez sur l'icône Transformation .
    La fenêtre contextuelle Transformation de colonne '<nom de colonne>' apparaît.
  3. Sélectionnez l'option Fonction et, dans la liste déroulante Catégorie, sélectionnez la catégorie de la fonction que vous souhaitez appliquer. Vous pouvez effectuer l'une de ces transformations de fonction : faites votre choix entre Chaîne, Numérique, Conversion et Datetime.
    • Transformation de fonction chaîne, telle que la concaténation de deux colonnes de chaîne et la découpe gauche ou droite.
    • Transformation de fonction numérique, telle que l'obtention de la valeur absolue d'un nombre à partir d'une colonne et le renvoi d'une représentation ASCII ou unicode entière d'un caractère.
    • Transformation de fonction de conversion, telle que la conversion ou l'analyse de types de données.
      Pour appliquer une transformation de fonction de Chaîne :
      Dans le champ Catégorie, sélectionnez Chaîne.
      Sélectionnez le Nom de la transformation de chaîne requise.
      Cliquez sur la flèche Chaîne et utilisez l'option Colonne, Constante ou Fonction pour définir les paramètres de la fonction de chaîne. Par exemple, si vous avez sélectionné lcase(string string) comme Nom de fonction, sélectionnez la chaîne à transformer en minuscules.
      Remarque : Lorsque vous sélectionnez le Nom de fonction, veillez à ce que le Type de retour de la fonction corresponde au type de données de la colonne que vous avez sélectionnée pour la transformation. Le Type de retour est affiché sous le champ Nom une fois que vous avez sélectionné le nom de fonction.
      Pour appliquer une transformation de fonction Numérique :
      Dans le champ Catégorie, sélectionnez Numérique.
      Sélectionnez le Nom de la transformation numérique requise.
      Cliquez sur la flèche Nombre et utilisez l'option Colonne, Constante ou Fonction pour définir les paramètres de la fonction numérique. Par exemple, si vous avez sélectionné abs(integer number) comme Nom de fonction, sélectionnez l'entier qui doit être transformé en sa valeur absolue.
      Remarque : Lorsque vous sélectionnez le Nom de fonction, veillez à ce que le Type de retour de la fonction corresponde au type de données de la colonne que vous avez sélectionnée pour la transformation. Le Type de retour est affiché sous le champ Nom une fois que vous avez sélectionné le nom de fonction.
      Pour appliquer une transformation de fonction de Conversion :
      Dans le champ Catégorie, sélectionnez Conversion.
      Sélectionnez le Nom de la transformation de conversion requise. Les options permettant de spécifier la valeur à convertir et le format de sortie ciblé sont affichées sous le champ Nom. Par exemple, si vous sélectionnez parsedouble(string double, string format) comme Nom de fonction, les options double et format sont affichées pour spécifier la valeur et le format, respectivement.
      Cliquez sur double et utilisez l'option Colonne, Constante ou Fonction pour définir les paramètres de la fonction de conversion sélectionnée.
      Remarque : Lorsque vous sélectionnez le Nom de fonction, veillez à ce que le Type de retour de la fonction corresponde au type de données de la colonne que vous avez sélectionnée pour la transformation. Le Type de retour est affiché sous le champ Nom une fois que vous avez sélectionné le nom de fonction.
      Sélectionnez le format dans lequel la valeur source doit être convertie en utilisant l'une de ces options Cibles : Colonne, Constante ou Fonction. (Pour plus d'informations, reportez-vous à la section Types de données pris en charge pour les transformations de conversion.)
      Remarque : Le format est conforme au schéma standard spécifié dans les formats Java Decimal. Consultez ce tableau pour des exemples de Type et de Valeur si vous sélectionnez l'option Constante pour la spécification du format :
      Tableau 1. Sortie DecimalFormat.java
      Valeur Motif Sortie Description
      123456.789 ###,###.### 123,456.789 Le signe dièse (#) indique un chiffre, la virgule est un espace réservé pour le séparateur de regroupement et le point est un espace réservé pour le séparateur décimal.
      123456.789 ###.## 123456.79 La valeur a trois chiffres à droite du point décimal, mais le modèle n'en a que deux. La méthode de mise en forme gère cela en arrondissant.
      123.78 000000.000 000123.780 Le modèle spécifie les zéros de début et de fin, car le caractère 0 est utilisé à la place du signe dièse (#).
      12345.67 $###,###.### $12,345.67 Le premier caractère du modèle est le signe dollar ($). Notez qu'il précède immédiatement le chiffre le plus à gauche de la sortie formatée.
      Remarque : Voir plus d'informations sur les formats décimaux ici : https://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html, et les détails des caractères de modèle spéciaux ici : https://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html.
  4. Cliquez sur OK.
    La transformation de fonction appliquée est reflétée sur le canevas l'aide d'un nœud de transformation.
  5. Cliquez sur Enregistrer.

Exemple 1 - Application d'une transformation de fonction de chaîne

Par exemple, si vous souhaitez supprimer les espaces à droite de chaque valeur de la colonne ItemName de la table Physical Model demo_Customers1 et fournir la valeur supprimée dans la colonne liée Name de la table logique Product :
  1. Sélectionnez la table Product sur le canevas.
  2. Dans le volet Transformations, cliquez sur en regard de la colonne Name, et, dans la fenêtre contextuelle Transformation de colonne 'NOM', sélectionnez l'option Fonction.
  3. Dans la liste déroulante Catégorie, sélectionnez String.
  4. Dans la liste déroulante Nom, sélectionnez la fonction rtrim(string string).
  5. La fonction Chaîne est ajoutée à la fenêtre contextuelle sous les champs d’entrée. Cliquez sur cette fonction et définissez le paramètre auquel cette fonction doit être appliquée à l’aide de l'option Colonne, de telle sorte que le type de données obtenu du paramètre soit une chaîne.
  6. Cliquez sur OK.

La transformation de fonction appliquée est reflétée sur le canevas comme suit :


Exemple 2 : Application d'une transformation de fonction Numérique.
  1. Sélectionnez la colonne productid dans la table Produit de la page Créer mappage.
  2. Dans le volet Transformations, cliquez sur en regard de la colonne productid, et, dans la fenêtre contextuelle Transformation of column productid (integer), sélectionnez l'option Fonction.
  3. Dans la liste déroulante Catégorie, sélectionnez Numérique.
  4. Dans la liste déroulante Nom, sélectionnez abs(integer number). L'option permettant de spécifier le nombre requis est affichée sous le champ Nom.
  5. Cliquez sur la flèche Nombre et utilisez l'option de colonne pour sélectionner la colonne CustID (Integer) de la table customer_car du Physical Model FramworkDB2.
  6. Cliquez sur OK.

    Ce mappage est affiché sur le canevas.