2011-03-04 15 views
9

Sto facendo un ETL in Talend che aggiunge dati in una tabella.Contatore incrementale Talend

La tabella è per un vecchio sistema e la chiave primaria non è auto-incrementale. Quindi devo ottenere l'ID massimo più uno ogni volta che inserisco un valore nella tabella.

Sto cercando di usare un var nel Generatore di espressioni:

  • primo risparmio il massimo e situato in un contesto variabile
  • poi nel Generatore di espressioni:

    Context.Max += 1 
    

Il problema è che ogni volta che ottengo lo stesso ID, ho bisogno di salvare la somma.

risposta

9

finalmente ho trovato quello che cercavo:

Numeric.sequence("var2", Context.Max, 1) 

Questo incremento di 1 il Context.Max e salvarlo in "var2".

+0

Sintassi: Numeric.sequence ("Nome parametro", valore iniziale, valore incrementale) – Brij