× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I should have spent more time thinking before sending. If I recall
correctly, You can use an externally described data structure on the file
you use in a "SELECT *", but not in the way you use it here. If you have 4
fields returned in SELECT statement, you need 4 host variables to receive
them. As far as I know there is no shorter way than:

  101        C+ FETCH INVCOUNT INTO :CompanyName, :CompanyNum, :POInvFlag,
:Count  

HTH,
Roger Mackie

-----Original Message-----
From: Wills, Mike N. (TC) [mailto:MNWills@xxxxxxxxxxxxxx]
Sent: Tuesday, August 12, 2003 11:17
To: Midrange - RPG (E-mail)
Subject: SQL Compiler Error - Don't know what is wrong


I am getting a pre-processor compile error that I can't figure out.
Everything looks to be correct. I am on V5R2. Here is the error I am
getting. 

  101        C+ FETCH INVCOUNT INTO :InvCountDS

SQL0312  30     101  Position 30 Variable INVCOUNTDS not defined or not
                     usable.

Here is my code:
     D InvCountDS      DS
     D  CompanyName                  30
     D  CompanyNum                    4  0
     D  POInvFlag                     1
     D  Count                         9  0

     C/Exec SQL
     C+ Declare INVCOUNT Cursor for
     C+   SELECT DBCPY_NAME, DBAPI_COMPANY, DBAPI_PO_INVOICE_FL, COUNT(*)
     C+     FROM LAWDBF7/DBAPAPI, LAWDBF7/DBAPCPY
     C+       WHERE DBAPI_COMPANY = DBCPY_COMPANY AND
     C+             ( DBAPI_PO_INVOICE_FL <> 'Y' AND
     C+             DBAPI_BATCH_DATE >= :FromDate AND
     C+             DBAPI_BATCH_DATE <= :ToDate )
     C+         GROUP BY DBCPY_NAME, DBAPI_COMPANY, DBAPI_PO_INVOICE_FL
     C+   UNION
     C+   SELECT DBCPY_NAME, DBAPI_COMPANY, DBAPI_PO_INVOICE_FL, COUNT(*)
     C+     FROM LAWDBF7/DBAPAPI, LAWDBF7/DBAPCPY
     C+       WHERE DBAPI_COMPANY = DBCPY_COMPANY AND
     C+             ( DBAPI_PO_INVOICE_FL = 'Y' AND
     C+             DBAPI_BATCH_DATE >= :FromDate AND
     C+             DBAPI_BATCH_DATE <= :ToDate )
     C+         GROUP BY DBCPY_NAME, DBAPI_COMPANY, DBAPI_PO_INVOICE_FL
     C/End-Exec

     C/Exec SQL
     C+ FETCH INVCOUNT INTO :InvCountDS
     C/End-Exec

Can anyone see anything wrong with this? I am sure it is something stupid,
but I can't see it.
_______________________________________________
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.

As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 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.