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



If you are on V5R4, please apply 5722ST1 PTF SI30483.


I also wanted to clarify a few things. The precompiler does
support qualified data structures, however SQL syntax only supports
one level of qualification. This does not mean that the
precompiler can only use the first level though.

d results ds qualified
d oD00001H likeds(wD00001H)
d oDMASTER likeds(wDMASTER)

You can specify :oMaster.Myfield in an SQL statement
and the precompiler will find that it is
Results.oMaster.MyField.

However, for SQL statements like Fetch, where
the precompiler is given a structure as a host
variable, the precompiler will only look at one
level for the subfield.

C+ fetch Fetch_Summary1 into :results

The precompiler will look at oD00001H and see it is a
data structure and give an error since SQL does not
have a data structure type.

If you do what Birgitta said,
c+ fetch Fetch_Summary1 into :oD00001H, :oDMaster

The precompiler will look at each subfield of each
structure and since they are only one level and match
SQL types, no error is given.

Hope this makes sense.

Thanks,
Gina



date: Fri, 14 Mar 2008 07:33:37 +0100
from: "BirgittaHauser" <Hauser@xxxxxxxxxxxxxxx>
subject: AW: SQL Fetch Into Multiple Externally Defined Data
Structures

Hi,

Try the following:
d wD00001H e ds extname(D00001H)
d wDMASTER e ds extname(DMASTER)


c+ fetch Fetch_Summary1 into :wD00001H, :wDMaster

One Problem I see in your code is the blank between the colon (:) and the
variable name (Results).
An other problem is, even though qualified data structures can be used, the
SQL precompiler can only use the first level.

Results.oMaster.MyField has more than one level and therefore cannot be
used
by the SQL precompiler.

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 Joe Wells
Gesendet: Thursday, March 13, 2008 19:38
An: rpg400-l@xxxxxxxxxxxx
Betreff: SQL Fetch Into Multiple Externally Defined Data Structures


I have Googled around, but not found an answer.....so here goes -

My embedded sql usually looks something like this -

this is the select statement - "select * from d00001h"

d wD00001H e ds extname(D00001H)
.
.
c/exec sql
c+ fetch Fetch_Summary1 into : wD00001H
c/end-exec
.
.
.
and all of my fields are found in wD00001H. That works great.

I now have a situation where I want to return all of the fields from two
different files. The select statement looks like this -

select * from d00001h, dmaster WHERE mreqnum=186 and Y1REQ#=MREQNUM

I have tried this -

d wD00001H e ds extname(D00001H)
d wDMASTER e ds extname(DMASTER)

d results ds qualified
d oD00001H likeds(wD00001H)
d oDMASTER likeds(wDMASTER)
.
.
.
c+ fetch Fetch_Summary1 into : results
.
.

But the sql pre compile fails with this message "Variable RESULTS not
defined or not usable.". I have tried other scenarios too, but am stumped!

Any suggestions?

Thanks,

Joe Wells


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.