Entwickler-Ecke
Datenbanken - Welchen Typ haben Datenbankfelder in einer dBase-Table?
crashboy - Do 13.03.03 19:43
Titel: Welchen Typ haben Datenbankfelder in einer dBase-Table?
Welchen Typ haben Datenbankfelder in einer dBase-Table. Auf einer Form will ich mehrere DBEdit's, in der Tabelle als numerisch deklarierte Felder, zusammenaddieren und das Ergebnis als Label.Caption anzeigen. Dazu muss ich die Werte sicher umwandeln, zumindest am Schluss in einen String, aber von was in was?
Danke für Eure Hilfe
crashboy
Moderiert von
Tino: Titel geändert & Topic verschoben
MSCH - Do 13.03.03 19:55
Tja,
deine Tabelle und deren Einträge sprich Datentypen solltest du schon kennen. DBase kennt Chars, Integers, Datum usw. also die ganze Palette die es so gibt. (Versionsabhängig!)
Wenn deine Werte nummerisch sind, kannst du sie addieren.
Quelltext
1: 2:
| Label.Caption:= IntToStr(TField.Value+TField.Value) oder Label.Caption:= Format('%d',[TField.Value+TField.Value]); |
grüße
MSCH
Moderiert von
Tino: Code-Tags hinzugefügt.
crashboy - Do 13.03.03 20:33
Titel: schonmal danke.....
sicher kenn ich meine Datenfeldtypen. Zahlen habe ich als numerisch geklariert.
Beispiel: Ich habe eine Form mit EK1 EK2 EK3 als DBEdit. Diese Werte werden in eine dBase-Tabelle als numerisch übernommen und sollen bei Aufruf des Datensatzes addiert als Label.Caption angezeigt werden.
Wenn ich nun IntToStr nutze, bekomme ich als Fehlermeldung "inkompatible Typen". Ich habe mir solch "Firlefanz"-Rechnung ganz einfach vorgestellt :? aber ich lerne ja noch.
Quelltext
1: 2: 3: 4: 5:
| var summe: Integer; begin summe:= (DBedit1+DBEdit2+.......); Label.Caption:= IntToStr(summe); end; |
MfG
crashboy
Moderiert von
Tino: Absätze entfernt.
bis11 - Do 13.03.03 20:45
Die anzeige in einem DBEdit ist immer Text also String-Variablentyp. Damit musst Du zum Beispiel Deine drei DBEditfelder so zusammenzählen :
Quelltext
1: 2: 3: 4: 5:
| var summe: Integer; begin summe:= StrToInt(DBedit1.Text)+StrToInt(DBEdit2.Text)+StrToInt(DBEdit3.Text); Label.Caption:= IntToStr(summe); end; |
Müsste so funktionieren. NICHT GETESTET.
crashboy - Do 13.03.03 21:47
Titel: @bis11
Wunderbar, vielen Dank!!!! Funzt!
Jetzt muss ich mir nur noch überlegen das mir mein Prog nicht abkackt, wenn ich in einem Feld was neues eingebe bzw. die bereits eingetragenen Daten in den DBEdit's korrigiere.
Soll heissen, wenn ich die eingetragenen Daten lösche und nix mehr in dem Feld steht, bekomme ich nen BDE-Error und das Programm ist Ende.
Dafür noch Ratschläge???
MfG
crashboy
***************Hat sich erledigt *************
Delete - Do 13.03.03 22:06
Wie wäre es, wenn du mal in der richtigen sparte posten würdest? :roll:
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!