AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Schreiben in die Datenbank macht Endlosschleife
Thema durchsuchen
Ansicht
Themen-Optionen

Schreiben in die Datenbank macht Endlosschleife

Ein Thema von haentschman · begonnen am 18. Sep 2024 · letzter Beitrag vom 19. Sep 2024
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#1

Schreiben in die Datenbank macht Endlosschleife

  Alt 18. Sep 2024, 15:31
Datenbank: MSSQL • Version: 2019 • Zugriff über: FireDAC
Hallöle...

gegeben:
* mehrere Arbeitsplätze
* exakt gleiche EXE an jedem Arbeitsplatz
* gleicher Native MSSQL Treiber an jedem Arbeitsplatz
* gleiche Daten aus der selben Tabelle der gleichen Datenbank

Ich habe an einem Arbeitsplatz folgendes Problem:
* jegliche Änderung am gleichen Datensatz -> Speichern bringt eine Endlosschleife (nach 10 Minuten abgebrochen)
* reproduzierbar am gleichen Datensatz (an anderen Arbeitsplätzen kann dieser Datensatz gespeichert werden )
* auch nach dem Speichern an einem anderen Platz kann der geänderte Datensatz nicht gespeichert werden.
* keine Fehler im Programm, keine Fehler im EventLog


Technologie:

nackige Query mit ExecSQL.


...ich habe keine Idee.

Morgen werde ich mal den TimeOut der Datenbank prüfen...ggf. auf kurz setzen. Dann prüfe ich die Größe der Felder...eigentlich kommt dann direkt ein Fehler.

Danke für Infos.
  Mit Zitat antworten Zitat
TomyN

Registriert seit: 8. Nov 2006
Ort: Bayreuth
244 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Schreiben in die Datenbank macht Endlosschleife

  Alt 18. Sep 2024, 22:16
Gleiche OS Version auf allen Rechnern? Evtl. 32/64 Problematik?

Tritt das Problem bei einem speziellen Datensatz oder bei allen Datensätzen auf?
Thomas Neumann
Meine Projekte
www.satlive.audio
www.levelcheck.de
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#3

AW: Schreiben in die Datenbank macht Endlosschleife

  Alt 19. Sep 2024, 06:54
Moin...

Zitat:
Gleiche OS Version auf allen Rechnern? Evtl. 32/64 Problematik?
W11, 64Bit überall gleich
Zitat:
Tritt das Problem bei einem speziellen Datensatz oder bei allen Datensätzen auf?
...nur ein Datensatz. Alle anderen lassen sich problemlos speichern. In der Zwischenzeit (3 Monate) hatte dieser Arbeitsplatz 3 verschiedene Datensätze die betroffen waren.
PS: In diesem "Modul" werden an diesem Platz ca. 100 Änderungen an verschieden Datensätzen gemacht. Nur dieser eine will nicht.
Zitat:
// korrekt
Distributor: 18.09.2024 14:24:15 - START FOnChangeGridBegin
Distributor: 18.09.2024 14:24:15 - END FOnChangeGridBegin
Distributor: 18.09.2024 14:24:15 - START Database.Write - 9025
Distributor: 18.09.2024 14:24:15 - END Database.Write - 9025
Distributor: 18.09.2024 14:24:15 - START Assign
Distributor: 18.09.2024 14:24:15 - END Assign
Distributor: 18.09.2024 14:24:15 - START FOnChangeGridEnd
Distributor: 18.09.2024 14:24:15 - END FOnChangeGridEnd
------
// Fehler
Distributor: 18.09.2024 14:24:50 - START FOnChangeGridBegin
Distributor: 18.09.2024 14:24:50 - END FOnChangeGridBegin
Distributor: 18.09.2024 14:24:50 - START Database.Write - 7242
Delphi-Quellcode:
procedure TFormDistributorLogic.SaveDistributor;

  function CanSaveHistorie: Boolean;
  begin
    Result := not ((FModifiedDistributor.StateInternType = FOriginalDistributor.StateInternType) and
                   (FModifiedDistributor.ResponsibleTo = FOriginalDistributor.ResponsibleTo) and
                   (FModifiedDistributor.DocumentChoice = FOriginalDistributor.DocumentChoice));
  end;

begin
  if Assigned(FOnChangeGridBegin) then
  begin
    FOnChangeGridBegin(Self);
  end;

  DMZU.Database.Write(FModifiedDistributor, CanSaveHistorie); // Historie siehe DB Trigger
  FDistributorDatasource.Changed := True;
  FModifiedDistributor.IsChanged := False; // setzt auf normal

  FOriginalDistributor.Assign(FModifiedDistributor);

  if Assigned(FOnChangeGridEnd) then
  begin
    FOnChangeGridEnd(Self);
  end;
