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



Luke, seems simple to me. You are just making more difficult then it
needs to be.

create a procedure to do the check for you.

p duplicate_order_past_year...
p b export
d pi 10I 0
d orderid 20I 0 const

// if not found at all in the file.
setll (orderid) from orderheader;
If not %equal(orderheader);
return 0;
endif;

reade (orderid) orderheader;
If not %EoF();
if orderdate >= %date() - %days();
return 1;
endif;
endif;
return 0;

P e


You can then compile this into a module, then a service program. Then you
may want to have a wrap with a SQL function so that you can put into a
select statement.

select * from tmp_order
where duplicate_order_past_year(orderid) = 0






On Thu, Apr 11, 2013 at 11:50 AM, Gary Thompson <gthompson@xxxxxxxxxxx>wrote:

Luke,
Maybe have index/logical with key by year, ordered
At 50 million per year, you can justify the separate year column/field

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Klugman, Luke
Sent: Thursday, April 11, 2013 9:38 AM
To: RPG programming on the IBM i (AS/400 and iSeries)
Subject: RE: Logical file in RPG

An example of my situation is that I have an order file, say with an
orderId and orderDate field.

I may receive 50 million orders a year, and I want to be able to check
whether I have previously received the same order within the last year.

I know I can just create a logical on orderId and check, but just wanted
to know if there was a way of sub setting my file by for instance current
ytd, and then checking for my orderId.

Kind rgds
Luke

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Anderson, Kurt
Sent: 11 April 2013 15:48
To: RPG programming on the IBM i (AS/400 and iSeries)
Subject: RE: Logical file in RPG

Create a new index?

I don't understand this line of thinking. If I was concerned about all
the different fields we may want to access a file by I'd never get any
indexes created - or they'd end up convoluted and inefficient. Is it that
any new index would want to also select only a subset of records?
If so, then each new index may need a new view (as Gene gave an example
of) if you want the database to be the one supplying a subset of data
(instead of needing programs to do it).

I guess if you provided an example of a possible situation you're
concerned about, I (and possibly we) could better visualize your concern.

-Kurt

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Klugman, Luke
Sent: Thursday, April 11, 2013 9:19 AM
To: RPG programming on the IBM i (AS/400 and iSeries)
Subject: RE: Logical file in RPG

Thanks for this Gene, but what if I have an additional field I want to use
as the key, instead of the date...

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Gene Burns
Sent: 11 April 2013 14:36
To: RPG programming on the IBM i / System i
Subject: Re: Logical file in RPG

You could create the index over the table using the date then create a
view over the table with the date selection. If I recall correctly the
view would utilize the index to select the correct data.


CREATE INDEX ATABLEI1 ON ATABLE (DATE_FIELD)


CREATE VIEW ATABLEV1 ON ATABLE
WHERE DATE_FIELD >= (CURRENT DATE - 1 YEARS)
--
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.


-----------------------------------------------------------------------
The information contained in this email is confidential and may also
contain privileged information. Sender does not waive confidentiality or
legal privilege. If you are not the intended recipient please notify the
sender immediately; you should not retain this message or disclose its
content to anyone.
Internet communications are not secure or error free and the sender does
not accept any liability for the content of the email. Although emails are
routinely screened for viruses, the sender does not accept responsibility
for any damage caused. Replies to this email may be monitored.
For more information about the Tullett Prebon group of companies please
visit the following web site: www.tullettprebon.com

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