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



You should check for %status() = 1021 (Duplicate Key). A write can fail for other reasons, in wich case you sould not increment the counter. I had similar algorithm fail during an index rebuild. A more frecuent cause of trouble can be Referencial Integrity, but then again, not using it is worst.
___________________________________________________________________________________________________
Tony Carolla wrote:

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