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



Alan,

Just to point out that FEOD(n) is the preferred option.

This allows you to take advantage of the performance improvements of
blocking, yet be able to control when the data is flushed from the
buffers. Note however that doing an FEOD(n) after every write is the
same as BLOCK(*NO). Which is contrary to the idea behind FEOD(n).
You should write as many records as possible in PGMA, then call
FEOD(n) before calling PGMB.

HTH,
Charles

On Mon, Sep 14, 2009 at 9:03 AM, Alan Shore <AlanShore@xxxxxxxx> wrote:

I want to thank everyone for their replies
I learnt a couple of new things from my question.
I did not know about the FEOD verb
I also did not know about the BLOCK(*NO)

Thanks all


Alan Shore
Programmer/Analyst, Distribution
E:AShore@xxxxxxxxxxx
P:(631) 200-5019
C:(631) 880-8640
"If you're going through Hell, keep going" - Winston Churchill

rpg400-l-bounces@xxxxxxxxxxxx wrote on 09/14/2009 08:18:28 AM:

David,

In order to see a problem, you'd have to be doing two things
1) Writing to a file in PGMA in such a manner that RPG does blocking.
2) Writing some records in PGMA, then without ending the program or
closing the file, calling PGMB and expecting it to see the records
just writing by PGMA.

Regarding 1)
Basically, you have to write output only to a file.  By default RPG
will block such output.  Though you can use the BLOCK(*NO) keyword on
the f-spec to change it.  In addition, the SEQONLY param of OVRDBF can
effect blocking.

You'll see a compile time diagnostic message:
RNF7086 - RPG handles blocking for file XXXXXXX. INFDS is updated only
when blocks of data are transferred.

Here's some more info:
http://www-912.ibm.com/s_dir/slkbase.
NSF/0/d6738e1cd37e1f33862565c2007cef79?OpenDocument

In addition, Google is your friend.

HTH,
Charles Wilt


On Mon, Sep 14, 2009 at 2:56 AM, David FOXWELL <David.FOXWELL@agipi.
com> wrote:
That's an interesting piece of information that I'm saving so that
I'll be able to use it next time, but I'd like to know when to
implement it. I mean, do we HAVE to discover the problem during the
test or wait for a program to crash or not work properly first?

-----Message d'origine-----
De : rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] De la part de Jon Paris
Envoyé : samedi 12 septembre 2009 19:17
À : rpg400-l@xxxxxxxxxxxx
Objet : Re: Do I still need to use FRCRATIO

I'd use FEOD with the N extender.  i.e. FEOD(N) filename;

This version is far more efficient than even the basic FEOD
and better than removing blocking. Its effect is to write the
current updated block back to the OS buffers so that it is
immediately visible to other programs - it just doesn't force
the system to wait while the data is written to disk.

Avoid closing the file whenever possible.


Jon Paris

www.Partner400.com
www.SystemiDeveloper.com



On 12-Sep-09, at 1:00 PM, rpg400-l-request@xxxxxxxxxxxx wrote:

Yes, closing the file should force it to disk.
Likewise, you could use FEOD (without closing the file) Or
you could
put BLOCK(*NO) on the F-spec.

--
This is the RPG programming on the IBM i / System i
(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 / System i (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 / System i (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 / System i (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 ...

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.