Office - Word, Excel und Co. 9.703 Themen, 40.813 Beiträge

Access-Problem: Wer weiss weiter???

drrob / 4 Antworten / Flachansicht Nickles

Hallo,

ich habe ein Problem mit Access. Es geht darum, dass ich Leistungsbögen erfassen muss:

- ca. 20 Leistungen, von denen jeder Patient mehrere in Anspruch genommen haben kann

- der (jeder dieser Leistungen) zugrundeliegende Betrag unterscheidet sich nun danach, ob der der Patient entweder privat

oder pflichtversichert ist. Also zum Beispiel:


-------------------------------------

Fritz Mustermann
Datum: 12.10.1999
Versicherungsart: privat

("X" = Leistung wurde beansprucht)

Leistung 1: X
Leistung 2:
Leistung 3: X
Leistung 4: X
Leistung 5:
.
.
.
Leistung 20: X


-------------------------------------


In der obigen Form werden die Daten in einer Tabelle ("Erfassungstabelle") mittels eines Formulars erfasst.

Das Feld "Name" war einfach Text, Datum natürlich Datum, Versicherungsart auch wieder Text, die einzelnen Leistungen

"Ja/Nein".

Nun muss ich erreichen, dass ich die Summe der Beträge der in Anspruch genommen Leistungen pro Patient angezeigt bekomme. Ich

habe nun dazu eine zweite Tabelle ("Wertetabelle") gemacht, die folgendermaßen aussieht:

Vers_art|Betrag_Leistung1|Betrag_Leistung2|...|Betrag_Leistung20
----------------------------------------------------------------
pflicht | 12,00 DM| 8,00 DM|...| 17,00 DM
----------------------------------------------------------------
privat | 19,00 DM| 14,00 DM|...| 26,00 DM


Dann habe ich zwischen den beiden Tabellen eine Beziehung hergestellt, in dem ich aus "Erfassungstabelle" das Feld

"Vers_art" auf "Vers_art" in "Wertetabelle" gezogen habe.

Nun erstellte ich eine Abfrage ("Abfrage1") , die alle Felder beider Tabellen enthält. Danach erstellte ich ein Formular

("Abfrageformular"), dass alle Felder von "Abfrage1" enthält.

Das ganze hat auch soweit prima funktioniert, d.h. es wurde mir in diesem Abfrageformular jeder Patient mit den in Anspruch genommenen Leistungen und den jeweils dazugehörigen Einzelbeträgen der Leistungen angezeigt. Auch die Abhängigkeit der Beträge von der Versicherungsart klappte.

Das Problem ist nun, die Beträge der in Anspruch genommen Leistungen zu addieren und als Summe anzuzeigen. Ich habe versucht,

ein neues Textfeld im Abfrageformular zu erzeugen, dass als Steuerelementinhalt enthält:

=Summe([Abfrage1]![Betrag_Leistung1]+[Abfrage1]![Betrag_Leistung2]+...+[Abfrage1]![Betrag_Leistung20])

Das Textfeld habe ich (wie auch die Felder Betrag_Leistung1 bis Betrag_Leistung20 in der Wertetabelle) als Währung (DM)

definiert. In der Formularansicht zeigt mir dieses Textfeld aber nur "#Fehler" an.

Was hab ich da falsch gemacht? Ich weiss nun einfach nicht mehr weiter.

Tausend Dank für Eure Hilfe,

MfG,
Robert Klerx

robert.klerx@mz-ac.de

bei Antwort benachrichtigen
wotan276 drrob „Access-Problem: Wer weiss weiter???“
Optionen

Robert, so geht es nicht!
Du hast eine Beziehung, die wie folgt aussieht:
Der Person in der Erfassungstabelle werden mehrere Beträge ind er Wertetabelle zugeordnet. Das heißt 1 Person hat viele Möglichkeiten, nämlich n Möglichkeiten einer Zuordnung von Beträgen. dies ist eine 1:n Beziehung, die auch in ACCESS dargestellt werden muss! Das hast Du jedoch nicht getan und kommst sofort ins Schleudern.
Lösungsansatz:
1. Deine Tabelle Erfassungstabelle wird um ein Feld erweitert. Dies nennst Du Laufende Nummer (LN) und gibst ihm die Eigenschaft Autowert. Zusätzlich bekommt es die Eigenschaft Primärschlüssel. Wenn du dieses Feld einrichtest und hast noch keinen Primärschlüssel definiert, wird diesem Feld von Access automatisch der Primärschlüssel zu geordnet.
2. Deine Tabelle Wertetabelle erhält ein weiteres Feld, das Du ebenfalls LN benennst. Als Eigenschaft muss dieses Feld long integer haben. Es darf nicht als Primärschlüssel gekennzeichnet sein!!
3. Du rufst unter Extras die Option Beziehungen auf. Dann klickst Du mit der rechten Maustaste und klickst auf Tabelle anzeigen. Du klickst beide Tabellen an und siehst sie auf dem Schirm. Nun pass auf.
Du fährst mit dem Mauszeiger auf das fett angezeigte Feld LN in der Tabelle Erfassungstabelle (der Mauszeiger wird zu einer schmlane Zelle) hälst die Taste gedrückt und ziehst sie zum gleichnamigen Feld in der Tabelle Wertetabelle. Es muss eine Verbindungslinie aufgebaut werden, die auf der Erfassungstabelle eine 1 und auf der Wertetabellenseite ein Unendlichzeichen zeigt.
Wenn du das fertig gebracht hast, freue Dich, melde Dich und ich schreibe Dir, wie es weiter geht!
Gruß
Michael

bei Antwort benachrichtigen