SQLSTATE 42703 in SQLRPGLE program
K Crawford <[email protected]>
| Newsgroups | gmane.comp.lang.as400.rpg |
|---|---|
| Message-ID | <CAGbny4vgUqSSSHUYf4LUhdyyCz0D56PNjG0h8xnVkv3jvThk+A@mail.gmail.com> |
Below is part of my SQLRPGLE program.
I am getting SQLSTATE 42703 on the PREPARE statement.
What could it be?
The two ? (dynamic selections) SSAN is numeric and PLANID is char. I have
tried putting quotes around the ? for PLANID, but did not work.
I have copied this SQL into ACS-RSS and it runs fine.
Dcl-C SELECT_ActPlan CONST(' Select e.cobret, +
e.qbnum, e.cobrarnum, e.ssan, +
p.cvglevl, p.cvgtype, p.status, p.planid, +
p.planstrt, p.evntdate3, +
p.fdoc, p.ldoc, +
p.cbrstrt, p.cbrstop, +
p.termdate +
from lib1/cobraE e +
join lib1/cobraP p +
on e.qbnum = p.idnum +
where +
(e.ssan = ? ) +
and (p.planid = ? ) +
and (p.status in ( ''E '', ''ED'', ''E4'', ''TE'')) +
and (to_char(current date,''YYYYMMDD'') between p.PlanStrt +
and (case when p.EvntDAte3 = 0 then 20991231 else p.EvntDate3 end)
+
) +
and (to_char(current date,''YYYYMMDD'') between p.fdoc and p.ldoc) +
AND (to_char(current date,''YYYYMMDD'') between +
p.cbrstrt and p.cbrstop) +
AND ((to_char(current date,''YYYYMMDD'') between +
p.cbrstrt and p.TERMDATE) +
or (p.termdate = 0))');
Dcl-DS ActPlanDS Qualified;
cobret char(1);
qbnum zoned(7:0);
cobrarnum zoned(7:0);
ssan zoned(9:0);
cvglevl Char(4);
cvgtype Char(9);
status Char(2);
planid Char(40);
planstrt zoned(8:0);
planend zoned(8:0);
fdoc zoned(8:0);
ldoc zoned(8:0);
cbrstrt zoned(8:0);
cbrstop zoned(8:0);
termdate zoned(8:0);
End-DS;
SqlStmt1 = SELECT_ActPlan;
// Prepare the statement
exec sql
prepare dynStmt1 from SqlStmt1;
// Declare a cursor for the prepared statement
Exec SQL
DECLARE dynCursor1 CURSOR FOR dynStmt1;
// Open the cursor with parameters
Exec SQL
OPEN dynCursor1 USING :w_ssan
,:w_planid;
// Fetch the data into your data structure
Exec SQL
FETCH dynCursor1
INTO :ActPlanDS;
// Check if successful
If SQLSTATE = '00000';
// Process your data
--
Kerwin Crawford
--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: [email protected]
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request-+hD5IHI5Xscn3HwCXmMcX9BPR1lH4CV8@public.gmane.org
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.
Please contact support-FMtJrHiV//lnDLsaKlm4mFaTQe2KTcn/@public.gmane.org for any subscription related questions.