brazo98
Goto Top

Formatierungs Problem Label.caption zuweisung

Hallo,

ich möchte eine MySQL Menge zur Laufzeit formatieren doch leider klappt es nicht der Code

zquery6.SQL.Text :='select sum(stimmaktien) as summe from uemaske';  
    zquery6.Open;
    label63.Caption := format('0.000%',[zquery6.fieldbyname('summe').asString]);  

kommt immer als Ausgabe 0.0000!

@brazo98

Content-Key: 22836

Url: https://administrator.de/contentid/22836

Printed on: April 18, 2024 at 06:04 o'clock

Mitglied: 8644
8644 Jan 05, 2006 at 21:04:58 (UTC)
Goto Top
Hi Toni,

falls deine Menge als Zahl vorliegt, versuch es mal so:

label63.Caption := FloatToStrF(zquery6.fieldbyname('summe').value,ffFixed,10,3) ;  

Falls du es als Prozentangabe möchtest, hänge noch ein +'%' dran.

Psycho
Member: Biber
Biber Jan 06, 2006 at 02:09:58 (UTC)
Goto Top
Hmm @brazo98,
die Formatierungsanweisung funktioniert nicht, weil das Prozentzeichen als Steuerzeichen interpretiert wird.
Das musst Du maskieren - wobei ich nur raten kann, wie das in PHP gehandled wird (bin kein PHP-Freak).

Die Varianten, die ich probieren würde, wären
- %% (das Steuerzeichen doppelt eingeben, damit es nicht als Steuerzeichen interpretiert wird)
- \% oder ^% (so maskieren es andere Dialekte
- oder %35 (sollte PHP als Zeichen 35 = Prozentzeichen übersetzen, wenn es schlau ist.

Wenn das nicht (und Marios Tipp auch nichts) hilft, wären die nächsten Workarounds
- nach dieser Maskierungsregel suchen in Handbuch oder Internet
- zwei Tage hier im Forum auf Antwort warten
-oder die Select-Abfrage umbauen, so dass dort schon ein formatierter Text inclusive Prozentzeichen ankommt statt ein numerischer Wert.
Denn rechnen tust Du mit dem doch ohnehin nicht mehr - ist doch nur reine Anzeigefunktion, oder?

HTH Biber
Member: brazo98
brazo98 Jan 09, 2006 at 10:00:14 (UTC)
Goto Top
Hallo Pycho,

vielen dank für deine Antwort! Ich habe es hingekommen mit ein wenig ausprobieren hat es schlussendlich geklappt. Ich habe die Ergebnismenge in die SQL- Abfrage direkt eingeben und habe dann mit folgendem Code die Zuweisung ohne weitere Problem formatieren können!

Hier der Coder der dann möglich ist! Der Vorteil ist auch das zur Laufzeit nichts mehr erstellt wird sondern die Menge ist schon vorhanden und kann bearbeitet werden!

 zquery6summe.DisplayFormat :='0.000';  
    label63.caption := zquery6summe.Text;

Vielen dank nochmals für rasche Antwort!