发出程序信号并将控制权交还给 HANA 中的程序
Signal a procedure and give the control back to procedure in HANA
我正在从我的 xsjs 文件中调用一个过程,如下所示
try{
var query = oConn.loadProcedure("hello","helloWorld.db::sampleException");
query();
$.response.setBody('OK');
$.response.status = $.net.http.OK;
}
catch(e){
var code= getStatusCode(e.message);
if(code&& code === 301){
$.response.setBody('unique Constraint Voilated');
}
if(code && code ===258)
{
$.response.setBody('You dont have the Permission to run the command'+code);
}
if(code && code ===10001)
{
$.response.setBody('Boss you got the error');
}
if(code && code ===10002)
{
$.response.setBody('Boss you got the error2');
}
程序如下:
PROCEDURE "hello"."helloWorld.db::sampleException" ()
AS
BEGIN
DECLARE ExceptionExample CONDITION FOR SQL_ERROR_CODE 10001;
DECLARE ExceptionExample1 CONDITION FOR SQL_ERROR_CODE 10002;
select * from "hello"."REGION";
SIGNAL ExceptionExample SET MESSAGE_TEXT='TAN TAN TANANANANAN';
--SIGNAL
select * from "hello"."REGION";
SIGNAL ExceptionExample1 SET MESSAGE_TEXT='TANY TAN TANANANANAN';
END;
我想在调用 XSJS 时发出两个异常信号。有什么办法吗?
输出(应该是):
老大你弄错了。
老大你报错2.
任何帮助都是有益的。
谢谢。
不,那不可能。
SAP HANA 过程允许发出一个异常信号。
发生的异常 'deeper down the stack' 未堆叠并有效隐藏。
我正在从我的 xsjs 文件中调用一个过程,如下所示
try{
var query = oConn.loadProcedure("hello","helloWorld.db::sampleException");
query();
$.response.setBody('OK');
$.response.status = $.net.http.OK;
}
catch(e){
var code= getStatusCode(e.message);
if(code&& code === 301){
$.response.setBody('unique Constraint Voilated');
}
if(code && code ===258)
{
$.response.setBody('You dont have the Permission to run the command'+code);
}
if(code && code ===10001)
{
$.response.setBody('Boss you got the error');
}
if(code && code ===10002)
{
$.response.setBody('Boss you got the error2');
}
程序如下:
PROCEDURE "hello"."helloWorld.db::sampleException" ()
AS
BEGIN
DECLARE ExceptionExample CONDITION FOR SQL_ERROR_CODE 10001;
DECLARE ExceptionExample1 CONDITION FOR SQL_ERROR_CODE 10002;
select * from "hello"."REGION";
SIGNAL ExceptionExample SET MESSAGE_TEXT='TAN TAN TANANANANAN';
--SIGNAL
select * from "hello"."REGION";
SIGNAL ExceptionExample1 SET MESSAGE_TEXT='TANY TAN TANANANANAN';
END;
我想在调用 XSJS 时发出两个异常信号。有什么办法吗?
输出(应该是): 老大你弄错了。 老大你报错2.
任何帮助都是有益的。
谢谢。
不,那不可能。 SAP HANA 过程允许发出一个异常信号。 发生的异常 'deeper down the stack' 未堆叠并有效隐藏。