IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Executing DB2 SQL store procedure via JCL


IBM Mainframe Forums -> DB2
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
msa4004

New User


Joined: 25 Feb 2022
Posts: 6
Location: Malaysia

PostPosted: Fri Nov 22, 2024 10:52 pm
Reply with quote

i all,

I am not sure if this is the correct forum i apologize. I am trying to execute SQL db2 store procedure using DSNTEP2 via JCL.

Code:
// SET DATE=241122                                                     
/*                                                                     
//*********************************************************** 
//*   CREATE STORED PROCEDURE DCSTEP2F IS USING DSNTEP2                 
//*********************************************************** 
//CATDEL2  EXEC  CATDEL,                         
//  INNAME=WW.W.DCD.D&DATE..BUILDSPR.KLI30105.TR 
//BUILD01  EXEC  DCSTEP2F,                       
//  DB2SYS=DBB0,                                 
//  SQLLIB=TEST.RIZ.SP,                           
//  SQLNAME=BUILD@SP,                             
//  OUTDSN=WW.W.DCD.D&DATE..BUILDSPR.KLI30105.TR 
//***********************************************************
//*   EXECUTE STORED PROCEDURE DCSTEP2F IS USING DSNTEP2               
//***********************************************************//CATDEL2  EXEC  CATDEL,                                               
//  INNAME=WW.W.DCD.D&DATE..CALL.KLI30105.TR                           
//EXECU01  EXEC  DCSTEP2F,                                             
//  DB2SYS=DBB0,                                                       
//  SQLLIB=TEST.RIZ.SP,                                                 
//  SQLNAME=CALL@SP,                                                   
//  OUTDSN=WW.W.DCD.D&DATE..CALL.KLI30105.TR                                                                 


The JCL step to create the simple store procedure is successful as shown in below code

Code:
//
 ***INPUT STATEMENT:                                                   
  SET CURRENT SQLID = 'SIWRO1'~                                         
  RESULT OF SQL STATEMENT:                                             
  DSNT400I SQLCODE = 000,  SUCCESSFUL EXECUTION                         
  DSNT418I SQLSTATE   = 00000 SQLSTATE RETURN CODE                     
  DSNT416I SQLERRD    = 0  0  0  -1  0  0 SQL DIAGNOSTIC INFORMATION   
  DSNT416I SQLERRD    = X'00000000'  X'00000000'  X'00000000'  X'FFFFFFF
           INFORMATION                                                 
 SET       SUCCESSFUL                                                   
1PAGE    1                                                             
 ***INPUT STATEMENT:                                                   
  CREATE PROCEDURE DWR000A.HELLO_WORLD1(                               
   OUT MSG_OUT   VARCHAR(35)                                           
  )                                                                     
  LANGUAGE SQL                                                         
  READS SQL DATA                                                       
  BEGIN                                                                 
    SET MSG_OUT = 'HELLO WORLD';                                       
  END                                                                   
  ~                                                                   
 RESULT OF SQL STATEMENT:                                             
 DSNT400I SQLCODE = 000,  SUCCESSFUL EXECUTION                         
 DSNT418I SQLSTATE   = 00000 SQLSTATE RETURN CODE                     
 DSNT416I SQLERRD    = 0  0  0  -1  0  0 SQL DIAGNOSTIC INFORMATION   
 DSNT416I SQLERRD    = X'00000000'  X'00000000'  X'00000000'  X'FFFFFFF
          INFORMATION                                                 
CREATE    SUCCESSFUL


However i am having issue with the executing the store procedure step. result below

Code:
//

**INPUT STATEMENT:                                                     
EXEC SQL                                                               
     HELLO_WORLD1()                                                     
END-EXEC                                                               
 ;                                                                     
QLERROR ON   EXEC      COMMAND, PREPARE   FUNCTION                     
RESULT OF SQL STATEMENT:                                               
DSNT408I SQLCODE = -104, ERROR:  ILLEGAL SYMBOL "HELLO_WORLD1". SOME SYMBOLS THAT MIGHT BE LEGAL ARE: <ERR_STMT> <WNG_STMT>
         TRANSFER GET SQL SAVEPOINT HOLD FREE                           
DSNT418I SQLSTATE   = 42601 SQLSTATE RETURN CODE                       
DSNT415I SQLERRP    = DSNHPARS SQL PROCEDURE DETECTING ERROR           
DSNT416I SQLERRD    = 3  0  0  -1  10  502 SQL DIAGNOSTIC INFORMATION   
DSNT416I SQLERRD    = X'00000003'  X'00000000'  X'00000000'  X'FFFFFFFF'
         INFORMATION                                                   



i am not sure what the issue is since the procedure is there in SYSIBM.SYSROUTINES where i ran SPUFI in the DB2.

I am really new at this store procedure. Appreciate any assistance. Thank you in advance
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> DB2

 


Similar Topics
Topic Forum Replies
No new posts Excuting store procedure via JCL batch JCL & VSAM 1
No new posts Store the data for fixed length COBOL Programming 1
No new posts SDSF like solution in EJES (store com... All Other Mainframe Topics 4
No new posts executing XCTL command in COBOL witho... CICS 10
No new posts Receiving RC 5 when executing REXX pr... CLIST & REXX 3
Search our Forums:

Back to Top