The .net app will be calling the web service so the connection is
through HTTP I assume. This is my first go round with web services so my
assumptions may be way off base. I'm assuming each call to the web
service is stateless and one call knows nothing about previous calls.
Please correct me if needed.
It looks like Charles' SQL statement is what I was looking for.
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Aaron Bartell
Sent: Tuesday, August 12, 2008 5:04 PM
To: RPG programming on the AS400 / iSeries
Subject: Re: Returning Record Sets from SQLRPGLE Web Services
How is the .NET connecting to you? The reason I ask is because it
important to know if this is a single job processing multiple users
or if each user has their own job (i.e. ODBC connection).
If each user has their own job then state of the cursor *should* be
from one call to the next and your approach *should* work just fine.
If that is not the case, then you could have your "entry point program"
calls to data queues that have a unique job-per-user sitting behind it
thus holding the state of the cursor. Each job would have an RPG
programming waiting for a specific value (hence you would need to create
keyed data queue) which would be a token id of some sort the client
pass to the server.
On Tue, Aug 12, 2008 at 3:18 PM, Coyle, Stephen F.
I have a web service that calls a SQLRPGLE program and returns
maximum of 1000 records. If a statement selects over 1000 records, and
multiple calls to the service are needed, how will the service know
where the current cursor should be?
The .net consultant who is writing the front end wants to pass
page number, so for records 1000 through 2000 he would request page 2.
I think this would be possible using FETCH RELATIVE but I think this
would require that the cursor cannot move between calls and I cannot
guarantee that. Correct?
Just wondering how others might be handling this paging
situation in a web service.
Thanks for all suggestions and ideas...
Currently I'm using "Fetch C1 for :MaxElem Rows Into :OutDATA ; ".