Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   datum im dbgrid nicht anzeigen wenn (https://www.delphipraxis.net/196913-datum-im-dbgrid-nicht-anzeigen-wenn.html)

Gege 29. Jun 2018 18:00

Datenbank: informix • Version: ka • Zugriff über: sql

datum im dbgrid nicht anzeigen wenn
 
Hallo Leute ..
Ich habe mal ein kleines Problem evtl. könnt Ihr mir helfen
Ich habe eine Tabelle mit einen Feld z.B. einen Belieferungsende welches Standard auf 31.12.2099 gesetzt ist
jetzt möchte ich in einen DBgrid aber dieses Datum nur anzeigen wenn es nicht 31.12.2099 ist.


wie könnte ich das am besten anstellen
am besten im SQL schon mit CASE oder so ?

danke schon mal für Tipps
Gege

Uwe Raabe 29. Jun 2018 18:26

AW: datum im dbgrid nicht anzeigen wenn
 
Zitat:

Zitat von Gege (Beitrag 1406145)
wie könnte ich das am besten anstellen

Im OnGetText des Felds.

Gege 29. Jun 2018 19:06

AW: datum im dbgrid nicht anzeigen wenn
 
hmm danke für die schnelle Antwort..

nur wo finde ich das?
die columns haben doch kein Event ?

Uwe Raabe 29. Jun 2018 19:40

AW: datum im dbgrid nicht anzeigen wenn
 
Zitat:

Zitat von Gege (Beitrag 1406153)
die columns haben doch kein Event ?

Nein, aber die TField-Instanz. Am einfachsten legst du in der IDE alle Felder persistent an: Persistente Feldkomponenten

Gege 29. Jun 2018 20:02

AW: datum im dbgrid nicht anzeigen wenn
 
Hallo Uwe,

ja die Felder habe ich angelegt dadurch kann ich auch
besser die Titel definieren wenn sie vom Feldnamen abweichen sollen..
aber wie komm ich denn an das event von denen ?
hast Du da mal ein Beispiel ?

vg
Gege

Uwe Raabe 29. Jun 2018 20:09

AW: datum im dbgrid nicht anzeigen wenn
 
Zitat:

Zitat von Gege (Beitrag 1406156)
aber wie komm ich denn an das event von denen ?

Wähle das Feld im Objektinspektor an, dann sollten die Events doch dort unter "Ereignisse" zu sehen sein.

Gege 29. Jun 2018 20:15

AW: datum im dbgrid nicht anzeigen wenn
 
?? nein da hab ich als Ereignis nur popupmenu ?

Gege 29. Jun 2018 20:16

AW: datum im dbgrid nicht anzeigen wenn
 
halt sorry ich hab die Felder im grid definiert aber nicht im Query ..
ich probier es ..

Gege 29. Jun 2018 20:33

AW: datum im dbgrid nicht anzeigen wenn
 
hab es jetzt gefunden ..
aber ich hab jetzt etwas merkwürdiges
ohne das ich etwas im Event eingetragen habe
ist im Designer noch alles zu sehen
aber beim Aufruf im Programm ist das Feld aber leer .. ?
woran kann das denn jetzt liegen

Gege 29. Jun 2018 20:44

AW: datum im dbgrid nicht anzeigen wenn
 
Hallo Uwe

vielen Dank ..
ja hab es hinbekommen
ja in den Event muss ich den Text auch füllen ;)
super genau so wie ich es wollte funktioniert es jetzt.

Gege

jobo 30. Jun 2018 15:29

AW: datum im dbgrid nicht anzeigen wenn
 
in sql wäre es so in der Art:
Code:
SELECT
   anderesFeld,
   CASE
      WHEN myDate = Stichtag THEN Null ELSE myDate
   END as myDate
   FROM mytable;
Es empfiehlt sich eine ordentliche Konvertierung vom Datumskonstante zu Echtdatum zu verwenden. Kenne das nicht auswendig bei Informix, habe einfach Stichtag als Platzhalter genommen.

p80286 30. Jun 2018 16:25

AW: datum im dbgrid nicht anzeigen wenn
 
Wohl wahr,
aber Da ein DBGrid verwendet wird, kommt demnächst ein Update und schwups ist das Stichtagsdatum verschwunden.

Typischer Fall von kleveren Lösungen, die sich dann selbst ins Bein schießen.

Gruß
K-H

jobo 30. Jun 2018 18:18

AW: datum im dbgrid nicht anzeigen wenn
 
Ich verstehe den Einwand nicht so richtig.
Was hat das Update des Grid mit SQL zu tun?
"Stichtag" steht wie geschrieben für den Ausdruck KonvertiereTextzuDatum('31.12.2099').
Das läuft alles in SQL mit Case, danach hat der TE ja gefragt.

Oder meinst Du die grundsätzliche Frage nach dem Sinn/Robustheit eines Vorgehens, bei dem ein (fixer) Fehlwert eine besondere Bedeutung hat?

p80286 30. Jun 2018 20:02

AW: datum im dbgrid nicht anzeigen wenn
 
Zweiteres!
Wir hatten auch so ein "unmögliches" Datum im Gebrauch. Das ging so lange gut bis ein Abteilungsfremder die Daten in die Hand bekam......

Gruß
K-H

Gege 12. Okt 2018 11:43

AW: datum im dbgrid nicht anzeigen wenn
 
Hallo zusammen

nach langer Zeit hab ich mal nach meinen eigenen Problem was ich schon mal hatte wieder gesucht ^^

p80286 ich weiß was Du meinst.. aber diese Programme sind ausschließlich nur zum anzeigen gedacht nicht
zum editieren. Benutzer haben auch nur readonly rechte
Im ERP-System soll nichts über externe Programme editiert werden.

und jobo hat auch recht funktioniert auch gut mit case

danke an alle nochmal

Gege


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:11 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