Rechnen bereits in der Datenbank-Tabelle

Gibt es in base eine Möglichkeit bereits in einer Tabelle rechnen zu lassen? Zum Beispiel: Eingabe in Feld “Netto_Preis”; “Steuer_Satz”, Ergebnis im Feld “Brutto_Preis”. (Feld1 “200”; Feld2 “19”; Feld3 “238”)

Soviel mir bekannt ist, geht das nicht.
Benutze eine Abfrage.

Wie @Hrbrgr schreibt: Tabellen speichern Daten, die Du direkt eingibst. Bei Base kannst Du aber Abfragen zusammenstellen, die zur Eingabe taugen und gleichzeitig auch Berechnungen durchführen. Aber: Dafür muss der Datensatz erst einmal in der Tabelle stehen. Das geht also nicht während der Eingabe sondern erst, nachdem der Datensatz abgespeichert ist:

SELECT *, 
"Netto_Preis"*(100+"Steuer_Satz)/100 AS "Brutto_Preis" 
FROM "Tabelle"

Wenn Du das Ganze während der Eingabe haben möchtest, dann musst Du Makros nutzen. Steht im Handbuch 7.2 auf S. 483ff - genau zu diesem Thema mit der Steuer. (Und im Handbuch 7.4 auf S. 488ff)

Und noch ein Hinweis: Daten, die Du aus anderen Feldern berechnen kannst, speicherst Du nicht ab. Stell Dir vor Du gibst einen neuen Nettopreis ein und da steht noch der alte Bruttopreis…

2 Likes

Ohne Makro wird das Ergebnis angezeigt sobald der Datensatz gespeichert wurde, also beinahe “sofort”.

@Villeroy : Ohne Makro würde ich das machen, wenn ich mit Tabellenkontrollfeldern arbeite. In der Regel speichere ich sonst ab, indem ich zum nächsten Datensatz wechsele. Und dann sehe ich die vorherige Eingabe nicht mehr.