AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

MSSQL Fehler

Ein Thema von haentschman · begonnen am 26. Okt 2022 · letzter Beitrag vom 3. Nov 2022
 
Benutzerbild von haentschman
haentschman
Online

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

MSSQL Fehler

  Alt 26. Okt 2022, 06:57
Datenbank: MSSQL • Version: 2017 • Zugriff über: FireDAC
Hallöle...

Ich habe ein Tool was 365/24 läuft. In diesem Tool gibt es "Module". Beim Start des Tools werden verschiedene Connections (verschiedene DB) erstellt. Die Module verwenden die Connection die benötigt wird.

Sporadisch kommt es bei einem Modul zu folgenden Fehlern:
Zitat:
Error Module: Import der Avis - [FireDAC][Phys][ODBC][Microsoft][SQL Server Native Client 11.0]TCP-Anbieter: Ein Socketvorgang konnte nicht ausgeführt werden, da dem System Pufferspeicher fehlte oder eine Warteschlange voll war.
...danach
Zitat:
Error Module: Import der Avis - [FireDAC][Phys][ODBC][Microsoft][SQL Server Native Client 11.0]TCP-Anbieter: Normalerweise darf jede Socketadresse (Protokoll, Netzwerkadresse oder Anschluss) nur jeweils einmal verwendet werden.
Der Quelltext (DB Zugriff) ist von einem Kollegen "verzapft" worden. Auch wenn ich manche Sachen anders gemacht hätte, ist da nichts wirklich auffälliges.
Delphi-Quellcode:
// Work
function TModuleImportMailDatabase.GetWriteLastBelNumber:string;
var
  Qry: TFDQuery;
  FBelNumber: string;
begin
  Qry := CreateQuery;
  try
    Qry.SQL.Add(GetSQLByName('MODULE_IMPORT_MAIL_GET_BELART_LAST_NUMBER'));
    Qry.Open;
    if not Qry.Eof then
    begin
      FBelNumber := Qry.FieldByName('BelNummer').AsString;
      FBelNumber := IntToStr(StrToInt(FBelNumber) +1);
      Qry.Edit;
      Qry.FieldByName('BelNummer').AsString := FBelNumber;
      Qry.Post;
    end
    else
      FBelNumber := '';
  finally
    result := FBelNumber;
    Qry.Close;
    Qry.Free;
  end;
end;

function TModuleImportMailDatabase.IsDataAvailable(AuftragNr: string; FilialNr: string): boolean;
var
  Qry: TFDQuery;
  FSQL: string;
begin
  Qry := CreateQuery;
  try
    FSQL := GetSQLByName('MODULE_IMPORT_MAIL_IS_DATA_AVAILABLE');
    FSQL := StringReplace(FSQL, ':AUFNR', QuotedStr(AuftragNr), [rfIgnoreCase]);
    FSQL := StringReplace(FSQL, ':FILNR', QuotedStr(FilialNr), [rfIgnoreCase]);
    Qry.SQL.Add(FSQL);
    Qry.Open;
    if Qry.Eof then
      result := false
    else
      result := true;
  finally
    Qry.Close;
    Qry.Free;
  end;
end;

procedure TModuleImportMailDatabase.Write(Receipt: TSEAMTaskReceiptHead; var DatenOK: boolean);
var
  Qry: TFDQuery;
  FBelNumber: string;

  function MaxLength(Value: string; Laenge: Integer): string;
  begin
    Result := Value;
    if Length(Result) > Laenge then
    begin
      Result := Copy(Result, 1, Laenge);
    end;
  end;

begin
  Qry := CreateQuery;
  DatenOK := false;
  try
    //erst nachsehen, ob daten schon da
    if not IsDataAvailable(Receipt.STÖAuftragsNr, Receipt.STFilialNr) then
    begin

      Qry.SQL.Text := GetSQLByName('MODULE_IMPORT_MAIL_RECEIPT_INSERT');

      FBelNumber := '';
      FBelNumber := GetWriteLastBelNumber;
      Qry.ParamByName('pBelNummer').DataType := ftString;
      Qry.ParamByName('pBelNummer').AsString := FBelNumber;
...
      Qry.ParamByName('pAddDate').DataType := ftDateTime;
      Qry.ParamByName('pAddDate').Value := Receipt.AddDate; // D now
      Qry.ExecSQL;
      DatenOK := True;
    end;
  finally
    Qry.Free;
  end;
end;
PS: Speicher in der Größe ist immer stabil.
PS: https://social.technet.microsoft.com...dowsserver16de...is das Einzige was ich gefunden habe. Ob das damit zu tun hat?

...hat jemand Ideen?

Danke.

Geändert von haentschman (26. Okt 2022 um 07:03 Uhr)
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 06:03 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-2025 by Thomas Breitkreuz