Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi OnNewRecord nicht aufgerufen (https://www.delphipraxis.net/214190-onnewrecord-nicht-aufgerufen.html)

Uwe Raabe 3. Dez 2023 17:03

AW: OnNewRecord nicht aufgerufen
 
Zitat:

Zitat von TurboMagic (Beitrag 1530361)
Nur: dann ist ja der "Gag" weg, dass einem das System was automatisch abnimmt ;-)
Zumindest für Spalten die nicht als "not Null" deklariert sind. Man müsste dann nämlich bei jeder Änderung
das SQL anpassen, sonst fehlen die Daten nach dem Update ;-)

In diesem Fall geht es ja nicht generell um die NOT NULL Spalten, sondern um die nicht im Source enthaltenen, im Target aber als required deklarierten. Genau diese Fälle versuchst du ja jetzt in dem Event abzudecken und auch da muss dann bei Änderungen entsprechend reagiert werden.

Eine weitere Alternative wäre übrigens das Anlegen eines Mappings mit dem Namen der Target-Column als DestinationFieldName und dem Defaultwert als SourceExpression, während SourceFieldName natürlich leer bleiben muss. Aber auch dass muss gegebenenfalls per Tabelle definiert werden.

Du musst halt schauen, welcher Ansatz den besten Mix aus Performance und geringem Maintenance-Aufwand bietet.

himitsu 3. Dez 2023 17:23

AW: OnNewRecord nicht aufgerufen
 
Leider beachten viele DB-Komponenten nur das NOT NULL, aber kennen kein DEFAULT,
drum wollen sie zwanghaft bei "Required" (NOT NULL) etwas übergeben, bzw. werfen bösartig im BeforePost gern eine Exception.

JA, bei Required / NOT NULL muß letztendlich ein Wert vorhanden sein, aber der darf auch aus einem DEFAULT kommen.

haentschman 4. Dez 2023 05:22

AW: OnNewRecord nicht aufgerufen
 
Moin...😎
Zitat:

...und das nicht ans Ziel übergibt, es also nicht im INSERT vorkommt, da nimmt die DB dann das DEFAULT.
...richtig.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:31 Uhr.
Seite 3 von 3     123   

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