AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Programm rundet bei der Übergabe in die DB
Thema durchsuchen
Ansicht
Themen-Optionen

Programm rundet bei der Übergabe in die DB

Ein Thema von Elspass · begonnen am 1. Jun 2007 · letzter Beitrag vom 1. Jun 2007
Antwort Antwort
Elspass

Registriert seit: 15. Sep 2003
Ort: Hofheim am Taunus
83 Beiträge
 
FreePascal / Lazarus
 
#1

Programm rundet bei der Übergabe in die DB

  Alt 1. Jun 2007, 10:31
Datenbank: Access • Version: 2003 • Zugriff über: ADO
Moin, Moin,

ich habe ein kleines Problem...
Ich übergebe einen REAL Wert z.B. 23,03 wie folgt per ADO zur Datenbank...

DSRechPos.DataSet.FieldByName('STCKPREIS').AsFloat := tmpVK;

Datenbank? Naja ist Access, jedoch wird jeder Wert gerundet... z.B. 23,00
In der Datenbank habe ich Währung und jetzt Zahl mit fester Kommastelle (2) als Splatenformat eingestellt.

Wo habe ich meinen Fehler?
Wenn ich mir tmpVK im Debugger ansehe, habe ich immer meinen richtigen Wert.

Gruss Jörg
Jörg Elspass
  Mit Zitat antworten Zitat
pmoegenb

Registriert seit: 24. Aug 2006
Ort: Aidlingen
155 Beiträge
 
Delphi XE6 Professional
 
#2

Re: Programm rundet bei der Übergabe in die DB

  Alt 1. Jun 2007, 10:47
Was passiert wenn Du statt 23,03 23.03 übergibst.
Peter Mögenburg
Gruß

Peter
  Mit Zitat antworten Zitat
Elspass

Registriert seit: 15. Sep 2003
Ort: Hofheim am Taunus
83 Beiträge
 
FreePascal / Lazarus
 
#3

Re: Programm rundet bei der Übergabe in die DB

  Alt 1. Jun 2007, 10:54
Das gleiche, ich habe 23.03 fest übergeben..

DSRechPos.DataSet.FieldByName('STCKPREIS').AsFloat := 23.03;

in der Access-Datenbank kommt immer noch 23,00 an...
Noch eine Idee???
Jörg Elspass
  Mit Zitat antworten Zitat
Elspass

Registriert seit: 15. Sep 2003
Ort: Hofheim am Taunus
83 Beiträge
 
FreePascal / Lazarus
 
#4

Re: Programm rundet bei der Übergabe in die DB

  Alt 1. Jun 2007, 10:58
Du hast mich auf die Spur gebracht... das hat nichts mit Delphi zu tun...
Auch wenn ich manuel die Zahl in Access eingebe, wird sie gerundet.
Jetzt sollte ich mich mit Access auskennen
Angehängte Dateien
Dateityp: zip db_639.zip (12,9 KB, 3x aufgerufen)
Jörg Elspass
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#5

Re: Programm rundet bei der Übergabe in die DB

  Alt 1. Jun 2007, 11:02
Das, was MS Access dir anzeigt und das, was wirklich in der Datenbank (Jet Engine) steht, sind 2 Paar Schuhe.
MS Access ist das Frontend und die Jet Engine ist das Backend/die eigentliche Datenbank.
Was wird angezeigt, wenn du einfach eine Query "SELECT * FROM RechPos" mit einem DBGrid verbindest ?
Andreas
  Mit Zitat antworten Zitat
Elspass

Registriert seit: 15. Sep 2003
Ort: Hofheim am Taunus
83 Beiträge
 
FreePascal / Lazarus
 
#6

Re: Programm rundet bei der Übergabe in die DB

  Alt 1. Jun 2007, 11:04
Leider zeigt der auch nur die runde Zahl an (23,00)
Jörg Elspass
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#7

Re: Programm rundet bei der Übergabe in die DB

  Alt 1. Jun 2007, 11:10
Kein Wunder, wenn man das Feld "StckPreis" als Integer-Feld definiert!!!
Datentyp Currency wäre richtig.
Code:
RechnungTemp
   Fields
      Anzahl : Integer
         Fixed
         Nullable
      ArtNr : VarWChar(255)
         Nullable
      Bezeichnung : VarWChar(255)
         Nullable
      Datum : VarWChar(255)
         Nullable
      GesamtPreis : Currency
         Fixed
         Nullable
      ID : Integer
         Fixed
      Seriennummer : VarWChar(255)
         Nullable
      StckPreis : Integer
         Fixed
         Nullable
      Uhrzeit : VarWChar(255)
         Nullable
      USt : Integer
         Fixed
         Nullable
Andreas
  Mit Zitat antworten Zitat
Elspass

Registriert seit: 15. Sep 2003
Ort: Hofheim am Taunus
83 Beiträge
 
FreePascal / Lazarus
 
#8

Re: Programm rundet bei der Übergabe in die DB

  Alt 1. Jun 2007, 11:12
Jo, habe ich eben auch gesehen. Der Tip mit Backend war schon prima. Im Frontend sehe ich nur Format = Zahl mit Kommastelle...



Ich schäme ich schon!
Jörg Elspass
  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 09:31 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