× 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'm on V7R1, and the DS array is defined globally (at the top of the PGM
code).


On Wed, Oct 30, 2013 at 1:19 PM, Scott Mildenberger <
SMildenberger@xxxxxxxxxxxxxxxxxx> wrote:

I have this line:
exec sql fetch from Comment for 4 rows into :CommentDs;
with this definition:
d CommentDs e ds extname(dlds0150) qualified dim(4)

What release are you on?

It seems like I have seen this error when compiling sometimes but can't
remember the issue. Is the ds array defined globally or in a procedure?

Scott


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Michael Ryan
Sent: Wednesday, October 30, 2013 11:03 AM
To: RPG programming on the IBM i (AS/400 and iSeries)
Subject: Re: Embedded SQL Select Into

Still can't get that external data structure to work. Now I'm trying this:

D WkMblSesP E DS Dim(1000)
D Qualified
D ExtName(MBLSESP)

Exec SQL
Declare C1 Cursor For
Select * From MblSesp
Where Session_End is null;

Exec SQL
Fetch C1 For 1000 Rows
Into :WkMblSesP;
SQL5011: Position 20 Host structure array WKMBLSESP not defined or not
usable.

I'm thinking that Fetch and external data structures don't work together.



On Wed, Oct 30, 2013 at 12:55 PM, Birgitta Hauser <Hauser@xxxxxxxxxxxxxxx
wrote:

But even an array data structure cannot be used in composition with an
SELECT INTO!
You need a cursor. Within a cursor you can do a multiple row fetch:

D MyArrDS DS Dim(100)
D Fld1 10A
D Fld2 10I 0

/Free
Exec SQL Declare CsrC01 Cursor For
SELECT ....;

Exec SQL Open CsrC01;

Exec SQL Fetch From CsrC01For 100 Rows into :MyArrDS;

Mit freundlichen Grüßen / Best regards

Birgitta Hauser

"Shoot for the moon, even if you miss, you'll land among the stars."
(Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training
them and keeping them!"

-----Ursprüngliche Nachricht-----
Von: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]
Im
Auftrag von Gary Thompson
Gesendet: Wednesday, 30.10 2013 16:53
An: RPG programming on the IBM i (AS/400 and iSeries)
Betreff: RE: Embedded SQL Select Into

Note that your DS can be defined as a datastructure array - see post
by Barbara Morris about 4-6 weeks past.

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Michael Ryan
Sent: Wednesday, October 30, 2013 9:44 AM
To: RPG programming on the IBM i (AS/400 and iSeries)
Subject: Re: Embedded SQL Select Into

Thank you Alan...


On Wed, Oct 30, 2013 at 11:42 AM, Alan Campin <alan0307d@xxxxxxxxx>
wrote:

You cannot do an array using into. Wish we could. You must define a
cursor, open and then do a fetch into for x rows and then close cursor.

Also, you are going to have to have a data structure to read into.


On Wed, Oct 30, 2013 at 9:37 AM, Michael Ryan <michaelrtr@xxxxxxxxx>
wrote:

Sigh...so I'm trying this:

Exec SQL
Select Session_Id Into :WkSession_ID
From MblSesP
Where Session_End is null;

I've defined Wk_Session_ID as:

D WkSession_ID S 128
D Dim(1000)

Note: I've also tried to define it as a data structure array (or
thought
I
did). I get an SQL0312 error - variable not found or unusable.

The definition of Session_ID (from DSPFFD) is:

SESSION_ID CHAR 128 130 43 Both
SESSION_ID
Variable length field -- Allocated length : None
Default value . . . . . . . . . . . . . . : None
Coded Character Set Identifier . . . . . : 37

Two questions: What am I doing wrong, and why does SQL hate me?

Thanks!
--
This is the RPG programming on the IBM i (AS/400 and 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 IBM i (AS/400 and 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 IBM i (AS/400 and 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 IBM i (AS/400 and 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 IBM i (AS/400 and 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 IBM i (AS/400 and 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 IBM i (AS/400 and 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.