Page 1 of 1

Progress during copy table

Posted: Fri Jul 11, 2008 2:36 am
by fraxzi
Hello All!

Can I use ADSRegCallBack() with ADSCopyTable()?

I need progressbar during copy table operation.


Regards,

Posted: Sat Jul 12, 2008 6:01 am
by fraxzi
ADS Operations Supporting Callback Functionality: Advantage Client Engine AP

Code: Select all

AdsCreateIndex	
AdsReindex	
AdsPackTable	
AdsExecuteSQL	
AdsExecuteSQLDirect	
AdsGotoBookmark	
AdsGotoBookmark60	
AdsGotoBottom	
AdsGetRecordCount	
AdsSkip	
AdsCopyTable**
AdsCopyTableContents	
AdsConvertTable	

ANYBODY with sample code? ..particularly **

I tested ADSRegCallBack() with indexing operation and it worked well.


Regards,

Posted: Sat Jul 12, 2008 8:15 pm
by Antonio Linares

Posted: Mon Jul 14, 2008 12:30 am
by fraxzi
Mr. Antonio,

Thanks for the reply. I read that thread before...
ADS Callback function is only implemented in the indexing stuff, not
other ADS function uses the Callback functions since they are not
"callback" aware.

and..
xHarbour's RDD_ADS function named AdsRegCallBack implements on Windows
the ADS function named AdsRegisterProgressCallback(..) , which works only
with INDEX and REINDEX and is considered obsolete starting with ADS 8.1

So we are waiting for the fix... Now everybody hacks "adsfunc.c" :P


My regards,

Posted: Mon Jul 14, 2008 6:31 am
by Antonio Linares
Frances,

Are you calling ADSREGCALLBACK( bCallBack ) before ADSCOPYTABLE() ?

Posted: Mon Jul 14, 2008 6:03 pm
by fraxzi
Yes Senior Antonio!

I do this...

Code: Select all

...
ADSRegCallBack({|nPercent| uProgressCallBack( nPercent ) })
....

lCopyOK := (cAlias)>( AdsCopyTable( "TempFile", ADS_RESPECTFILTERS ) )

....

ADSClrCallBack()
....


FUNCTION uProgressCallBack( nPercent )
 oRep_Gauge:SetPos( nPercent )
RETURN( .F. )

1. lCopyOK returns true and the 'TempFile' was successfully created.
2. uProgressCallBack() function was never called :(


Regards,

Posted: Mon Jul 14, 2008 7:00 pm
by Antonio Linares
Frances,

> uProgressCallBack() function was never called

Please place a MsgInfo() call inside uProgressCallBack() to check if the code execution goes through it, thanks

Posted: Tue Jul 15, 2008 12:24 am
by fraxzi
Mr. Antonio,

>Please place a MsgInfo() call inside uProgressCallBack() to check if the code execution goes through it, thanks


I already did that. :o It was really never called.


But in indexing with same construct and same uProgressCallBack() function.. It did well.


Regards,

Posted: Tue Jul 15, 2008 12:11 pm
by Antonio Linares
Frances,

> But in indexing with same construct and same uProgressCallBack() function.. It did well.

Then it looks as an ADS error. If the same callback works on indexing, it should also work with AdsCopyFile()

Could you contact ADS tech support service ? thanks,