Le code pour accéder aux propriétés de la matrice du composant - 6.5

Talend Open Studio for ESB Guide utilisateur

EnrichVersion
6.5
EnrichProdName
Talend Open Studio for ESB
task
Création et développement
EnrichPlatform
Studio Talend

Les propriétés de la matrice du composant sont créées et modifiées par les utilisateurs selon les différents objectifs de transformation des données. Par exemple, les paramètres operation ou groupby peuvent être définis par les utilisateurs dans le composant tSQLTemplateAggregate.

Vous pouvez accéder à ces paramètres de transformation, naturellement plus flexibles et complexes, de deux façons différentes.

  • Le </.../> approach:

</.../> est l'une des syntaxes utilisées par les modèles SQL. Cette approche nécessite souvent du code dur pour chaque paramètre à extraire.

Par exemple, un nouveau paramètre est créé par l'utilisateur et nommé NEW_PROPERTY. Pour y accéder par la commande </NEW_PROPERTY/>vous aurez besoin du code ci-dessous :

else if (paramName.equals("NEW_PROPERTY")) {

List<Map<String, String>> newPropertyTableValue = (List<Map<String, String>>)

ElementParameterParser.getObjectValue(node, "__NEW_PROPERTY__");

for (int ii = 0; ii <newPropertyTableValue.size(); ii++) {

Map<String, String> newPropertyMap =newPropertyTableValue.get(ii);

realValue += ...;//append generated codes

......

}

}

  • La valeur par défaut EXTRACT(__GROUPBY__); approach:

Le code ci-dessous montre la seconde méthode d'accès au paramètre de transformation (GROUPBY).

<%

String query = "insert into " + __TABLE_NAME__ + "(id, name, date_birth) select sum(id), name, date_birth from cust_teradata group by";

EXTRACT(__GROUPBY__);

for (int i=0; i < __GROUPBY_LENGTH__ ; i++) {

query += (__GROUPBY_INPUT_COLUMN__[i] + " ");

}

%>

<%=query %>;

Lors de l'encodage des instructions, respectez les règles comme suit :

  • L'instruction extraite doit utiliser EXTRACT(__GROUPBY__);;. Les majuscules sont requises, et les caractères d'espacement ne sont pas autorisés. Cette instruction doit être utilisée entre <% et %>.

  • Utiliser __GROUPBY_LENGTH__, dans lequel le nom du paramètre est suivi de _LENGTHpermet d'obtenir le numéro de ligne des paramètres du tableau GROUPBY définis dans la zone Groupby de la vue Component. Cette instruction peut être utilisée entre <% et %> ou <%= et %>.

  • Utilisez du code tel que query += (__GROUPBY_INPUT_COLUMN__[i] + " "); pour extraire les valeurs du paramètre. Il peut être utilisé entre <% et %> ou entre <%= et %>.

  • Pour accéder aux paramètres correctement, n'utilisez pas le même préfixe pour le nom de plusieurs paramètres. Dans un composant par exemple, évitez de définir deux paramètres ayant pour nom <parameter_name> et PARAMETER_NAME_2, car un préfixe identique sur plusieurs noms peut causer des erreurs lors de la génération du code.