AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Formatierte Dezimalstellen

Ein Thema von rbest · begonnen am 14. Apr 2004 · letzter Beitrag vom 30. Okt 2007
Antwort Antwort
rbest

Registriert seit: 14. Nov 2003
Ort: Tannheim
71 Beiträge
 
Delphi 7 Professional
 
#1

Formatierte Dezimalstellen

  Alt 14. Apr 2004, 11:54
Hi folks,
vermutlich wieder eine einfache Sache, die ich aber im Moment nicht gebacken krieg. Wie kann man in DBEdit Zahlen formatieren, daß z.B. immer schön brav 2 Nachkommastellen angezeigt werden

1,20 anstatt 1,2, 22,88 anstatt 22,87775.

Schönen Tag noch.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Formatierte Dezimalstellen

  Alt 14. Apr 2004, 12:22
Formatier dir die Ausgabe vorher mit Format.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#3

Re: Formatierte Dezimalstellen

  Alt 14. Apr 2004, 12:56
Luckie, Finger weg von Datenbanken. Das da ist ein häufiger Fehler. Und das liegt meist nicht am DBEdit, sondern an dem Dataset. Guck mal da nach DisplayFormat oder so.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Formatierte Dezimalstellen

  Alt 14. Apr 2004, 12:57
Zitat von Hansa:
Luckie, Finger weg von Datenbanken.
Mist, jetzt dachte ich, ich könnte hier auch mal was posten.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
toyoman

Registriert seit: 2. Jun 2003
323 Beiträge
 
Delphi 2010 Enterprise
 
#5

Re: Formatierte Dezimalstellen

  Alt 29. Okt 2007, 15:17
Genau sowas würd ich auch gerne machen. TDBEdit Felder in der Anzeige formatieren und zwar mit Dezimalstellen. Ich habe TDBEdit Felder und möchte keine andere Komponente verwenden. Gibts da was einfaches?
In der Datenbankstruktur kann und darf ich nichts ändern... Müsste also rein über die Anzeigekomponente machbar sein.

Zitat von rbest:
Hi folks,
vermutlich wieder eine einfache Sache, die ich aber im Moment nicht gebacken krieg. Wie kann man in DBEdit Zahlen formatieren, daß z.B. immer schön brav 2 Nachkommastellen angezeigt werden

1,20 anstatt 1,2, 22,88 anstatt 22,87775.

Schönen Tag noch.
  Mit Zitat antworten Zitat
toyoman

Registriert seit: 2. Jun 2003
323 Beiträge
 
Delphi 2010 Enterprise
 
#6

Re: Formatierte Dezimalstellen

  Alt 30. Okt 2007, 09:45
Über einen Umweg habe ich mein Problem/Bedürfnis wie folgt gelöst:

-SQL Connection manuell aktiviert (Connection Komponente mit Connection Parameter ausgestattet -> dies mache ich normalerweise im Programm zur Laufzeit über ein Ini-File)

-SQL Query Komponente mit SQL.text befüllt, damit die Verbindung geöffnet werden kann und das ClientDataSet befüllt wird.

-Beim Client Dataset doppelklick -> öffnet den Feld Editor, es sind noch keine Felder vorhanden. Mit der rechten Maustaste kann man alle Felder welche in der Tabelle verfügbar sind einfügen.

Nun kann man bei jedem Feld separat das Displayformat anpassen (z.B: 0.0 für Dezimalanzeige).
  Mit Zitat antworten Zitat
raiguen
(Gast)

n/a Beiträge
 
#7

Re: Formatierte Dezimalstellen

  Alt 30. Okt 2007, 11:02
warum so umständlich, wenn es doch eine elegante Lösung gibt
Im AfterOpen-Ereignis des DataSets (Tabelle oder Query) das hier coden:
Delphi-Quellcode:
procedure TDataModule1.TabelleXYZAfterOpen(DataSet: TDataSet);
begin
  //--Variante 1
  (DataSet.FieldByName(FeldName) as TNumericField).DisplayFormat := '#0.00';
  //--Variante 2
  TNumericField(DataSet.FieldByName(FeldName)).DisplayFormat := '#0.00';
  //--FeldName steht für das entsprechende Tabellen-/QueryFeld, auf das die Formatierung angewendet werden soll
end;
//EDIT: Diese Vorgehensweise macht nur dann Sinn, sofern keine persistenten Felder (FeldEditor des DataSet) eingerichtet sind (was ich grundsätzlich NICHT mache, weil zu unflexibel) - denn dort kann über die Eigenschaft .DisplayFormat ein entsprechendes Format eingetragen werden...
  Mit Zitat antworten Zitat
toyoman

Registriert seit: 2. Jun 2003
323 Beiträge
 
Delphi 2010 Enterprise
 
#8

Re: Formatierte Dezimalstellen

  Alt 30. Okt 2007, 13:40
vielen Dank für diese Lösungsmöglichkeit, das ist natürlich ziemlich genial...

Gruss

Zitat von raiguen:
warum so umständlich, wenn es doch eine elegante Lösung gibt
Im AfterOpen-Ereignis des DataSets (Tabelle oder Query) das hier coden:
Delphi-Quellcode:
procedure TDataModule1.TabelleXYZAfterOpen(DataSet: TDataSet);
begin
  //--Variante 1
  (DataSet.FieldByName(FeldName) as TNumericField).DisplayFormat := '#0.00';
  //--Variante 2
  TNumericField(DataSet.FieldByName(FeldName)).DisplayFormat := '#0.00';
  //--FeldName steht für das entsprechende Tabellen-/QueryFeld, auf das die Formatierung angewendet werden soll
end;
//EDIT: Diese Vorgehensweise macht nur dann Sinn, sofern keine persistenten Felder (FeldEditor des DataSet) eingerichtet sind (was ich grundsätzlich NICHT mache, weil zu unflexibel) - denn dort kann über die Eigenschaft .DisplayFormat ein entsprechendes Format eingetragen werden...
  Mit Zitat antworten Zitat
Antwort Antwort


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 22:20 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