On 9/12/2018 6:30 AM, Buck wrote:
On Tuesday, September 11, 2018 at 10:47:30 AM UTC-4, Jonathan Ball wrote:
When I attempt to call the stored procedure, it fails with a SQLSTATE
value of 42884:
No routine was found with the specified name and compatible arguments.
However, if I make the same stored procedure call from an ACS SQL script >>>> window, the call is successful and a result set is returned.
There aren't any parameters for the stored procedure, neither input nor
output. It only opens a cursor and returns the result set. As I said,
calling the procedure from an ACS SQL window works; it's only calling it
from the HLL program that fails.
Hm. Parameter mismatch is out then. It was a theoretical issue because the scripting tool binds literals differently than an HLL binds variables.
Is the remote database registered in WRKRDBDIRE? I'm thinking that ACS is using a JDBC driver which is configured differently to IBM i. To that point, is there a SQLSTATE on the CONNECT?
Embarrassment abounds. I misspelled the name of the procedure in the
COBOL program, getting an alpha 'o' where I should have had a numeric
'0'. Everything works now. There is, of course, a remote database
definition for the z/OS system in the RDB directory. I don't think I'd
be able to do a SQL CONNECT or use three-part naming at all if there
weren't.
JDBC only figures into the connection from the remote client (laptop) to
the IBM i. It isn't implicated in the DRDA connection from the IBM i to
the z/OS system. Similarly, if I were to run the SQL statements in a
5250 STRSQL session, Telnet would not be implicated in the DRDA
connection from IBM i to z/OS.
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)