es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo obtener la fecha de ayer de todos los archivos utilizando Talend?

He intentado así, lo estoy agregando

TalendDate.compareDate(row1.filepath, context.myStartDate, 'yyyy-Mm-dd')>0 && TalendDate.comparDate(row1.filepath, context.EndDate, 'yyyy-Mm-dd')<3

Agregando así en tMap

¿Alguien puede ayudarme a obtener los archivos de la fecha de ayer utilizando Talend?

¿Hay alguna otra forma de hacer esto?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Sí, existen otras formas de lograr esto en Talend. Una forma es usar la función TalendDate.addDate para restar un día a la fecha actual y luego usar eso como fecha de referencia para comparar con las rutas de archivo.

    Por ejemplo:

    TalendDate.compareDate(row1.filepath, TalendDate.addDate(TalendDate.getCurrentDate(), -1, "dd"), 'yyyy-MM-dd') == 0

    Esto comparará la parte de la fecha de la ruta de archivo (asumiendo que esté en el formato yyyy-MM-dd) con la fecha de ayer (obtenida usando TalendDate.addDate), y devolverá verdadero si son iguales.

    Otra forma es usar la función TalendDate.parseDate para convertir la fecha de la ruta de archivo en un objeto java.util.Date, y luego usar los métodos de java.util.Calendar para verificar si es la fecha de ayer.

    Por ejemplo:

    java.util.Date fileDate = TalendDate.parseDate(row1.filepath, "yyyy-MM-dd");
    java.util.Calendar cal = java.util.Calendar.getInstance();
    cal.add(java.util.Calendar.DAY_OF_MONTH, -1);
    java.util.Date yesterday = cal.getTime();
    fileDate.compareTo(yesterday) == 0
    

    Esto primero analiza la parte de la fecha de la ruta de archivo en un objeto java.util.Date, luego crea un objeto java.util.Calendar y lo establece en la fecha de ayer. Finalmente, compara los dos objetos Date para verificar si son iguales.

Comments are closed.