Doug,

Just to clear up ... It doesn't matter if your physical file doesn't have
any null values. If your WHERE clause returns 0 rows then the sum of 0 rows
is NULL.


On 8/1/07, Doug Palme <dpalme@xxxxxxxxxxx> wrote:

Well I actually checked the PF where the data is coming from and there are
no null values for the extended amount.....and there should never be a
null
value returned, so something else is amiss......I am concerned that
handling
nulls this way, will inadvertently mask a potential problem that needs to
be
addressed....


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Milan Zdimal
Sent: Wednesday, August 01, 2007 4:06 PM
To: RPG programming on the AS400 / iSeries
Subject: Re: As much as I hate showing my own stupidity more than once a
day(I am flat out stuck) Embedded SQL

Told handle a null value just do.

1. Define an int like this in your program
D MYNULL S 5I 0 INZ(-1)
2.
SELECT SUM(SLEXT$) INTO :ZSUM:MYNULL
FROM SLSTRNL5
WHERE SLACCT= :CUSTNO
AND SLTDAT > :ZBDATEN
AND SLTDAT <= :ZEDATEN
AND SLCLAS > 1
AND SLSHRT = ' '

Should do it.




On 8/1/07, Michael_Schutte@xxxxxxxxxxxx <Michael_Schutte@xxxxxxxxxxxx>
wrote:

No, but it would remove the unnecessary cursor, opens and fetchs.

Michael Schutte
Admin Professional
"The Secret's the Sauce! Enjoy our new Bob-B-Q Pulled Pork Knife & Fork
Sandwich!"


rpg400-l-bounces@xxxxxxxxxxxx wrote on 08/01/2007 04:55:25 PM:

Would that explain the error code of -305?


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Michael_Schutte@xxxxxxxxxxxx
Sent: Wednesday, August 01, 2007 3:50 PM
To: RPG programming on the AS400 / iSeries
Subject: Re: As much as I hate showing my own stupidity more than once
a
day
(I am flat out stuck) Embedded SQL

Doug, you are doing a sum with no group by... so a cursor is not
needed
because only one result will be returned. You should simply say

SELECT SUM(SLEXT$) FROM SLSTRNL5
INTO :ZSUM
WHERE SLACCT= :CUSTNO
AND SLTDAT > :ZBDATEN
AND SLTDAT <= :ZEDATEN
AND SLCLAS > 1
AND SLSHRT = ' '


Michael Schutte
Admin Professional
Bob Evans Farms, Inc.
"The Secret's the Sauce! Enjoy our new Bob-B-Q Pulled Pork Knife &
Fork
Sandwich!"


rpg400-l-bounces@xxxxxxxxxxxx wrote on 08/01/2007 04:44:38 PM:

I am reading a file and using the values within that file to create
an
SQL
that will go out and select a sum of sales figures for a particular
customer.



Here is the relevant SQL code:



C*---Prepare SQL Statement

C/EXEC SQL

C+ DECLARE C1 CURSOR FOR

C+ SELECT SUM(SLEXT$) FROM SLSTRNL5

C+ WHERE SLACCT= :CUSTNO

C+ AND SLTDAT > :ZBDATEN

C+ AND SLTDAT <= :ZEDATEN

C+ AND SLCLAS > 1

C+ AND SLSHRT = ' '

C/END-EXEC





I then open the cursor with the following:



C*---Open the Cursor

C/EXEC SQL

C+ OPEN C1

C/END-EXEC



I then am running a fetch statement with the following:



C*---Fetch the Result and place into Variable

C/EXEC SQL

C+ FETCH C1 INTO :ZSUM

C/END-EXEC



ZSUM is defined as an 9,2 on the D spec



Everything so far, at least to my eyes looks good...



However before I process that ZSUM data (output to a report) I check
the
SQLCOD and I am getting a return code of -305..I have checked the
variables
that I am passing in, such as CUSTNO (defined on the D SPEC
correctly),
ZBDATEN and ZEDATEN are also defined on the D SPEC correctly...so I
have
no
clue what variable the system is balking at.



Any assistance would be appreciated.



Douglas












****************************************************************************


This transmission may contain information that is privileged,
Confidential and/or exempt from disclosure under applicable law.
If you are not the intended recipient, you are hereby notified that
any disclosure, copying, distribution, or use of the information
contained herein (including any reliance thereon) is STRICTLY
PROHIBITED. If you received this transmission in error, please
immediately contact the sender and destroy the material in its
entirety, whether in electronic or hard copy format. Thank you.





****************************************************************************


--
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.


--
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.










****************************************************************************

This transmission may contain information that is privileged,
Confidential and/or exempt from disclosure under applicable law.
If you are not the intended recipient, you are hereby notified that
any disclosure, copying, distribution, or use of the information
contained herein (including any reliance thereon) is STRICTLY
PROHIBITED. If you received this transmission in error, please
immediately contact the sender and destroy the material in its
entirety, whether in electronic or hard copy format. Thank you.




****************************************************************************


--
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.


--
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.




--
Home Office: (519) 541-1905
Cellular: (519) 490-0036
MSN: milanz@xxxxxxxxx
Skype: milan.zdimal
Web: http://www.icebreak4rpg.com (Web Enabled RPG)
--
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.







****************************************************************************
This transmission may contain information that is privileged,
Confidential and/or exempt from disclosure under applicable law.
If you are not the intended recipient, you are hereby notified that
any disclosure, copying, distribution, or use of the information
contained herein (including any reliance thereon) is STRICTLY
PROHIBITED. If you received this transmission in error, please
immediately contact the sender and destroy the material in its
entirety, whether in electronic or hard copy format. Thank you.

****************************************************************************

--
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-Ups:
Replies:

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.