![]() |
Datenbank: ADS_LOCAL • Version: 10.10 • Zugriff über: Delphi
ADS_LOCAL Zugriff mehrer Nutzer
Ich habe eine kleine Anwendung in Delphi geschrieben,
die Projektdaten organisieren soll. Dies erfordert nun den gleichzeitigen Zugriff mehrerer Personen. Meist wollen alle nur lesen. Es wird maximal einer schreiben. Nachdem, was ich bislang hier gelesen habe, müsste der Zugriff für maximal 5 Nutzer möglich sein. Wird die Anwendung von einem zweiten Nutzer gestartet, bekomme ich einen EADSDatabaseError. In der Table ist Exclusive := False; Ich hoffe, ihr habt einen Tip für mich. |
AW: ADS_LOCAL Zugriff mehrer Nutzer
es gibt sicherlich noch mehr Information über den Fehler ...
|
AW: ADS_LOCAL Zugriff mehrer Nutzer
Delphi-Quellcode:
In einer anderen kleinen Anwendung hatte ich das Problem schon einmal.
procedure Tfrm_Hauptform.Timer1Timer(Sender: TObject);
var FDock : boolean; Fa : integer; FClients : integer; begin Timer1.Enabled := false; try // // ALS-Datenbanken // AdsConnection_Daten.IsConnected := False; AdsConnection_Daten.ConnectPath := extractfilepath(application.exename) + 'Daten'; AdsConnection_Daten.IsConnected := true; // Datenbank "DB_Projekte" prüfen und öffnen If FileExists(extractfilepath(application.exename) + 'Daten\DB_Projekte.adt') then begin DB_Projekte.Exclusive := false; DB_Projekte.Active := false; DB_Projekte.TableName := 'DB_Projekte.ADT'; DB_Projekte.Active := true; DB_Projekte.edit; FClients := Panel1.DockClientCount - 1; if FClients = (-1) then FDock := true; for Fa := 0 to FClients do begin Panel1.DockClients[Fa].hide; if Fa = FClients then FDock := true else FDock := false; end; repeat if FDock = true then begin frm_Hauptform.Caption := 'Projekte'; frm_Projektsuche.ManualDock(frm_Hauptform.panel1,nil,alclient); frm_Projektsuche.show; end; until FDock = true; end; except on EADSDatabaseError do begin if MessageDlg( 'Das Programm ist bereits durch einen anderen Nutzer geöffnet.' + #13 + 'Es kann immer nur ein Nutzer zeitgleich arbeiten.', mtWarning, [mbOk], 0) = mrOk then begin //Close; end; end; end; end; Dort war ich jedoch der einzige Nutzer und habe es mit einer Fehlermeldung abgefangen, falls ich aus Versehen die Anwendung zweimal gestartet habe. Ist es grundsätzlich richtig, dass ich mit mehreren Nutzern zugreifen kann? Derzeit sind es maximal drei. |
AW: ADS_LOCAL Zugriff mehrer Nutzer
Wenn ich EADSDatabaseError nicht abfange, kommt folgende Meldung:
Zitat:
|
AW: ADS_LOCAL Zugriff mehrer Nutzer
Zitat:
|
AW: ADS_LOCAL Zugriff mehrer Nutzer
In der Mitte meines Codes habe ich die Tabelle mit DB_Projekte.edit;
schon in den Bearbeitungsmodus gesetzt. Das ist an dieser Stelle (sofort nach Programmstart) noch nicht nötig! :warn: Schlamperei! Wenn ich das Edit auskommentiere, scheint es zu gehen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz