Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

311
Visualizações
Cómo ejecutar un trabajo cron cuando el código está en otro archivo - Node JS

Estoy tratando de ejecutar un cron cada 1 hora.

Para lo cual inicié el trabajo cron en mi archivo index.js como se muestra a continuación

 const cron = require('node-cron'); const readDocuments = require("./cronJobs/readDocuments"); var task = cron.schedule('0 0 */1 * * *', readDocuments); task.start();

Mientras que el código real que se ejecutará se ha escrito en ./cronJobs/readDocuments y el código dentro de este archivo está debajo, donde intento leer un archivo csv.

leerDocumentos.js

 const ResponseManager = require("../common/ResponseManager"); var fs = require('fs'); const csv = require('csv-parser'); console.log('Read Document....') try { var filepath = "../files/abc.csv"; fs.createReadStream(filepath) .on('error', () => { // handle error }) .pipe(csv()) .on('data', (row) => { console.log('rowrowrow',row) }) .on('end', () => { // handle end of CSV }) } catch (error) { console.log('errorerror',error) res.status(500).json(ResponseManager(false, error.message)); }

Cuando ejecuto el nodo js en cmd con node index.js , la consola Read Document.... se muestra pero el otro código no se ejecuta. Me está dando throw 'execution must be a function'; error

¿Cómo resuelvo esto o cuál es el procedimiento real para ejecutar el código dentro de un archivo con trabajo cron de index.js?

Por favor ayuda. Gracias !!

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

necesita exportar la función cron y consumirla en su archivo

about 4 years ago · Juan Pablo Isaza Relatório

0

El segundo argumento de cron.schedule() debe ser función. Debe envolver el código en una función y exportarlo desde el módulo.

 const ResponseManager = require("../common/ResponseManager"); const fs = require('fs'); const csv = require('csv-parser'); module.exports = function () { console.log('Read Document....') try { const filepath = "../files/abc.csv"; fs.createReadStream(filepath) .on('error', () => { // handle error }) .pipe(csv()) .on('data', (row) => { console.log('rowrowrow', row) }) .on('end', () => { // handle end of CSV }); } catch (error) { console.log('errorerror', error) res.status(500).json(ResponseManager(false, error.message)); } };
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda