Hello beautiful comunity!
I'm trying to write multiple fields in a table but I'm having synchrony problems, having the next output:
<!> T A B L E |1| C R E A T E D <!>
Executing (default): INSERT INTO `Programacion` (`id`,`dia`,`sucursal_id`,`torta_id`,`tamano_id`,`cantidad`,`estado`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?,?,?,?,?,?,?);
Executing (default): INSERT INTO `Programacion` (`id`,`dia`,`sucursal_id`,`torta_id`,`tamano_id`,`cantidad`,`estado`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?,?,?,?,?,?,?);
Executing (default): INSERT INTO `Programacion` (`id`,`dia`,`sucursal_id`,`torta_id`,`tamano_id`,`cantidad`,`estado`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?,?,?,?,?,?,?);
Executing (default): INSERT INTO `Programacion` (`id`,`dia`,`sucursal_id`,`torta_id`,`tamano_id`,`cantidad`,`estado`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?,?,?,?,?,?,?);
<!> T A B L E |2| C R E A T E D <!>
Executing (default): INSERT INTO `Programacion` (`id`,`dia`,`sucursal_id`,`torta_id`,`tamano_id`,`cantidad`,`estado`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?,?,?,?,?,?,?);
Executing (default): INSERT INTO `Programacion` (`id`,`dia`,`sucursal_id`,`torta_id`,`tamano_id`,`cantidad`,`estado`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?,?,?,?,?,?,?);
<!> T A B L E |3| C R E A T E D <!>
Executing (default): INSERT INTO `Programacion` (`id`,`dia`,`sucursal_id`,`torta_id`,`tamano_id`,`cantidad`,`estado`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?,?,?,?,?,?,?);
Executing (default): INSERT INTO `Programacion` (`id`,`dia`,`sucursal_id`,`torta_id`,`tamano_id`,`cantidad`,`estado`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?,?,?,?,?,?,?);
Executing (default): INSERT INTO `Programacion` (`id`,`dia`,`sucursal_id`,`torta_id`,`tamano_id`,`cantidad`,`estado`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?,?,?,?,?,?,?);
When I should get the next output for every created table:
<!> T A B L E |x| C R E A T E D <!>
Executing (default): INSERT INTO `Programacion` (`id`,`dia`,`sucursal_id`,`torta_id`,`tamano_id`,`cantidad`,`estado`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?,?,?,?,?,?,?);
The user submits a Json file that I have to transform into an array of 52 fields so that I can write it to my database, the resulting 52 objects are sent as follows:
tables.forEach((table) => {
programacionServices.programacionCreate(table)
.then(r => {
console.log(`\n<!> T A B L E |${_id}| C R E A T E D <!>`)
_id = _id + 1;
})
.catch(e => reject(e))
})
programacionServices.programacionCreate:
class ProgramacionServices{
programacionCreate(body){
return new Promise((resolve, reject) => {
Programacion.create(body)
.then(r => resolve(r))
.catch(e => reject(e));
});
}
}
I was trying with nested promises, using async/await inside of my functions, also I've used setTimeout, setInterval and clearInterval to test the point where it breaks but always the output in the console is the same, and just the first four fields are saved.
Thanks in advance!
EDIT
I've tryed with bluebird package but didn't work:
resolve(Promise.each(tables, (table) => {
return programacionServices.programacionCreate(table)
.then(r => {
console.log('inserted');
})
.catch(e => reject(e))
}).then(r => console.log('done')));