Page 1 of 1

Problem with dbdelete() and pack

PostPosted: Wed Oct 12, 2005 9:36 am
by Maurizio
I use DBFCDX RDD
the command dbdelete() and pack
don't work correctly

Regards Maurizio

Re: Problem with dbdelete() and pack

PostPosted: Fri Oct 14, 2005 8:02 pm
by Richard Chidiak
Maurizio wrote:I use DBFCDX RDD
the command dbdelete() and pack
don't work correctly

Regards Maurizio


Maurizio

Do you have

SET DELETE ON

Richard

PACK and ZAP in real pocket pc

PostPosted: Sat Oct 15, 2005 10:11 pm
by Daniel
We have same problem, only in real pocket pc.

In PC with harbour or xharbour work ok. Also in emulator is ok.

PACK and ZAP not delete records, only mark it except the first record that recall delete.

We do not use index.

And we use SET DELETED ON

If PACK is not used all records mark deleted correctly.

*

USE FALLIN
GO TOP
DO WHILE .not. Eof()
DELETE
SKIP 1
ENDDO
PACK
CLOSE

USE FALLIN
GO TOP
IF .not. Eof()
MsgInfo("Hay Datos","Atencion")
ENDIF
CLOSE

Regards

PostPosted: Sat Oct 15, 2005 11:56 pm
by Antonio Linares
Daniel,

Yes, it is working ok on the emulator but it isn't on the pocket pc. Very strange. They should work the same.

Do other FWPPC users have noticed the same ? Any workaround ?

PostPosted: Sun Oct 16, 2005 12:08 am
by Antonio Linares
A first idea to use as a workaround it may be to create a temporary DBF and copy the non deleted record only to it.

Then remove the first DBF file, and rename the temporary as the good one.

PostPosted: Mon Oct 17, 2005 7:07 am
by Maurizio
I try on Windows CE.NET and on pocket pc
with the same problems
Maurizio

PostPosted: Mon Oct 17, 2005 12:23 pm
by andreab
I think that problem is dbf path.
I have oher problems' with this...
but not with emulator.... :(
Use path for open dbf...

My two cents
regard's
andrea bruni

PostPosted: Mon Oct 17, 2005 1:02 pm
by Richard Chidiak
andreab wrote:I think that problem is dbf path.
I have oher problems' with this...
but not with emulator.... :(
Use path for open dbf...

My two cents
regard's
andrea bruni


It is not the path but probably the header of the dbf for the first record.

Antonio, i tried the test.prg that you have in samples dir and tried to open the dbf file (after program execution) on my laptop pc. My dbf editor (cdbfw) did not want to open it mentionning dbf header is not correct. Once corrected, it shows that 2nd and third are deleted.

Richard

PostPosted: Mon Oct 17, 2005 1:11 pm
by Richard Chidiak
Richard Chidiak wrote:
andreab wrote:I think that problem is dbf path.
I have oher problems' with this...
but not with emulator.... :(
Use path for open dbf...

My two cents
regard's
andrea bruni


It is not the path but probably the header of the dbf for the first record.

Antonio, i tried the test.prg that you have in samples dir and tried to open the dbf file (after program execution) on my laptop pc. My dbf editor (cdbfw) did not want to open it mentionning dbf header is not correct. Once corrected, it shows that 2nd and third are deleted.

Richard


Forgot to say, execution did occur on pocket pc and file was copied to laptop afterwards

PostPosted: Mon Oct 17, 2005 1:41 pm
by Antonio Linares
Richard,

I have tested it on the emulator and works ok. Then I modified the DBF path (SD card) and tested it again on the real pocket pc and the problem then happens.

I guess we need to create a zapDbf() function that does what I described on a previous msg. Also we could try COPY TO ... FOR ... command too.

PostPosted: Mon Oct 17, 2005 2:40 pm
by Richard Chidiak
Antonio Linares wrote:Richard,

I have tested it on the emulator and works ok. Then I modified the DBF path (SD card) and tested it again on the real pocket pc and the problem then happens.

I guess we need to create a zapDbf() function that does what I described on a previous msg. Also we could try COPY TO ... FOR ... command too.


Antonio

I tried COPY TO on pocket pc

Only one record (the first one) is copied ??? none should be there

Again the header of the original file where we delete is corrupted.

Richard

PostPosted: Mon Oct 17, 2005 4:39 pm
by Antonio Linares
Richard Chidiak wrote:Only one record (the first one) is copied ??? none should be there

Have you checked if that record is marked as deleted ?

Richard Chidiak wrote:Again the header of the original file where we delete is corrupted.


How do you know this ? Do you get an error when you try to open it ? What tool are you using to open it ? Thanks.

PostPosted: Mon Oct 17, 2005 5:49 pm
by Richard Chidiak
Antonio Linares wrote:
Richard Chidiak wrote:Only one record (the first one) is copied ??? none should be there

Have you checked if that record is marked as deleted ?

Richard Chidiak wrote:Again the header of the original file where we delete is corrupted.


How do you know this ? Do you get an error when you try to open it ? What tool are you using to open it ? Thanks.


Antonio,

The only record left (first one) is "not" quoted as DELETED

After execution on my pocket pc, i remove the sd card and put it on a sd card reader connected to my computer, then i can open the file on my laptop.

I use cdbfw for browsing any dbf, this product is just magic, and cdbfw informs me that the header is corrupted.

Richard

Re: Problem with dbdelete() and pack

PostPosted: Mon Apr 06, 2009 7:45 am
by Otto
Hello,
What is the status on ZAP and PACK.
Is ZAP and PACK working now?
Thanks in advance
Otto

Re: Problem with dbdelete() and pack

PostPosted: Mon Apr 06, 2009 10:36 am
by Antonio Linares
Otto,

As we are using a recent Harbour build with FWPPC, those RDD functions should be working fine.