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

For each file (physical, logical, with ot without key), i build one source
with some procedures :
    Get_Filename          (CHAIN)
    Set_filename            (SET, LL, GT)
    Exists_filename        (SETLL without read)
    Read_filename         (READ, readp, readE, READPE)
    Insert_filename        (write)
    Delete_filename       (delete)
    Unlock_filename      (unlock)
    Update_filename     (update)
    dft_filename            (populate the exported datastructure with defaul
values)
All "READ" procedures include a parm (*on/*off) to lock or not the record)

Create a module and one service pgm by file
a ds (io_filename) is exported.

It is not done by hand, i create a little pgm that get file decription and
create all sources needed (procedure interface, module...)

When i use suche a procedure, i include 3 lines :

    /copy of the bnddir (it is one with only IO service pgm)
    /copy of procedure interface
    an external DS (linked with the file) if i use data from the file.

the only think (for me) to watch is in a loop that call a program that read
the same file i must make a setgt before the next read.
all procedure return *off if request fald or *on if not.

My loop are like this :

Dow    Read_filename (*off : '*NEXT' : '*EQ' : Key1 : Key2 ...)
do staff
Enddo

One cool thing is that i can change the file (add new fields at the end)
without getting level error (new field will not be usable until i recompile)
I have a performance gain, and all IO for a file are in ONE source.
It is new for us, but all find it easy and pretty to use.

My little piece of 0,1 euro.



----- Original Message -----
From: "Tony Carolla" <carolla@xxxxxxxxx>
To: "RPG programming on the AS400 / iSeries" <rpg400-l@xxxxxxxxxxxx>
Sent: Wednesday, February 02, 2005 1:50 AM
Subject: Re: RPG read loops


> Paul -- Now that makes sense!  In this way, even though you have a
> module for each file (or even multiple), you can reuse this module for
> all programs that access the file.  This reminds me of what I read in
> the sorcerers guide about externalizing output.  It really makes
> sense.  Thanks!
>
>
> --
> "Enter any 11-digit prime number to continue..."
> --
> 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.