Talend
emmy1
Messages postés
7
Statut
Membre
-
freto Messages postés 1543 Date d'inscription Statut Membre Dernière intervention -
freto Messages postés 1543 Date d'inscription Statut Membre Dernière intervention -
salut,
cad que le fichier en entree contient un nobre de separateur de champs bien définit et mon composant doit faire le test sur le nombre de séparateur de chaque ligne.s'il trouve < ou > au nbre donné alors cette ligne sera rajetée dans un fichier rejet avec le motif de rejet .sinon tte les lignes seront enregistrées dans le fichier out
en fait j'ai fait comme suit:
j'ai déclaré checkNum de type boolean:
String checkNumStr = ElementParameterParser.getValue(node, "__CHECK_FIELDS_NUM__");
boolean checkNum = (checkNumStr!=null&&!checkNumStr.equals(""))?checkNumStr.equals("true"):false;
ensuite j'ai fais le test suivant:
<%if(checkNum)
{%>
int filedsum_<%=cid %> = fid_<%=cid %>.getColumnsCountOfCurrentRow();
if(filedsum_<%=cid %> < <%=metadata.getListColumns().size() %>) //Test 1
{
throw new RuntimeException("Column(s) missing");
} else if(filedsum_<%=cid %> > <%=metadata.getListColumns().size() %>) //Test 2
{
throw new RuntimeException("vous avez dépassé le nbre de colonne");
}
<%}%>
lorque j'ai fait ce traitement il me donne tjrs les lignes du fichier en entree dans le fichier out meme si j'ai modifiée le nbre de séparateur dans une ligne
merci d'avance
cad que le fichier en entree contient un nobre de separateur de champs bien définit et mon composant doit faire le test sur le nombre de séparateur de chaque ligne.s'il trouve < ou > au nbre donné alors cette ligne sera rajetée dans un fichier rejet avec le motif de rejet .sinon tte les lignes seront enregistrées dans le fichier out
en fait j'ai fait comme suit:
j'ai déclaré checkNum de type boolean:
String checkNumStr = ElementParameterParser.getValue(node, "__CHECK_FIELDS_NUM__");
boolean checkNum = (checkNumStr!=null&&!checkNumStr.equals(""))?checkNumStr.equals("true"):false;
ensuite j'ai fais le test suivant:
<%if(checkNum)
{%>
int filedsum_<%=cid %> = fid_<%=cid %>.getColumnsCountOfCurrentRow();
if(filedsum_<%=cid %> < <%=metadata.getListColumns().size() %>) //Test 1
{
throw new RuntimeException("Column(s) missing");
} else if(filedsum_<%=cid %> > <%=metadata.getListColumns().size() %>) //Test 2
{
throw new RuntimeException("vous avez dépassé le nbre de colonne");
}
<%}%>
lorque j'ai fait ce traitement il me donne tjrs les lignes du fichier en entree dans le fichier out meme si j'ai modifiée le nbre de séparateur dans une ligne
merci d'avance