end;
  Mit Zitat antworten Zitat
stifflersmom

Registriert seit: 8. Dez 2005
Ort: 24994 Holt
379 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

AW: Schreiben in die Datenbank macht Endlosschleife

  Alt 19. Sep 2024, 07:20
Kann es vielleicht die Technik darunter sein?
Also vielleicht ein Fehler im Netzwerk?
Auch wenn ich mir nicht vorstellen kann, dass das nur einen spezifischen Datensatz betreffen sollte.

Hast Du den SQL-Server schon mal neu gestartet?
  Mit Zitat antworten Zitat
fisipjm

Registriert seit: 28. Okt 2013
299 Beiträge
 
#5

AW: Schreiben in die Datenbank macht Endlosschleife

  Alt 19. Sep 2024, 07:29
Moin,

Was macht dein FOnchangeGridStart und FOnChangeGridEnd?
hast du irgendwas in Richtung Livebinding auf dem Grid liegen?
Das wird nämlich durch eine Datasource änderung ein GridChange triggern.

Gruß
PJM
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#6

AW: Schreiben in die Datenbank macht Endlosschleife

  Alt 19. Sep 2024, 08:06
Danke...
Zitat:
Was macht dein FOnchangeGridStart und FOnChangeGridEnd?
Delphi-Quellcode:
procedure TfoDistributor.DoOnChangeGridBegin(Sender: TObject);
begin
  if Assigned(FLogic.ModifiedDistributor) then
  begin
    FLogic.DistributorDatasource.LastID := FLogic.ModifiedDistributor.ID;
  end;
  gtvDistributor.BeginUpdate;
end;

procedure TfoDistributor.DoOnChangeGridEnd(Sender: TObject);
begin
  // wichtig!
  gtvDistributor.EndUpdate;
  TToolsDevExpress.SelectRecord(gtvDistributor, 0, FLogic.DistributorDatasource.LastID, null);
end;
Zitat:
hast du irgendwas in Richtung Livebinding auf dem Grid liegen?
nein...Gott sei Dank.

Zitat:
Also vielleicht ein Fehler im Netzwerk?
..die Idee hatte ich auch schon. Früher mal hatten wir auch an einem anderem Platz Probleme mit Daten nicht gefunden (oder so ähnlich)...obwohl das Programm fehlerfrei lief. Vom Schwitch ein neues Kabel gezogen...Fehler weg. Dieser Arbeitsplatz ist aber neu mit neuen Kabeln...was nichts heißen mag.

Zitat:
Hast Du den SQL-Server schon mal neu gestartet?
Ja. Ohne Erfolg.

Zitat:
Auch wenn ich mir nicht vorstellen kann, dass das nur einen spezifischen Datensatz betreffen sollte.
Das ist auch das was meine Logic nicht versteht. Das ist aber so und reproduzierbar...
  Mit Zitat antworten Zitat
TomyN

Registriert seit: 8. Nov 2006
Ort: Bayreuth
244 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: Schreiben in die Datenbank macht Endlosschleife

  Alt 19. Sep 2024, 08:18
Hat der Datensatz was besonderes, evtl. Umlaute (Evtl. unterschiedliche Zeichensätze/Sprachen auf den Rechnern?)
Thomas Neumann
Meine Projekte
www.satlive.audio
www.levelcheck.de
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#8

AW: Schreiben in die Datenbank macht Endlosschleife

  Alt 19. Sep 2024, 09:29
Zitat:
Hat der Datensatz was besonderes, evtl. Umlaute
ja, bei den anderen Arbeitslätzen aber auch...dort läßt sich das speichern. Unlogisch, ich weiß.
Zitat:
Evtl. unterschiedliche Zeichensätze/Sprachen auf den Rechnern?
nein...alles nur deutsch.
Miniaturansicht angehängter Grafiken
verteiler.jpg  

Geändert von haentschman (19. Sep 2024 um 09:38 Uhr)
  Mit Zitat antworten Zitat
stifflersmom

Registriert seit: 8. Dez 2005
Ort: 24994 Holt
379 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#9

AW: Schreiben in die Datenbank macht Endlosschleife

  Alt 19. Sep 2024, 10:01
Wenn Du kannst, versuch doch, auch wenn der Rechner neu ist, einen andere Netzwerkkarte und / oder Kabel... oder tatsächlich einen anderen Port auf dem Netzwerkswitch.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#10

AW: Schreiben in die Datenbank macht Endlosschleife

  Alt 19. Sep 2024, 10:09
Zitat:
einen andere Netzwerkkarte und / oder Kabe
Kabel und in andere Dose mache ich wenn die Mitarbeiterin heute da ist...Spätschicht. Netzwerkkarte und anderen Port auf dem Netzwerkswitch macht unser externer IT Fuzzi...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz