node-oracledb 获取输出参数
node-oracledb get the output parameter
我有下面的代码,用于我们带有 IFS 的 ERP 系统。代码在设置所有参数后调用存储过程。 p3 是一个 inout 参数,它 returns 是执行后的一个值。我的问题是如何在程序执行后读取 p3。
DECLARE
p0 VARCHAR2(32000);
p1 VARCHAR2(32000);
p2 VARCHAR2(32000);
p3 VARCHAR2(32000);
BEGIN
ifsapp.client_sys.clear_attr(p3);
ifsapp.client_sys.add_to_attr('IZIN_TALEP_NO', '0', p3);
ifsapp.client_sys.add_to_attr('IZIN_KODU', '01', p3);
ifsapp.client_sys.add_to_attr('COMPANY_ID', 'XXX', p3);
ifsapp.client_sys.add_to_attr('EMP_NO', '123', p3);
ifsapp.client_sys.add_to_attr('CIKIS_TARIHI', '2019-09-13-00.00.00', p3);
ifsapp.client_sys.add_to_attr('DONUS_TARIHI', '2019-09-21-00.00.00', p3);
ifsapp.client_sys.add_to_attr('ISE_BASLAMA_TARIHI', '2019-09-22-00.00.00', p3);
ifsapp.client_sys.add_to_attr('SURE_GUN', '9', p3);
ifsapp.client_sys.add_to_attr('SURE_SAAT', '0', p3);
ifsapp.client_sys.add_to_attr('NOTLAR', 'jhfsdkjjhlfdskh g', p3);
ifsapp.client_sys.add_to_attr('ADRES', '897549875498754', p3);
ifsapp.TRIFM_IZINLER_API.NEW__(p0, p1, p2, p3, 'CHECK') ;
DBMS_OUTPUT.PUT_LINE(p3);
EXCEPTION
WHEN ifsapp.error_sys.err_security_checkpoint THEN
RAISE;
WHEN OTHERS THEN
ROLLBACK;
RAISE;
END;
我也试过这种方法
..... ifsapp.TRIFM_IZINLER_API.NEW__(p0, p1, p2, p3, 'CHECK'); :mm :=p3;
节点代码为
...dbHelper.executeReturn(checkSql, [{
mm : {
dir: oracledb.OUT,
type: oracledb.STRING
}
}], req, res, true).then(res => {
return res;
});
我收到这个错误
NJS-044: named JSON object is not expected in this context
感谢任何帮助
我通过创建一个扭曲方法并从函数
返回 p3 的函数解决了这个问题
ifsapp.TRIFM_IZINLER_API.NEW__(p0, p1, p2, p3, 'CHECK');
RETURN p3;
我有下面的代码,用于我们带有 IFS 的 ERP 系统。代码在设置所有参数后调用存储过程。 p3 是一个 inout 参数,它 returns 是执行后的一个值。我的问题是如何在程序执行后读取 p3。
DECLARE
p0 VARCHAR2(32000);
p1 VARCHAR2(32000);
p2 VARCHAR2(32000);
p3 VARCHAR2(32000);
BEGIN
ifsapp.client_sys.clear_attr(p3);
ifsapp.client_sys.add_to_attr('IZIN_TALEP_NO', '0', p3);
ifsapp.client_sys.add_to_attr('IZIN_KODU', '01', p3);
ifsapp.client_sys.add_to_attr('COMPANY_ID', 'XXX', p3);
ifsapp.client_sys.add_to_attr('EMP_NO', '123', p3);
ifsapp.client_sys.add_to_attr('CIKIS_TARIHI', '2019-09-13-00.00.00', p3);
ifsapp.client_sys.add_to_attr('DONUS_TARIHI', '2019-09-21-00.00.00', p3);
ifsapp.client_sys.add_to_attr('ISE_BASLAMA_TARIHI', '2019-09-22-00.00.00', p3);
ifsapp.client_sys.add_to_attr('SURE_GUN', '9', p3);
ifsapp.client_sys.add_to_attr('SURE_SAAT', '0', p3);
ifsapp.client_sys.add_to_attr('NOTLAR', 'jhfsdkjjhlfdskh g', p3);
ifsapp.client_sys.add_to_attr('ADRES', '897549875498754', p3);
ifsapp.TRIFM_IZINLER_API.NEW__(p0, p1, p2, p3, 'CHECK') ;
DBMS_OUTPUT.PUT_LINE(p3);
EXCEPTION
WHEN ifsapp.error_sys.err_security_checkpoint THEN
RAISE;
WHEN OTHERS THEN
ROLLBACK;
RAISE;
END;
我也试过这种方法
..... ifsapp.TRIFM_IZINLER_API.NEW__(p0, p1, p2, p3, 'CHECK'); :mm :=p3;
节点代码为
...dbHelper.executeReturn(checkSql, [{
mm : {
dir: oracledb.OUT,
type: oracledb.STRING
}
}], req, res, true).then(res => {
return res;
});
我收到这个错误
NJS-044: named JSON object is not expected in this context
感谢任何帮助
我通过创建一个扭曲方法并从函数
返回 p3 的函数解决了这个问题ifsapp.TRIFM_IZINLER_API.NEW__(p0, p1, p2, p3, 'CHECK');
RETURN p3;