AlexP wrote:There are no AppStartWait and AppStopWait methods in the original MemData.pas file, and the initialization section looks like:
initialization
StartWaitProc := nil;
StopWaitProc := nil;
You can compare your MemData.pas with the original one (you can get it from the archive at secure*devart*com). If you changed the source code, try to replace your MemData.pas with the original one and rebuild UniDAC. The problem should disappear after this.
To make cursor change to crSQLWait on executing procedures/queries, you should add the UniDACVcl unit to the Uses section of any unit of the application.
Sorry, I had a badly expressed.
Of course, that the module MemData.pas doesn't containt AppStartWait and AppStopWait procedures.
It contain only function variables: StartWaitProc and StopWaitProc.
The first code shows a fragment of
my module.
Code: Select all
unit uSomeTests;
interface
implementation
uses
MemData, Controls, Forms;
procedure AppStartWait;
begin
Screen.Cursor := crSQLWait
end {AppStartWait};
procedure AppStopWait;
begin
Screen.Cursor := crDefault
end {AppStopWait};
initialization
MemData.StartWaitProc := @AppStartWait;
MemData.StopWaitProc := @AppStopWait;
end.
We want to restore the behavior similar to that offered by BDE.
We want to hourglass cursor back when opening/executing queries/stored procedures.
And the previously presented code:
Code: Select all
var
lQuery: TUniQuery;
lSP: TUniStoredProc;
begin
[..]
lQuery.SQL.Text := 'SELECT * FROM SOME_TABLE WHERE SOME_FIELD = :SOME_FIELD';
lQuery.ParamByName('SOME_FIELD').AsInteger := 1;
lQuery.Prepare;
lQuery.Open; //<- Cursor remains as crSQLWait
[..]
lSP.Execute; //<- Cursor remains as crSQLWait
was intended to show that there is something wrong.
Uff,
