Я пытаюсь вызвать функцию (findNextOper ()), используя async / await, и когда я вызываю ее, я получаю эту ошибку:
(node:2748) UnhandledPromiseRejectionWarning: TypeError: (intermediate value) is not a function
Я пытался добавить точки с запятой в другом положении, но это не такт работал.Я понятия не имею, как это исправить.
//This is where I call the function
function regFasiFineLav(pool,oper){
return new Promise(async (resolve,reject,) => {
...
let nextOper = await findNextOper(pool,op);
...
resolve();
})();
};
//This is the function precedeing the one that trigger the error(findNextOper).
//I pasted because maybe it is related in some way
function StringToTime(stringTime){
return new Promise(async (resolve,reject) => {
stringTime = stringTime.split(":");
resolve(parseInt(stringTime[0])*3600 + parseInt(stringTime[1])*60 + parseInt(stringTime));
})();
};
//This is the function causing the error
function findNextOper(pool,op){
return new Promise(async (resolve,reject) => {
let sql_query = "SELECT TOP 1 oper_num FROM jobroute WHERE job = '" + op.job + "' AND suffix = " + op.suffix + " AND oper_num > " + op.oper_num + " ORDER BY oper_num ASC";
let result = (await pool.request().query(sql_query)).recordset;
if(result.length === 0){
resolve(0);
}else{
resolve(result[result.length-1]);
}
})();
};
Я хочу выполнить все эти функции последовательно, так как эта задача не может быть выполнена async