AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Darstellung einer Zahl im DBGrid

Ein Thema von khh · begonnen am 27. Mär 2012 · letzter Beitrag vom 30. Mär 2012
Antwort Antwort
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#1

AW: Darstellung einer Zahl im DBGrid

  Alt 27. Mär 2012, 14:49
Damit meine ich, dass 123 nummerisch bewertet größer ist als 42, alphanumerisch aber nicht. Hast Du mein Edit oben gesehen?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
hhcm

Registriert seit: 12. Feb 2006
Ort: Wegberg
310 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Darstellung einer Zahl im DBGrid

  Alt 27. Mär 2012, 14:51
Also er sagt EAN13 = 13 Ziffern. Ich verstehe gerade nicht warum das fehlerhaft sortiert werden sollte?
Chris
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.929 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Darstellung einer Zahl im DBGrid

  Alt 27. Mär 2012, 14:54
Damit meine ich, dass 123 nummerisch bewertet größer ist als 42, alphanumerisch aber nicht. Hast Du mein Edit oben gesehen?
ja, so ist es, und so gefällt es den meisten Kunden nicht.

LPAD funktioniert, ich danke dir.

Kannst du mir das vieleicht noch erklären?

Muss mich korrigieren,
die Sortierung ist mit LPAD auch alphanumerisch, kann ich mir also sparen
Karl-Heinz

Geändert von khh (27. Mär 2012 um 14:59 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#4

AW: Darstellung einer Zahl im DBGrid

  Alt 27. Mär 2012, 14:57
Ganz einfach: LPAD füllt links mit Leerzeichen (oder einem optional anzugebenden) bis zur angegebenen Länge auf. Und da das Leerzeichen einen kleineren ASCII-Wert als '0' hat, stimmt anschließend die alphanumerische mit der nummerischen Sortierung überein. Für Details zu der Funktion siehe firebirdsql.org.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.929 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Darstellung einer Zahl im DBGrid

  Alt 27. Mär 2012, 15:04
Ganz einfach: LPAD füllt links mit Leerzeichen (oder einem optional anzugebenden) bis zur angegebenen Länge auf. Und da das Leerzeichen einen kleineren ASCII-Wert als '0' hat, stimmt anschließend die alphanumerische mit der nummerischen Sortierung überein. Für Details zu der Funktion siehe firebirdsql.org.
ok, dann muss ich wohl die Stringlänge anpassen, da das Feld an sich schon char(20) ist.

aber weshalb funktioniert cast nach float nicht??
Karl-Heinz
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#6

AW: Darstellung einer Zahl im DBGrid

  Alt 27. Mär 2012, 15:28
Ich habe den Wertebereich von Firebird-Float nicht im Kopf, aber möglicherweise kommst Du mit Deinen Zahlen da in einen Grenzbereich, wo es ungenau wird (das haben Fließkommazahlen ja leider so an sich).
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Iwo Asnet

Registriert seit: 11. Jun 2011
313 Beiträge
 
#7

AW: Darstellung einer Zahl im DBGrid

  Alt 27. Mär 2012, 16:17
Sagt mal, ist es nicht ein wenig verwunderlich, wenn ein EAN-Code, der aus ZEICHEN besteht, als FLOAT in einer DB landet? Das ist grenzwertig gefährlich.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#8

AW: Darstellung einer Zahl im DBGrid

  Alt 27. Mär 2012, 16:27
Zitat:
ich habe eine EAN13 in einem DB-Feld vom Typ char().
Wo landet da ein Float in der DB? Der Cast war ein Versuch beim Auslesen für die Sortierung.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.929 Beiträge
 
FreePascal / Lazarus
 
#9

AW: Darstellung einer Zahl im DBGrid

  Alt 28. Mär 2012, 06:51
Sagt mal, ist es nicht ein wenig verwunderlich, wenn ein EAN-Code, der aus ZEICHEN besteht, als FLOAT in einer DB landet? Das ist grenzwertig gefährlich.

die EAN steht als String in einem 20 Zeichen grossen char()- Feld in der DB
Karl-Heinz
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

AW: Darstellung einer Zahl im DBGrid

  Alt 28. Mär 2012, 08:40
Sagt mal, ist es nicht ein wenig verwunderlich, wenn ein EAN-Code, der aus ZEICHEN besteht, ...
Streng genommen besteht der EAN-Code aus Ziffern
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 08:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz