Hallo Eberhard, > > ich habe meine Dbase Daten in OpenOffice Base übernommen und mir auch > entsprechende Formulare zum Erfassen der Daten angelegt. > In meiner alten Datenbank konnte Formularfelder mit anderen Feldern > verknüpfen und auch eine Formel mit einfügen um Berechnungen ausführen. > Das habe bei Base noch nicht gefunden. > Ich habe zum Beispiel im Formular 3 Felder "Betrag", "Mwst" und "Betrag > ohne Mwst". > Wenn ich den Betrag eingebe, sollten sich die Felder "Mwst" und "Betrag > ohne Mwst" automatisch selbst berechnen. > Das Aktualisieren der Daten in den entsprechenden Feldern kann auch nach > dem Speichern geschehen. > Wie kann ich so etwas in Base lösen???
Du nimmst als Grundlage für Dein Formular nicht die Tabelle, sondern eine Abfrage: SELECT "ID", "Preis", "MWSt", "Preis"/((100+"MWSt") / 100) AS "Netto" FROM "Tabelle" Das Wesentliche an der Abfrage: Sie darf sich nur auf eine Tabelle beziehen. Dann kannst Du aber auch beliebige Rechnungen in der Abfrage verwirklichen und durch aktualisieren der Daten auf den Bildschirm bekommen. Wenn Du das untenstehende zu kompliziert findest reicht das aber völlig für Deine oben geschilderten Bedürfnisse. Wenn Du jetzt noch die ID der zugrundeliegenden Tabelle beim ersten Abspeichern während der Eingabe in eine Tabelle mit nur einer Zeile mittels Makro speichern lässt kannst Du mittels dieser gespeicherten ID die Abfrage auch noch einschränken: SELECT "ID", "Preis", "MWSt", "Preis"/((100+"MWSt") / 100) AS "Netto" FROM "Tabelle" WHERE "ID" IN (SELECT FilterID FROM Filter). Dann zeigt Dein Formular beim Aktualisieren während der Eingabe das Berechnungsergebnis an. Du verbindest dafür das Verlassen des Eingabefeldes für die MWSt mit dem Zwischenspeichern und aktualisieren und bereits während der Eingabe steht "Netto" in dem Feld. Gruß Robert --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
