From: tham chan weng on
Hi,

Thanks for all the advices I received in the earlier post and I have
upgraded to VO 2.8 SP3. The first trial run is a breeze except for
this

oServer:CopySDF("ExportFile.dbf",NULL_ARRAY,{|x:=FALSE|
DataScope(oOwner,oServer)==TRUE}, {|x| .NOT. _field->( RECNO() ) ==
oOwner:_vFirstRec}, )

I disable this function (this runs prefectly in 2.6 which I have been
using for the last 4 years) and everything is running as usual on the
first look and am now starting to do extensive test. Can anyone assist
me on this?

Thanks
From: Stephen Quinn on
tham

Try breaking it apart into discrete bits to locate the offending bit.

> oServer:CopySDF("ExportFile.dbf",NULL_ARRAY,{|x:=FALSE|
> DataScope(oOwner,oServer)==TRUE}, {|x| .NOT. _field->( RECNO() ) ==
> oOwner:_vFirstRec}, )
What happens in Datascope()??
Why are you equating LOGICAL values??
(DataScope(oOwner,oServer)==TRUE)

Why are you setting x := FALSE when you don't even use in the codeblock??
What's the _field->(recno()) for??
(wrong syntax imo - lose the () around recno() - that's a CLIPPER
requirement)

CYA
Steve


From: tham chan weng on
Dear Stephen

Thanks. It seems that x:=false is the culprit.

DataScope is a function to check certain fields. Only copy records
when it returns TRUE and stop copying when it reaches a predefine
recno of server.

With the change, it seems like working.


On May 22, 12:35 am, "Stephen Quinn" <stevej...(a)bigpondSPAM.net.au>
wrote:
> tham
>
> Try breaking it apart into discrete bits to locate the offending bit.
>
> > oServer:CopySDF("ExportFile.dbf",NULL_ARRAY,{|x:=FALSE|
> > DataScope(oOwner,oServer)==TRUE}, {|x| .NOT. _field->( RECNO() ) ==
> > oOwner:_vFirstRec}, )
>
> What happens in Datascope()??
> Why are you equating LOGICAL values??
>     (DataScope(oOwner,oServer)==TRUE)
>
> Why are you setting x := FALSE when you don't even use in the codeblock??
> What's the _field->(recno()) for??
>     (wrong syntax imo - lose the () around recno() - that's a CLIPPER
> requirement)
>
> CYA
> Steve