(gelöst) Das Ergebnis einer Abfrage in einem Formular

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

hejo52
Beiträge: 4
Registriert: Sa, 26.11.2011 16:07
Wohnort: Im Pott zuhause

(gelöst) Das Ergebnis einer Abfrage in einem Formular

Beitrag von hejo52 »

Zunächst einmal ein herzliches Hallo an alle Forumer!

Ich bin neu hier und habe mich angemeldet weil ich auf dem DB-Sektor totaler Neuling bin. Habe mir schon ein dickes Buch von einem irischklingenden Verlag, eines deutschen Autors gekauft (ich hoffe hier jetzt nicht zuviel Werbung gemacht zu haben). Doch das hilft mir nicht viel weiter, da es kaum über die Online-Hilfe hinaus geht. So sind SQL- und Makro-Scripte für mich weiterhin ein Buch mit sieben Siegeln.

Ich bin dabei für mich privat eine Datenbank zu erstellen. Es handelt sich um eine DB zum verwalten von Arztrechnungen, Rezeptgebühren und Praxisgebühren. Hintergrund ist der Wunsch, am Ende des Jahres, per klick, angezeigt zu bekommen wie hoch meine Eigenleistungen auf dem Gesundheitssektor sind, um diese dann bei der Steuer als Aussergewöhnliche Belastungen geltend zu machen!

Dazu habe ich verschiedene Tabellen erstellt und bin dabei verschiedene Formulare aufzubauen. Da es in Base nicht möglich ist innerhalb einer Tabelle Berechnungen durchzuführen, habe ich eine Abfrage erzeugt, die mir aus der Tabelle "Rezepte" die Eigenanteile zu jeder Verordnung errechnet und diese am Ende für jedes Rezept, welches abgerechnet wird, summiert.

Als nächsten Schritt möchte ich eigentlich das mir dieser Betrag in dem Eingabe-Formular, welches ich für "Rezepte" erstellt habe, zu irgendeinem Zeitpunkt angezeigt wird. Dazu habe ich ein Subformular erstellt welches mir die Daten aus der Abfrage ausliest und anzeigt. Dieses Subformular habe ich in das Hauptformular eingebunden und es werden mir die Daten des ersten Datensatzes angezeigt. Wenn ich aber im Hauptformular weiter schalte zu den nächsten Datensätzen geht das Sub nicht mit und zeigt mir immer weiter die des ersten Datensatzes an.

Ich habe jetzt im Forum schon gelesen das ich auf die richtige Beziehung zwischen den beiden Formularen achten muß, aber ich weiß nicht wo ich das einstellen kann. Auch hatte ich gedacht ich könnte die Abfrage-Tabelle mit der Haupttabelle "Rezepte" im Relations Desinger miteinander in Beziehung setzen, aber auch das geht nicht, da die Abfrage-Tabelle dort garnicht angezeigt wird.

Ich bin mit meinem kleinen Messdienerlatinum :D nun am Ende und hoffe auf Tipps von Euch!

Ich würde mich über konkrete Lösungsvorschläge freuen, wäre aber auch an gute Literaturvorschläge (gerne per PN) interessiert - da Bücher in dieser Kategorie, wenn sie denn überhaupt was taugen, nicht gerade preiswert sind.

Also denn, ich Grüß Euch alle

Hermann
Zuletzt geändert von hejo52 am Do, 08.12.2011 17:11, insgesamt 1-mal geändert.
OO 3.3 / HSQLDB / Java 1.6.23 /WIN7 (32 Bit)
F3K Total
********
Beiträge: 3720
Registriert: Mo, 28.02.2011 17:49

Re: Das Ergebnis einer Abfrage in einem Formular anzeigen la

Beitrag von F3K Total »

Hallo Hermann,
um die Summe zu berechnen, benötigst Du kein Unterformular, ein zweites neben dem ersten reicht.
Anbei mal ein Beispiel zum studieren, dabei möchte ich Dir den Formular-Navigator im Bearbeitungsmodus des Formulares empfehlen.
Hier wirst Du sehen wie das Eingabeformular im Hintergrund aufgebaut ist.
Das zweite Formular neben dem ersten habe ich "Formular_Jahressumme" genannt, das erste heißt defaultmässig "MainForm" siehe auch Bild.
Wenn Du die Elemente im Formularnavigator anklickst, und dann mit der rechten Maustaste auf Eigenschaften gehst, kannst Du die beiden Formulare und die jeweils darin angeordneten Kontrollelemente wie das Tabellenkontrollfeld, das formatierte Feld usw. analysieren.
Formularaufbau.png
Formularaufbau.png (121.61 KiB) 1675 mal betrachtet
Viel Erfolg, Gruß R
Dateianhänge
Messdiener.odb
(13.27 KiB) 107-mal heruntergeladen
hejo52
Beiträge: 4
Registriert: Sa, 26.11.2011 16:07
Wohnort: Im Pott zuhause

Re: Das Ergebnis einer Abfrage in einem Formular anzeigen la

Beitrag von hejo52 »

Guten Morgen "F3K Total"!

Ich danke Dir für Deine Unterstützung und Deine kleine Muster-DB. Ich habe sie mir mal runter geladen und kurz angeschaut und auch schon deutliche Unterschiede zu meiner Vorgehensweise erkannt aber leider fehlt mir auf die schnelle noch der direkte Kick zum Verständniss.
Ich werde mich am Abend nochmal detalierter damit befassen und dann auf die Erleuchtung hoffen.

Gruß Hermann
OO 3.3 / HSQLDB / Java 1.6.23 /WIN7 (32 Bit)
hejo52
Beiträge: 4
Registriert: Sa, 26.11.2011 16:07
Wohnort: Im Pott zuhause

