>Hi,
>
>I had posted previously about getting a "Uniqueness of Index Violation"
>using seek(). I have finally figured out that what is happening is
>that I have earlier in the code tried to do a few replaces on the same file that
>are not being saved due to a an Index Violation.
>
>The changes I am making should not be an Index Violation.
>
>The fields in question are pay_acct I(4), pay_sub I(4) and pay_schdate D(8)
>the index is pay_acct - str(pay_acct)+str(pay_sub)+dtos(pay_schdate).
>
>The records that exist are:
>pay_acct pay_sub pay_schdate
>100 1 09/10/1997
>100 1 09/17/1997
>100 2 09/24/1997
>
>I am trying to save a new record that has pay_acct = 100, pay_sub = 1,
>and pay_schdate = 09/24/1997. Which is not a duplicate. When
>I changed the date of acct# 100-2 to 09/25/1997 then the save works.
>so the index violation is occuring with the 100-2 record but it shouldn't
>since the pay_sub is in the index and I am trying to save a record with
>pay_sub = 1.
>
>I am totally baffled here. I assume I have something set up wrong with
>the Candidate index, but I don't know what.
>
>Thanks for any help,
>
>Paul
if the string used for this index has ever been changed, try validating your database (validate database recover). the database container may still have the wrong string.