Dato un payload in ingresso riferito a più documenti occorre creare altrettanti documenti in output ciascuno dei quali deve avvalersi di uno o più numeratori, per le posizioni o altro, ed il/i numeratore/i deve resettarsi ad ogni nuovo documento.
UDF
In Attributes and Methods definire la variabile globale
int po_item = 0;
public String clearCounters(String dummy, Container container) throws StreamTransformationException{
po_item = 0;
pckg_no = 0;
return "";
}
public String incrPOItem(String dummy, Container container) throws StreamTransformationException{
po_item += 10;
return new Integer(po_item).toString();
}
public String incrPckgNo(String dummy, Container container) throws StreamTransformationException{
pckg_no += 1;
return new Integer(pckg_no).toString();
}
Mapping
Reset dei contatori all’origine del nuovo documento
Incremento del contatore
Qualora l’output dell’udf debba essere utilizzato in più calcoli ma con il medesimo valore, occorre salvarlo in una variabile ed utilizzarlo nel modo seguente:
Incrementare un’unica volta il contatore
Utilizzare il contatore nei calcoli