Dear Friends,
Here is the procedure which I wrote to update a record
//////
PROCEDURE "SCHEMANAME"."SCHEMANAME_PE.Procedure_Demo2::PWD_RESET_2" (IN ipN "SCHEMANAME"."SCHEMANAME_PE.TABLES::DM_CUSTOMER_REG",
IN ipO "SCHEMANAME"."SCHEMANAME_PE.TABLES::DM_CUSTOMER_REG",
OUT op "SCHEMANAME"."SCHEMANAME_PE.STRUCTURE::pwd_reset" )
LANGUAGE SQLSCRIPT
SQL SECURITY INVOKER AS
-- DEFAULT SCHEMA "SCHEMANAME"
-- READS SQL DATA AS
ls_UserNameN VARCHAR(60);
ls_EmailN VARCHAR(60);
ls_PasswordN VARCHAR(60);
ls_SecurityQuestionN VARCHAR(100);
ls_AnswerN VARCHAR(100);
ls_UserNameO VARCHAR(60);
ls_EmailO VARCHAR(60);
ls_PasswordO VARCHAR(60);
ls_SecurityQuestionO VARCHAR(100);
ls_AnswerO VARCHAR(100);
BEGIN
/*****************************/
SELECT "UserName",
"Email",
"Password",
"SecurityQuestion",
"Answer"
INTO ls_UserNameN,
ls_EmailN,
ls_PasswordN,
ls_SecurityQuestionN,
ls_AnswerN
FROM :ipN;
SELECT "UserName",
"Email",
"Password",
"SecurityQuestion",
"Answer"
INTO ls_UserNameO,
ls_EmailO,
ls_PasswordO,
ls_SecurityQuestionO,
ls_AnswerO
FROM :ipO;
/* validation has already been done in front end. Hence updating directly */
update "SCHEMANAME_PE.TABLES::DM_CUSTOMER_REG"
set "Password" = ls_PasswordN
where "Email" = ls_EmailN;
if :ls_AnswerN = :ls_AnswerO then
op = select 400 as http_status_code,
'Password field updated ' as error_message,
'value be > 1000' as detail,
ls_SecurityQuestionN as PARAM_1C100,
ls_AnswerN as PARAM_2C100,
'' as PARAM_3C100,
'' as PARAM_4C100
from dummy;
END IF;
END;
////////
While activating I am getting an error as follows :
error SCHEMANAME_PE.SERVICE_DEMO2:pwd_reset2.xsodata
Invalid procedure or parameter list in procedure "SCHEMANAME_PE.Procedure_Demo2::PWD_RESET_2".
/////
May I have any suggestion to overcome this issue. The code is very much matching with "SAP HANA Developer Guide" Page No.497
Section 7.1.6.13 "Creating a Validation Exit with SQLScript"
Thanks
BaaRaa