Seite 1 von 1
felder in dbf datenbank berechnen
Verfasst: Do, 09.08.2007 11:12
von kannenklaus
hallo
eine base-datei greift über ihren dbf-treiber auf eine dbf tabelle zu. kann ich dabei ein berechnetes feld nach folg. schema erzeugen?
(feld1+feld2)*feld3
freue mich auf eine anwort.
grüße
klaus
Re: felder in dbf datenbank berechnen
Verfasst: Do, 09.08.2007 15:12
von pmoegenb
Hallo Klaus,
mit dBase-Dateien nicht, mit HSQLDB ja.
Falls Du HSQLDB nicht nehmen möchtest weil die DB nicht extern ist, kannst Du Dir auch einmal SQLite
http://www.sqlite.org/ ansehen.
Re: felder in dbf datenbank berechnen
Verfasst: Do, 09.08.2007 15:48
von kannenklaus
hallo peter
mit dBase-Dateien nicht,
SCHADE; leider kommt man schnell an grenzen von base, die auch den produktiven einsatz im büroalltag verhindern. ich kann natürlich access dazwischen schalten und dann diese ergebnisse in base darstellen. aber warum dann base?
grüße
klaus
Re: felder in dbf datenbank berechnen
Verfasst: Do, 09.08.2007 17:43
von pmoegenb
Hallo Klaus,
wenn es an Base liegen würde, wären berechnende Felder auch bei HSQLDB nicht möglich. Ich muss allerdings erwähnen, dass ich den Test nur für dBase IV untersucht habe. dBase IV wird von OOo, bzw. Base nativ unterstützt.
Ich denke, dass die Macher von OOo die Unzulänglichkeiten von dBase IV erkannt haben und deshalb HSQLDB in OOo 2 eingebaut haben.
Re: felder in dbf datenbank berechnen
Verfasst: Do, 09.08.2007 23:33
von kannenklaus
hallo peter,
und es geht trotz dbf-tabellen doch, wenn man die ROUND-funktion verwendet wie folgt verwendet
ROUND( ("AREA_HA" + "PREIS_QM") * 2, 0 )
hier wird das feld fläche in ha mit dem preis addiert, dann mit 2 multipliziert. das ganze ohne nachkommastellen
grüße
klaus
Re: felder in dbf datenbank berechnen
Verfasst: Fr, 10.08.2007 09:39
von pmoegenb
Hallo Klaus,
ich fass es nicht, ich kann Deine Angaben bestätigen. Round dient eigentlich dafür, einen nummerischen Wert zu runden, aber wenn's wirkt!
Re: felder in dbf datenbank berechnen
Verfasst: Fr, 10.08.2007 12:12
von kannenklaus
hallo peter,
round berechnet wie werte bei der ooo dev 2.3 richtig und bei der deutsche 2.2.1 version falsch. trifft das bei dir auch zu.
grüße
klaus
Re: felder in dbf datenbank berechnen
Verfasst: Fr, 10.08.2007 22:22
von kannenklaus
hallo
es liegt nicht an der oo-version, sondern an der anzahl von nachkommastellen (hier11). dann hat die funktion round nicht das richtige ergebnis geliefert.
grüße
klaus
Re: felder in dbf datenbank berechnen
Verfasst: Mo, 13.08.2007 10:33
von pmoegenb
kannenklaus hat geschrieben:hallo peter,
round berechnet wie werte bei der ooo dev 2.3 richtig und bei der deutsche 2.2.1 version falsch. trifft das bei dir auch zu.
Hallo Klaus,
ich habe folgende Varianten durchgespielt:
Zwei Zeilen mit jeweils 2 Betragsspalten
Betrag Addbetrag
100,585 15,000
150,984 10,000
Die Syntax
liefert für die 1. Dateizeile = 201,17 und für die 2. Dateizeile = 301,97.
Die Syntax
liefert für die 1. Datenzeile = 115,59 und für die 2. Dateizeile = 160,98.
Aus meiner Sicht wurde richtig gerundet.