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



Tim,

As always, with SQL the champion of performance is the index. Did you ever try Rob's advice to use STRDBG, then review the joblog for suggestions? IBM provides you with detailed instructions regarding the access paths that it needs to service your request. Just take those suggestions and create the index as suggested.

Eric

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]On Behalf Of tim
Sent: Friday, January 18, 2008 9:18 AM
To: 'RPG programming on the AS400 / iSeries'
Subject: RE: Interupting an rpg sql search


I've tried CHGQRYA QRYTIMLMT(2), but that didn't help. Didn't see any
effect. Still took over a minute to return results.

Would changing the QQRYTIMLMT effect other query processes, like batch jobs?

I will also try playing with reording the SQL, but the users have several
fields they can queury from. They can choose city, state, zipcode, address.



-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Doug Davie
Sent: Friday, January 18, 2008 9:44 AM
To: RPG programming on the AS400 / iSeries
Subject: Re: Interupting an rpg sql search

Oh, and you could also experiment with using:
CHGQRYA QRYTIMLMT(2)
to control on a job by job basis.

On Jan 18, 2008 9:39 AM, Doug Davie <dougdavie@xxxxxxxxx> wrote:
Examine your QQRYTIMLMT system value.



On Jan 18, 2008 9:26 AM, tim <tim2006@xxxxxxxxxxx> wrote:
Here is the code I am refering to. The user may want to search for
%beauty%
in the name field of the client file. The client file has about 1/2
million
records. So this may take a while. This also needs to be done
interactive
since they want what they want when they want it :)

Dynstm is built by user requirements. So it can be more complicated.

Dynstm = select * from clientfile where upper(name) like '%ZONE%'
and city = 'NY' fetch first 25 rows only

exec sql set option datfmt=*usa;
exec sql prepare s2 from :dynstm;
exec sql declare c2 cursor for s2;
exec sql open c2;
exec sql fetch c2 into :thefileds;
dow sqlcod = 0;
blah blah blah
enddo

The user will hit enter and can wait as long as a minute. So, in turn,
they
close out the client access window which really makes a mess.




-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of rob@xxxxxxxxx
Sent: Friday, January 18, 2008 8:57 AM
To: RPG programming on the AS400 / iSeries

Subject: Re: Interupting an rpg sql search

I take it you're talking about the RPG we all know and love and not some
client/server version like VARPG?
I don't think you'll find a whole lot on "event programming" with RPG or
RPGLE. That's what might interrupt a long running process.
You're pretty much restricted to ENDJOB or SysReq. (Typically mapped to
Shift-Esc on a PC keyboard). Normally you'd use option 2. However, on
some long runners like that, I've had to use option 90 to force a sign
off
because option 2 would tell me something like it couldn't be halted
during
the middle of some critical operation or some such thing.

I'd really evaluate that SQL statement. Traditional wisdom is to do a
STRDBG UPDPROD(*YES) and do not specify a program name. After the
program
is done you can do a DSPJOBLOG and you'll see tons of SQL stuff in there
to look at.

Another consideration is CHGQRYA QRYTIMLMT(15)

After doing a little poking around, you might post the SQL statement and
we can see if you really flubbed it up. Hey, even I've made mistakes.
:-)

I don't suppose there's some way to throw a halt indicator? (Ducking
and
running.)

Rob Berendt
--
Group Dekko Services, LLC
Dept 01.073
PO Box 2000
Dock 108
6928N 400E
Kendallville, IN 46755
http://www.dekko.com





"tim" <tim2006@xxxxxxxxxxx>
Sent by: rpg400-l-bounces@xxxxxxxxxxxx
01/18/2008 08:43 AM
Please respond to
RPG programming on the AS400 / iSeries <rpg400-l@xxxxxxxxxxxx>


To
"'RPG programming on the AS400 / iSeries'" <rpg400-l@xxxxxxxxxxxx>
cc

Subject
Interupting an rpg sql search






I have a SQLRPGLE program that does a search using "like" over a large
file.
The search can take a bit a time in some cases. I would like to be able
to
stop the search by hitting a key (say esc key tied to an attention
program).



Can this be done? Or are there other techniques I can use. I've tried
the
"fetch first 25 rows only" clause, but the search still can take a long
time.





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