× 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'd do it right before you start filling in fields to write...

Assuming that the key fields are part of the record, consider the
*NOKEY parm of the CLEAR op-code

CSR KEYMCALC KLIST
CSR KFLD SQSYMB
CSR KFLD SQDATE
C*
CSR KEYMCALC CHAIN MCALC 92
C*
CSR *IN92 IFEQ *OFF
CSR Z-ADD HOLDSTO1 CVSTO1
CSR UPDATE CVREC
CSR ADD 1 CTRUPD
CSR ELSE
CSR *NOKEY CLEAR CVREC
CSR MOVEL SQSYMB CVSYMB
CSR MOVEL SQDATE CVDATE
CSR Z-ADD HOLDSTO1 CVSTO1
CSR WRITE CVREC
CSR ADD 1 CTRADD
CSR ENDIF

Charles

On Sat, Feb 5, 2011 at 6:13 PM, James Newman, CDP <newmanas400@xxxxxxxxx> wrote:
I posted last month about a problem I was having with a program updating
fields it shouldn't have been updating.  I've figured out that I need to use
CLEAR to make sure the leftover contents of the last record is wiped out and
doesn't carry over to the next record.  I guess I'm wondering where is the
best place to put it.  For example, should it be done before the key is
built?  After checking *IN92 to see if the record already exists?

    CSR   KEYMCALC      KLIST
    CSR                 KFLD                    SQSYMB
    CSR                 KFLD                    SQDATE
    C*
    CSR   KEYMCALC      CHAIN     MCALC                              92
    C*
    CSR   *IN92         IFEQ      *OFF
    CSR                    Z-ADD     HOLDSTO1      CVSTO1
    CSR                    UPDATE    CVREC
    CSR                    ADD       1             CTRUPD
    CSR                    ELSE
    CSR                    MOVEL     SQSYMB        CVSYMB
    CSR                    MOVEL     SQDATE        CVDATE
    CSR                    Z-ADD     HOLDSTO1      CVSTO1
    CSR                    WRITE     CVREC
    CSR                    ADD       1             CTRADD
    CSR                    ENDIF



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