|
The service program looks good, but in the module you're using %found()
which is not set by the READPE.
The operations that set %FOUND are:
v File operations:
- "CHAIN (Random Retrieval from a File)" on page 573
- "DELETE (Delete Record)" on page 595
- "SETGT (Set Greater Than)" on page 738
- "SETLL (Set Lower Limit)" on page 742
Charles Wilt
--
iSeries Systems Administrator / Developer
Mitsubishi Electric Automotive America
ph: 513-573-4343
fax: 513-398-1121
-----Original Message-----
From: rpg400-l-bounces+cwilt=meaa.mea.com@xxxxxxxxxxxx
[mailto:rpg400-l-bounces+cwilt=meaa.mea.com@xxxxxxxxxxxx] On Behalf Of
Tony Carolla
Sent: Thursday, October 13, 2005 1:54 AM
To: RPG programming on the AS400 / iSeries
Subject: Re: (E) Extender and %Error on WRITE
The module source:
-------------------------------
Dou Not %Error;
// Find next memo seq# for member
SetGT(E) (Family:Member) MmoRec;
ReadPE(E) (Family:Member) MmoRec Mm;
If %Found(Mmemo);
Mmo.Mmseq#=Mm.Mmseq#+1;
Else;
Mmo.Mmseq#=1;
EndIf;
Write(E) Mmorec Mmo;
EndDo;
--------------------------
The MMEMO file is uniquely keyed by account number and sequence number
(MMSEQ#). I have since written a dedicated service program that handles
this
operation a bit differently:
---------------------------
Dou Not %Error;
SetGT(E) (Family:Member) MmoRec;
ReadPE(E) (Family:Member) MmoRec M;
If %EOF(CMmemo);
Mo.Mmseq#=1;
Else;
Mo.Mmseq#=M.Mmseq#+1;
EndIf;
Write(E) MmoRec Mo;
EndDo;
--------------------------------------
But at the time the first program went haywire, the above service
program
wasn't being used by the program. There are no triggers on the file. I
don't
have detailed data about when the error happened (I am not currently
analyzing based on the status code, just using %ERROR).
Thanks for looking at this.
--
"Enter any 11-digit prime number to continue..."
"In Hebrew SQL, how do you use right() and left()?..." - Random Thought
"If all you have is a hammer, all your problems begin to look like
nails"
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.