Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Records inserted into the table completely lost
Message
From
23/09/1999 14:01:48
 
 
To
23/09/1999 08:29:41
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Miscellaneous
Thread ID:
00267898
Message ID:
00268099
Views:
27
Sorry about this second message Tim, but here I was working away on something else when I suddenly realized that I had written 'never had a Win95 client'. That is, of course, wrong. For some reason I had server in my head, even thoughI typed client#@!@# Time to have this head looked into (though I'm sure they'll find nothing.

Sorry about that

Jim N

>Hi Jim Thanx for the response...
>
>> You have a table with 50,000 records in it.
>> You start your program (testing) and do a TableUpdate(.T.) after INSERTing 50 >new records. In
>> the program that is still running you see that the table now has 50,050 >records.
>> You close the (test) program and using whatever means you now see that the >table has only 50,000 -
>> the original number of records before you added any with the test.
>
>> I am pretty sure that the above is correct so far, but please advise.
>
>Your close... And this should help explain your other question.
>
>> Also, what is the Server in operation here - OS and version?
>
>I have a server program running on an NT server 4.0 with SP3. It also runs several AS400 integration programs and is used as a file server.
>In this program I can press a button and get the foxpro command line.
>IN here I can check out stuff. But it's like working in foxpro so rather tahn
>confuse I just said I opened the table in foxpro.
>
>So I have a server program and a client program.
>The client program inserts records into the PDMLOG.DBF
>and the server program reads the same PDMLOG.DBF and transfers the data to AS400
>if it follows some criteria.
>
>When I go in the client program and change some things...
>I can generate the 50 records... After every insert there is a tableupdate()
>done typically.
>INSERT INTO PDMLOG blah blah
>tableupdate()
>The buffering is set to 5 in both prgrams...So I assume that after each record acommit is made.
>
>
>The user has complained that some data didn't go into the AS400
>I found it to be because it wasn't in the PDMLOG.DBF leading me to believe that they didn't type it in or it got rejected or lost.
>
>Looking into it I found the case where...
>I go into the client program and change stuff 50 records are inserted. I don't close the program. At the same time I go to the server and look into the table
>and I can't see the 50 new records.
>(I am sure they point to the same table)
>I close the prgram and come back in...and the 50 records are lost.
>
>The client is windows 95.
>
>
>> So I drop the CDX file and reindex it.
>>It works for a while and then the problem happens again.. Does this mean that a >REINDEX
>>results in showing the 50 "missing" records?
>
>So then...I decide it may be a problem with indexes...
>So I delete the pdmlog.cdx file and create the indexes again on the table.
>The 50 records are still gone. But if I repeat the above test
>after each line inserted by the prgram I see it immmediately on the server.
>
>> 2) You mention two programs, yet only seem to talk about one. Do you mean that >it is the same
>> program on two different workstations or do you mean two different programs?
>
>Explained above but there are many clients and 1 server sharing the same table.
>It is too different programs with different jobs.
>
>> Does the program use TRANSACTIONS and, if so, might the END TRANSACTION be >being bypassed?
>
>I don't use transactions. Ectually I am not sure how this applies in this case?
>
>Thanx a lot for your answer hope you can help explain this.
Previous
Reply
Map
View

Click here to load this message in the networking platform