Re: Das Ergebnis einer Abfrage in einem Formular anzeigen la

Beitrag von hejo52 »

Guten Morgen allerseits!

Da bin ich wieder, hat leider etwas länger gedauert bis ich mich zurückmelde, aber mein Problem ist noch nicht gelöst. Ich werde mal eine Beispiel-DB anhängen.

Für die Gemeinde noch einmal mein Problem:
Ich habe eine Tabelle mit Rezeptdaten, die ich über ein Formular fülle. In diesem Formular sollen die entsprechenden Eigenanteile, die ich selbst zu tragen habe, berechnet und angezeigt werden. Dieses habe ich mit Hilfe von "F3K Total" auch soweit gelöst, das die Berechnungen durchgeführt und angezeigt werden.
Jetzt besteht noch weiterhin das Problem, das die Anzeige der berechneten Datensätze nicht parallel mit denen der Eingabe angezeigt werden. D.h. beim aufrufen des Formulars wird mir der 1. Datensatz angezeigt, blätter ich weiter durch die Datensätze der Eingabe, bleibt die Anzeige auf den Feldern des 1. berechneten Datensatzes stehen. Klicke ich eines dieser Felder an kann ich in diesen Datensätzen blättern und es bleiben die Eingabefelder unverändert.

Gerne hätte ich natürlich wenn beide Teile parallel laufen würden!

Eine weitere Frage ist dann, wie bekomme ich die berechneten Felder wieder in eine Tabelle und möglichst wieder die Ursprungstabelle "Rezepte"?

Wenn es dazu Lösungsvorschläge gibt, wäre ich Euch dankbar!

Gruß Hermann
Pillendreher_DB.odb
(15.88 KiB) 70-mal heruntergeladen
OO 3.3 / HSQLDB / Java 1.6.23 /WIN7 (32 Bit)
F3K Total
********
Beiträge: 3720
Registriert: Mo, 28.02.2011 17:49

Re: Das Ergebnis einer Abfrage in einem Formular anzeigen la

Beitrag von F3K Total »

Hallo hejo52
so, wie Du die Datenbank aufgebaut hast, benötigst Du doch ein Unterformular, was dann über wenigstens einen Wert verknüpft sein muß.
Sinnvoll ist die RezeptID.
Dazu habe ich deine SQL-Abfrage um die ID erweitert und dann das Formular durch verschieben im Formularnavigator "in" das Hauptformular geschoben.
Wenn Du jetzt auf den Reiter "Daten" des Unterformulares klickst kannst Du die Verknüpfung sehen.
So läuft es erstmal.
Warum willst Du die Eigenanteil-und Summenwerte jetzt wieder in die Tabelle Rezepte eintragen? Das wäre eine überflüssige Aktion, mit Makros machbar, die Daten ergeben sich aber doch eindeutig aus der Berechnung?

Gruß R
Dateianhänge
Pillendreher_DB.odb
(15.84 KiB) 74-mal heruntergeladen
Zuletzt geändert von F3K Total am Di, 06.12.2011 21:26, insgesamt 1-mal geändert.
hejo52
Beiträge: 4
Registriert: Sa, 26.11.2011 16:07
Wohnort: Im Pott zuhause

Re: Das Ergebnis einer Abfrage in einem Formular anzeigen la

Beitrag von hejo52 »

Guten Morgen zusammen!

Zunächst herzlichen Dank an "F3K Total" und an "Gast" für Eure Mühe!
Gast hat geschrieben:Warum nimmst Du als Grundlage für Dein Formular nicht eine Abfrage? Dann kannst Du Dir die ganzen Umwege sparen:

Gruß

Robert
Die gesonderte Abfrage war ja mein ursprünglicher Gedanke, nur bezog sich mein Formular dabei nicht auf die Abfrage-Tabelle sondern auf die Tabelle "Rezepte". Daraufhin erhielt ich ja von "F3K Total" den Vorschlag das im Formular so zu ändern das ich auf die Abfrage verzichten konnte, was ja auch soweit funktionierte.
"F3K Total" in Deinem geändertem Formular klappt es jetzt ja auch mit dem Synchronlauf der Anzeige. :D Ich werde damit jetzt mal ein wenig weiter spielen
F3K Total hat geschrieben:
Warum willst Du die Eigenanteil-und Summenwerte jetzt wieder in die Tabelle Rezepte eintragen? Das wäre eine überflüssige Aktion, mit Makros machbar, die Daten ergeben sich aber doch eindeutig aus der Berechnung?

Gruß R
Das war eigentlich nur so ein dummer Gedanke "alle" Werte "eines" Datensatzes in "einer" Tabelle zusammen zu haben, aber da muss ja nicht sein. Wie gesagt ich werde jetzt mal weiter spielen und sehen was ich am Ende raus bekomme. Erst mal schönen Dank!

Aber habt Ihr denn noch Literaturempfehlungen zum Thema BASE, SQL und Makros die für so Anfänger wie mich geeignet sind :?:

Gruß Hermann
OO 3.3 / HSQLDB / Java 1.6.23 /WIN7 (32 Bit)
hejo52
Beiträge: 4
Registriert: Sa, 26.11.2011 16:07
Wohnort: Im Pott zuhause

Re: Das Ergebnis einer Abfrage in einem Formular anzeigen la

Beitrag von hejo52 »

Hallo R.

1000 Dank! Werde mal sofort Lesezeichen setzen und in Ruhe studieren!

Gruß Hermann
OO 3.3 / HSQLDB / Java 1.6.23 /WIN7 (32 Bit)
Antworten