|
Thanks Barbara. I misunderstood the purpose of /INCLUDE.
I tried the /IF DEFINED and it works great in Code/400 with verify. But
when I compile, not only is the SQLCA in the copy member not copied but the
sqlca that I expected the compiler to create was excluded as well. There
were 86 lines excluded but my copy member only has 30. This is true both in
Code/400 and when I prompted CRTSQLRPGI at the command line.
3 D/if defined(need_sqlca)
LINES EXCLUDED: 86
4 D/endif
5 C*EXEC SQL
Phil
-----Original Message-----
From: owner-rpg400-l@midrange.com [mailto:owner-rpg400-l@midrange.com]On
Behalf Of bmorris@ca.ibm.com
Sent: Wednesday, May 23, 2001 12:34 PM
To: RPG400-L@midrange.com
Subject: RE: /INCLUDE directive
>Date: Wed, 23 May 2001 11:43:57 -0400
>From: "Phil" <sublime78ska@yahoo.com>
>
>My purpose for using /INCLUDE is so I can do verifies in Code/400.
Without
>having the SQLCA defined, the VERIFY in Code/400 returns errors for
>SQLRPGLE. But, when I compile, if the SQLCA is defined I get the above
>error.
Phil, /INCLUDE will never solve that problem, since the compiler will
always
open up /INCLUDE files. SQLRPGLE programs are compiled in two steps: first
the SQL preprocessor reads the source file, and creates a new RPGLE source
file. The preprocessor understands the /COPY directive, so rather than
just
copy the /COPY over to the new RPGLE file, it reads the /COPY file and
copies
its contents into the new RPGLE file, also using the contents for its own
purposes (and sometimes finding things it doesn't like, like nested
/COPYs).
/INCLUDE was added to the RPG compiler (but not the SQL preprocessor) to
give
programmers a way to code a copyfile without having SQL "see" it. /INCLUDE
was never intended to be a way to have the RPGLE compiler ignore a copy
file.
Try using a compiler-condition. Specify NEED_SQLCA in the Verify->Compile
dialog for your Code/400 verify, but don't define it for your regular
compiles.
/IF DEFINED(NEED_SQLCA)
/COPY sqlca_ds
/ENDIF
Barbara Morris
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator:
david@midrange.com
+---
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.