Из того, что я вижу, мое ПО для членства подключается к нескольким таблицам, используя следующий код в процедуре FormCreate:
{Open the Sessions}
Membership.LoginPrompt := False;
Membership.Username := 'ONLINE';
Membership.Password := '#######';
Membership.ConnectPath := MembershipLocation;
Membership.IsConnected := True;
PosConnection.ConnectPath := PosLocation;
PosConnection.IsConnected := True;
Bookings.ConnectPath := BookingsLocation;
Bookings.IsConnected := True;
Local.ConnectPath := LocalLocation;
Local.IsConnected := True;
// Open all the tables
for Wk1 := 0 to ComponentCount - 1 do
begin
{Skip the Tmp / New Tables}
if ((Components[Wk1] is TAdsTable) and (TAdsTable(Components[Wk1]).Name = 'NewTable')) then
Continue;
if ((Components[Wk1] is TAdsTable) and (TAdsTable(Components[Wk1]).Name = 'TmpTable')) then
Continue;
{Is it a TTable}
if Components[Wk1] is TAdsTable then
TAdsTable(Components[Wk1]).Active := True;
{Is it a TwwTable}
if Components[Wk1] is TwwTable then
TwwTable(Components[Wk1]).Active := True;
{Is it a TQuery}
if Components[Wk1] is TAdsQuery then
TAdsQuery(Components[Wk1]).Active := True;
end;
{Activate the Membership Tables. This is due to passwords}
Members.Active := True;
MemTypes.Active := True;
MembersById.Active := True;
MemBookMSys.Active := True;
{Rebuild the Secondry index on the MemBook table}
if RebuildIdx = True then
begin
MemBook.Active := False;
MemBook.Exclusive := True;
MemBook.Active := True;
// Check(DbiRegenIndexes(MemBook.Handle));
MemBook.Active := False;
MemBook.Exclusive := False;
MemBook.Active := True;
end;
{Make the Table Active}
MemBook.Active := True;
Иногда, когда сервер не готов, но соединение не устанавливается, а пользовательпоявляется ошибка Advantage 7.xxx
Мне нужно, чтобы повторить попытку подключения несколько раз, или снова по истечении определенного времени.
Существует ли стандартный способ отлова ошибок иповторная попытка подключения по этому сценарию?Или я должен просто повторить код по прошествии определенного количества времени?
Спасибо