automatische Berechnung bei Eingabe in ein Formular

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

prof
Beiträge: 4
Registriert: Sa, 15.04.2006 15:41

automatische Berechnung bei Eingabe in ein Formular

Beitrag von prof »

Hi @ All.

Ich habe eine Datenbank für Rechnungsdaten und nun stehe ich vor den Problem, dass einige Werte aus meinen Eingaben automatisch berechnet werden sollen. Diese automatisch berechneten Daten sollen dann gleich in das Formular und später in die Tabelle eingetragen werden. Zum Beispiel die Mehrwertsteuer, die automatisch aus der Summe aller Artikel errechnet werden soll.
Habe schon einiges über ähnliche Probleme gelesen, aber nichts hat mir weitergeholfen.

Hat jemand eine Idee?

Danke uns Gruß
Prof.
berndkli
*****
Beiträge: 289
Registriert: Di, 12.04.2005 22:05

Beitrag von berndkli »

Hallo Prof

Base kann nur in Abfragen rechnen. Du musst also erstmal eine Abfrage in der Entwurfsansicht (ohne Assistent) auf der Grundlage deiner Tabelle erstellen. Wichtig dabei ist ,dass du auch die Spalte mit dem Primärschlüssel in die Abfrage hineinnimmst. In einer freien Spalte (in der Entwurfsansicht) schreibst du jetzt in der Zeile "Feld" deine Berechnungsformel. Wenn z.B. dein Rechnungsnetto in der Spalte "Netto" steht und Base jetzt das Brutto ausrechnen soll ist die Formel

Code: Alles auswählen

"Netto" + "Netto" / 100 * 16 
Wenn bei der Berechnung Kommabeträge entstehen können, müssen die Spalten mit denen gerechnet wird in der Tabelle als Typ "Float" deklariert sein
Ob die Formel funktioniert kannst du (immernoch in der Entwurfsansicht) unter "Bearbeiten"=>"Abfrage ausführen" prüfen.
Wenn du jetzt das Formular erstellst musst du die Felder, in die du etwas eingeben willst, direkt mit der Tabelle verbinden (aus Abfragen heraus kann man keine Daten manipulieren), das Ergebnisfeld jedoch mit der entsprechenen Spalte in der Abfrage. Dazu für die Abfrage ein Subformular erstellen und es in das Hauptformular (das mit der Tabelle verbunden ist) einhängen. Wie das im Prinzip geht steht hier viewtopic.php?t=5800&highlight= .

Bei "Verknüpfen von / Verknüpfen nach" gibst du jeweils die Primärschlüsselspalte an.

Wenn du dann Daten eingibst musst du den Datensatz erst speichern bevor das Rechenergebnis angezeigt wird.
Die errechneten Daten werden bei dieser Vorgehensweise allerdings nicht in die Tabelle geschrieben, sondern stehen nur in der Abfrage zur Verfügung, aber vielleicht hilft's ja trotzdem.

Gruss Bernd
prof
Beiträge: 4
Registriert: Sa, 15.04.2006 15:41

Beitrag von prof »

Hallo Bernd.

Ich habe jetzt eine Abfrage erstellt, die mir alles berechnet. Das funktioniert auch wunderbar. Nun bleibt nur noch das Problem, dass ich die Daten aus der Abfrage nicht von Hand in die Datenbank eintragen wollte. Gibt es nicht eine Möglichkeit die Daten aus der abfrage direkt in die Datenbank zu übernehmen?

Danke und Gruß
Prof.
berndkli
*****
Beiträge: 289
Registriert: Di, 12.04.2005 22:05

Beitrag von berndkli »

Hallo Prof
Gibt es nicht eine Möglichkeit die Daten aus der abfrage direkt in die Datenbank zu übernehmen?
Daran hab' ich gestern schon eine Weile herumprobiert, bin aber zu keiner Lösung gekommen. Ist ja eigentlich auch garnicht nötig; mit den Daten aus der Abfrage kann man doch auch schön weiterarbeiten.
Warum brauchst du die errechneten Daten in der Tabelle/Datenbank? Vielleicht gibt's ja noch 'ne andere Lösung.

Gruss Bernd
prof
Beiträge: 4
Registriert: Sa, 15.04.2006 15:41

Beitrag von prof »

Hallo Bernd

Wie ich es oben schon beschrieben habe, ist es eine Datenbank für Rechnungsdaten, wo halt alle Daten möglichst übersichtlich eingetragen werden sollen. Außerdem sollen später anhand der Datensätze Rechnungen erstellt werden. Habe auch schon an andere Wege gedacht und werde da noch ein bischen rumprobieren.

Danke und gruß
Prof.
berndkli
*****
Beiträge: 289
Registriert: Di, 12.04.2005 22:05

Beitrag von berndkli »

Hallo Prof
und werde da noch ein bischen rumprobieren.
Wenn du was Geniales findest, poste es mal; würde mich auch interessieren

Gruss Bernd
pmoegenb
********
Beiträge: 4330
Registriert: Di, 22.06.2004 12:02
Wohnort: 71134 Aidlingen
Kontaktdaten:

Beitrag von pmoegenb »

Hallo,

meines Wissens sind nur Select-Befehle, aber keine Update-Befehle möglich.
Gruß

Peter
---------------------------------------------------------------------------
Windows 7 Prof. 64-bit SP1, LibreOffice 4.3.6.2 und AOO 4.1.1
prof
Beiträge: 4
Registriert: Sa, 15.04.2006 15:41

Beitrag von prof »

Hallo,

habe mir nun noch ein Formular gebastelt, in dem alle nötigen Daten angezeigt werden. Sowohl aus der Tabelle, als auch aus der Abfrage. Funktioniert alles bestens, auch wenn die in der Abfrage berechneten Daten nicht in die Tabelle eingetragen werden.

Danke und Gruß
Prof.
Antworten