AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Ungültiges Quell-Array bei Zuweisung string zu Query.FieldByName
Thema durchsuchen
Ansicht
Themen-Optionen

Ungültiges Quell-Array bei Zuweisung string zu Query.FieldByName

Ein Thema von haentschman · begonnen am 5. Mai 2022 · letzter Beitrag vom 16. Jun 2022
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von haentschman
haentschman

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

AW: Ungültiges Quell-Array bei Zuweisung string zu Query.FieldByName

  Alt 16. Jun 2022, 11:19
Moin...

...das der Quelltext in Ordnung sei, ist nicht ganz richtig. Aber ihr konntet es nicht wissen...

Fällt Euch was auf?
Delphi-Quellcode:
procedure TDMED.FDQVorgangAssignmentNewRecord(DataSet: TDataSet);
begin
  DMED.FDQVorgangAssignment.FieldByName('idBelKopf').AsString := DMED.FDQAssignment.FieldByName('idBelKopf').AsString;
  DMED.FDQVorgang.FieldByName('ixUserVon').AsString := FPreferences.CurrentUser.UserNameShort;
  DMED.FDQVorgang.FieldByName('ErfasstAm').AsDateTime := Now();
  DMED.FDQVorgang.FieldByName('ixSPAdr').AsString := DMED.FDQAssignment.FieldByName('ixSPAdr').AsString;
end;
...so muß es sein:
Delphi-Quellcode:
procedure TDMED.FDQVorgangAssignmentNewRecord(DataSet: TDataSet);
begin
  DMED.FDQVorgangAssignment.FieldByName('idBelKopf').AsString := DMED.FDQAssignment.FieldByName('idBelKopf').AsString;
  DMED.FDQVorgangAssignment.FieldByName('ixUserVon').AsString := FPreferences.CurrentUser.UserNameShort;
  DMED.FDQVorgangAssignment.FieldByName('ErfasstAm').AsDateTime := Now();
  DMED.FDQVorgangAssignment.FieldByName('ixSPAdr').AsString := DMED.FDQAssignment.FieldByName('ixSPAdr').AsString;
end;
...vorher schreibe ich in eine andere Datenmenge.

Das ist mit der Trennung der Datenmenge passiert...

Danke für die Teilnahme... Sollte nochwas sein, melde ich mich.


ja, ja, ja... mit UnitTests wäre das nicht passiert.
  Mit Zitat antworten Zitat
BerndS

Registriert seit: 8. Mär 2006
Ort: Jüterbog
491 Beiträge
 
Delphi 12 Athens
 
#22

AW: Ungültiges Quell-Array bei Zuweisung string zu Query.FieldByName

  Alt 16. Jun 2022, 11:26
wäre es nicht so noch besser?
Delphi-Quellcode:
procedure TDMED.FDQVorgangAssignmentNewRecord(DataSet: TDataSet);
begin
  DataSet.FieldByName('idBelKopf').AsString := DMED.FDQAssignment.FieldByName('idBelKopf').AsString;
  DataSet.FieldByName('ixUserVon').AsString := FPreferences.CurrentUser.UserNameShort;
  DataSet.FieldByName('ErfasstAm').AsDateTime := Now();
  DataSet.FieldByName('ixSPAdr').AsString := DMED.FDQAssignment.FieldByName('ixSPAdr').AsString;
end;
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.031 Beiträge
 
Delphi 12 Athens
 
#23

AW: Ungültiges Quell-Array bei Zuweisung string zu Query.FieldByName

  Alt 16. Jun 2022, 11:50
Jupp, einmal das falsche DataSet,
dann gibt es das "richtige" auch direkt als Parameter

und DMED ........... NIEMALS nicht aus einer Form/Objekt-Methode auf die globale Varaible zu dieser Form/Objekt zugreifen ... wenn man eine Variable braucht, dann nimmt man hier das Self.

Delphi-Quellcode:
procedure TDMED.FDQVorgangAssignmentNewRecord(DataSet: TDataSet);
begin
  DataSet.FieldByName('idBelKopf').AsString := FDQAssignment.FieldByName('idBelKopf').AsString;
  DataSet.FieldByName('ixUserVon').AsString := FPreferences.CurrentUser.UserNameShort;
  DataSet.FieldByName('ErfasstAm').AsDateTime := Now;
  DataSet.FieldByName('ixSPAdr').AsString := FDQAssignment.FieldByName('ixSPAdr').AsString;
end;


Beim "ErfasstAm" könnte man sich eventuell noch streiten, ob es dann ist, wo man anfing, mit Einfügen, oder dann wenn man fertig war,
also ob das nicht besser erst im OnBeforePost aufgehoben ist, anstatt im OnAfterInsert ... bzw. in einem Trigger in der DB (und das "ixUserVon" auch, falls es z.B. dem LoginName für DBConnection entspricht)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (16. Jun 2022 um 12:05 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

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

AW: Ungültiges Quell-Array bei Zuweisung string zu Query.FieldByName

  Alt 16. Jun 2022, 14:02

Ich oute mich mal...
Bei der Umstellung war das noch der alte Code. Da ist nur das DataSet gewechselt worden. Vorgang->VorgangAssignment. In dieser Stuation habe ich nicht darüber nachgedacht.

Das habe ich gleich mal überall geändert.
Delphi-Quellcode:
procedure TDMED.FDQVorgangAssignmentNewRecord(DataSet: TDataSet);
begin
  DataSet.FieldByName('idBelKopf').AsString := FDQAssignment.FieldByName('idBelKopf').AsString;
  DataSet.FieldByName('ixUserVon').AsString := FPreferences.CurrentUser.UserNameShort;
  DataSet.FieldByName('ErfasstAm').AsDateTime := Now;
  DataSet.FieldByName('ixSPAdr').AsString := FDQAssignment.FieldByName('ixSPAdr').AsString;
end;

Geändert von haentschman (16. Jun 2022 um 15:09 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 07:46 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