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

-444 Sqlcode when calling stored procedure


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

New User


Joined: 25 Apr 2009
Posts: 25
Location: chennai

PostPosted: Sat Nov 21, 2009 9:38 pm
Reply with quote

i am calling stored procedure in side my cobol db2 program (cics)
when i try to call the stored procedure its giving -444 sqlcode
i checked the loadlib in runjcl load module is there but still its throwing -444.
how tho fix it can any one help me?
Back to top
View user's profile Send private message
arunshan04

New User


Joined: 25 Apr 2009
Posts: 25
Location: chennai

PostPosted: Sat Nov 21, 2009 10:28 pm
Reply with quote

Quote:

# This error can also occur if you are invoking a WLM-managed stored
# procedure that is not APF authorized, and the DB2 load libraries are not
# in the STEPLIB concatenation because they are being loaded from LINKLIST.
# In this case, if you want the stored procedure program to run
# APF-authorized, link-edit it with AC=1 into an MVS APF authorized library.
# If you do not want the stored procedure program to run APF authorized, add
# the DB2 load library to the STEPLIB concatenation of the JCL used to start
# the WLM-managed address space.


Back to top
View user's profile Send private message
arunshan04

New User


Joined: 25 Apr 2009
Posts: 25
Location: chennai

PostPosted: Sat Nov 21, 2009 10:30 pm
Reply with quote

can any one explain about Apf..

what is this how to make it authorized?
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Sat Nov 21, 2009 10:30 pm
Reply with quote

the best source for the problem resolution will be certainly Your support!
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Sun Nov 22, 2009 1:07 am
Reply with quote

once you learn what APF-authorized means,
you will undoubtedly
(hopefully, but maybe not)
realize that this is not the route to your solution.

I would be more concerned with the loadlib for the cics started task.
user loadlibs are normally concatenated in the DFHRPL Reference Name
(or something like that - a search of the forums will provide that answer)
of the Started Task JCL for your CICS region.
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Sun Nov 22, 2009 1:18 am
Reply with quote

Quote:
-444
USER PROGRAM name COULD NOT BE FOUND

Explanation
DB2® received an SQL CALL statement for a stored procedure or an SQL statement containing an invocation of a user-defined function, and found the row in the SYSIBM.SYSROUTINES catalog table associated with the requested procedure name. However, the MVS load module identified in the EXTERNAL_NAME column of the SYSIBM.SYSROUTINES row could not be found.
name
The name of the MVS load module that could not be found
System action
The statement cannot be executed.

Programmer response
If the EXTERNAL_NAME column value in the SYSIBM.SYSROUTINES table is incorrect, use the ALTER FUNCTION or ALTER PROCEDURE statement to correct the value.

If the EXTERNAL_NAME column value is correct, use the MVS linkage editor to create the required MVS load module in one of the MVS load libraries used by your installation for stored procedures.

This error can also occur if you are invoking a WLM-managed stored procedure that is not APF authorized, and the DB2 load libraries are not in the STEPLIB concatenation because they are being loaded from LINKLIST. In this case, if you want the stored procedure program to run APF-authorized, link-edit it with AC=1 into an MVS APF authorized library. If you do not want the stored procedure program to run APF authorized, add the DB2 load library to the STEPLIB concatenation of the JCL used to start the WLM-managed address space.



I wonder why people start reading from the lat paragraph...
when the first paragraph has the most probable explanation of the issue
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Sun Nov 22, 2009 3:11 am
Reply with quote

Quote:
I wonder why people start reading from the lat paragraph..


based on experience, we should be glad that they read anything at all.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Sun Nov 22, 2009 9:49 am
Reply with quote

Quote:
I wonder why people start reading from the lat paragraph...
when the first paragraph has the most probable explanation of the issue
It may be more appealing to have a situation that is not simply a typo or other misspelling/misplacement. . . icon_neutral.gif

The simpler/more likely causes of things are typically listed first. . .
Back to top
View user's profile Send private message
arunshan04

New User


Joined: 25 Apr 2009
Posts: 25
Location: chennai

PostPosted: Sun Nov 22, 2009 10:31 am
Reply with quote

Quote:

If the EXTERNAL_NAME column value is correct, use the MVS linkage editor to create the required MVS load module in one of the MVS load libraries used by your installation for stored procedures.

This error can also occur if you are invoking a WLM-managed stored procedure that is not APF authorized, and the DB2 load libraries are not in the STEPLIB concatenation because they are being loaded from LINKLIST. In this case, if you want the stored procedure program to run APF-authorized, link-edit it with AC=1 into an MVS APF authorized library. If you do not want the stored procedure program to run APF authorized, add the DB2 load library to the STEPLIB concatenation of the JCL used to start the WLM-managed address space.



stored procedure previously it was working fine.
i executed some production env programs.
so i deleted stored procedure load module.
when i try to execute the stored procedure again its not working.
for other member of my team having load module in the same load library for them its working fine. if APF-authorized required means
how for other programs its working fine.
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8696
Location: Dubuque, Iowa, USA

PostPosted: Sun Nov 22, 2009 11:21 am
Reply with quote

It sounds like you did this to yourself:
Quote:
stored procedure previously it was working fine.
i executed some production env programs.
so i deleted stored procedure load module.
If you deleted the stored procedure load module, just where do you think it's going to execute the stored procedure from?
Back to top
View user's profile Send private message
arunshan04

New User


Joined: 25 Apr 2009
Posts: 25
Location: chennai

PostPosted: Sun Nov 22, 2009 8:13 pm
Reply with quote

no, i compiled the stored procedure again and created new load module.
then only i tried.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Mon Nov 23, 2009 3:25 am
Reply with quote

Hello,

Quote:
for other member of my team having load module in the same load library for them its working fine. if APF-authorized required means
how for other programs its working fine.
Did anyone else delete their load module? Why/how did you delete yours? Will some other process that was deleted still work when the load module is re-created?

It is most likely that your problem is not due to APF authorized. . .

Have you spoken to your dba about what was broken when you deleted the load module?
Back to top
View user's profile Send private message
arunshan04

New User


Joined: 25 Apr 2009
Posts: 25
Location: chennai

PostPosted: Mon Nov 23, 2009 11:31 pm
Reply with quote

yes this problem not because of apf authorized i got the solution today.

i binded the main program and subprogram dbrm using spufi bind package option with out including the path.
because of that only i got the -444.

then i binded those again with correct path now its working fine.
thanks for your valuable suggestion.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Tue Nov 24, 2009 12:04 am
Reply with quote

Good to hear it is working - thank you for posting the solution icon_smile.gif

d
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 Calling DFSORT from Cobol, using OUTF... DFSORT/ICETOOL 5
No new posts Calling Java method from batch COBOL ... COBOL Programming 5
No new posts Calling an Open C library function in... CICS 1
No new posts calling a JCl inside a JCL JCL & VSAM 3
No new posts Calling IEHPROGM from REXX CLIST & REXX 7
Search our Forums:

Back to Top