Wert wird duch Listenfeld gerundet

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Benutzeravatar
herz4
****
Beiträge: 145
Registriert: Mi, 29.09.2010 13:41

Re: Wert wird duch Listenfeld gerundet

Beitrag von herz4 »

Ich frage erst einmal zurück:

Es sind Zahlen vom Format Double in einer Tabelle gespeichert. Zur Eingabe von Zahlen in einer weiteren Tabelle, dort einer Spalte vom Format Double werden genau erst genannte Zahlen in einem Listenfeld aufgerufen, ausgewählt und eingetragen - in einem Formular. Ist dieses Listenfeld auch für 2 Nachkommastellen formatiert?
LinuxMint 13 maya, LibreOffice 4.1 mit externer HSQLDB 2.3.2
Benutzeravatar
herz4
****
Beiträge: 145
Registriert: Mi, 29.09.2010 13:41

Re: Wert wird duch Listenfeld gerundet

Beitrag von herz4 »

Danke für die Erklärung.

Wenn dem so ist, dass Listboxen nur Strings verarbeiten können, dann könnte ein möglicher Lösungsweg ein Umweg sein:

Ich habe erlebt, dass ein Komma in einem String, der als Zahl gelesen werden soll, nur bis zu eben diesem als Zahl interpretiert wird, danach ist Schluss. Ich hatte das Problem in anderem Zusammenhang. Mir hatte geholfen, das "deutsche" Komma in dem String durch den anglikanischen Dezimalpunkt zu ersetzen - dann wurden auch die Nachkommastellen eingelesen!

z. B. REPLACE(BETRAG,',','.') könnte in der Abfrage stehen, die den Inhalt der Listenbox erstellt. Wenn der Punkt in der Auswahl stört, könnte ein Kombifeld herhalten ...
LinuxMint 13 maya, LibreOffice 4.1 mit externer HSQLDB 2.3.2
Benutzeravatar
herz4
****
Beiträge: 145
Registriert: Mi, 29.09.2010 13:41

Re: Wert wird duch Listenfeld gerundet

Beitrag von herz4 »

Der Focus das Feld oder das Formular?

Wenn es nur das Feld wäre, also noch keine Datensatzaktion ausgelöst wurde, kann meiner Einschätzung nach die Ursache im Formularfeld, andernfalls in der Datenbankanbindung gesucht werden ...?
LinuxMint 13 maya, LibreOffice 4.1 mit externer HSQLDB 2.3.2
Benutzeravatar
herz4
****
Beiträge: 145
Registriert: Mi, 29.09.2010 13:41

Re: Wert wird duch Listenfeld gerundet

Beitrag von herz4 »

Ich finde, Du hast eine wunderbare Erfahrung gemacht, eine "Selbsterkenntnis".

Ich würde gerne daran teilnehmen, weiß nur nicht wie?!

Bitte erkläre auch für mich verständlich!

René
LinuxMint 13 maya, LibreOffice 4.1 mit externer HSQLDB 2.3.2
Benutzeravatar
herz4
****
Beiträge: 145
Registriert: Mi, 29.09.2010 13:41

Re: Wert wird duch Listenfeld gerundet

Beitrag von herz4 »

Mein Mitleid ist ganz auf Deiner, ZM113 Seite.

Mir scheint(!) eine besondere Formatierung der Tabelle(?) oder des Tabellenfeldes nicht nützlich. Ich meinte eher, in den Zahlen der Auswahlliste, also der dazugehörigen Abfrage das Dezimalkomma gegen den Punkt einzutauschen. Dies war mein Ansatz, weil ZM113 mitteilte, Listenfelder sind immer vom Typ String?! Wenn dann trotzdem dem Formularfeld ein Datensatzfeld vom Typ Numeric(...,2) zugeordnet ist, muss bei der Datensatzaktion der String in eine Zahl umgewandelt werden. Dies macht Base nach meiner Erfahrung so, dass bei auftretendem Komma Schluss ist, ein Punkt aber als Dezimaltrenner gelesen wird.

Weiter oben schreibt ZM113, dass noch mit Punkt im Formularfeld eingetragen wurde, dann aber "gerundet" wird. Wirklich gerundet, oder Nachkommastellen abgeschnitten?! Vielleicht kommst Du damit weiter...?

ZM113, Du bist verständlich! Ich auch ...?

René
LinuxMint 13 maya, LibreOffice 4.1 mit externer HSQLDB 2.3.2
Antworten