| Subject |
Re: Append problem xdml |
| From |
Bruce Beacham <bbeacham@no_plm_lowman.co.uk> |
| Date |
Sun, 8 Nov 2020 22:13:11 +0000 |
| Newsgroups |
dbase.getting-started |
Seems to be some odd coding here.
On 08/11/2020 10:23, Charlie wrote:
> use taldata order lname
> do while not eof()
> partno = part_no
> set filter to part_no = partno
> count to cnt
> if cnt > 1
So you are removing all records with this partno except for the last one.
> cntr = cnt
> do while cntr > 1
> delete
> cntr = cntr - 1
> enddo
The table is still pointing to the deleted record. so you are
recording this information on the deleted record - deliberately?
> replace qty with cnt
> set filter to
> endif
> skip
You are now pointing to the next record after the deleted record. At
some point you may encounter the last record carrying the partno you
have just reduced to one record - but its qty field could contain any
value.
But you may not encounter it: that depends on where it lies relative to
the rows for the partno you are now going to collapse.
> enddo
Bruce Beacham
> And it does add the blank correctly but it also changes somehow the size of taldata.dbf and fails when you try to run talfinis.prg. I think it has something to do with an indexing problem. What happens is instead of replacing all fields, only the last record in taldata is changed. So if you add a total of 60 records in master.dbf, the last record of corresponding taldata.dbf shows a quantity of 60. I have tried to reindex taldata.dbf but i don't think that helped.
>
> i'm thinking possibly I can fix this in talfinis.prg but with the set relation, i'm not sure what to do.
>
> If worse comes to worse i can just tell the operator of the other computer not to introduce an item not already in master.dbf.
>
> Sorry this is so long and probably confusing. Just one of those stupid problems that I hope there is an easy fix for.
>
>
>
|
|