Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Problem bei Abfrageerstellung für Rechnungspositionen

Begonnen von tragger, September 04, 2010, 20:39:41

⏪ vorheriges - nächstes ⏩

tragger

Hallo Leute,

ich habe mal wider ein Problem. Ich möchte eine Abfrage für Rechnungspositionen erstellen. Das Problem ist, dass hier in den Rechnungspositionen entweder Versicherungen oder eine Aufnahmegebühr abgerechnet werden sollen. Diese Aufnahmegebühr soll als eigener Datensatz erstellt werden.

Mein Abfrageentwurf sieht erst einmal als SQL so aus:
SELECT tabRechnungPositionen.PositionsNr, tabRechnungPositionen.RechnungsNr, tabRechnungPositionen.VersicherungsNr, qryVersicherung.PferdeNr, qryVersicherung.Nutzungsart, qryVersicherung.VersicherungssummeEuro, qryVersicherung.Versicherungsdauer, qryVersicherung.Prämiensatz, qryVersicherung.Ablauf, tabRechnungPositionen.Bezeichnung, tabRechnungPositionen.Nettoprämie, qryPferde.Geschlecht, qryPferde.Abstammung, qryPferde.Geburtsjahr
FROM tabRechnungPositionen INNER JOIN (qryVersicherung INNER JOIN qryPferde ON qryVersicherung.PferdeNr = qryPferde.PferdeNr) ON tabRechnungPositionen.VersicherungsNr = qryVersicherung.VersicherungsNr;


Hier ist nun das Problem, dass ein Datensatz ohne Eingabe einer Versicherungsnummer nicht erfasst werden kann, bzw. bei Erfassung in der Tabelle nicht in der Abfrage angezeigt wird.

Wie kann ich das lösen, dass auch ie Datensätze angezeigt werden, bei denen das Feld VersicherungsNr leer ist, aber die Primärschlüsselkombination "tabRechnungPositionen.PositionsNr, tabRechnungPositionen.RechnungsNr" passt?

Wenn weitere Angaben benötigt, oder ich mich falsch ausgedrückt habe, bitte ich um kurze Info

MzKlMu

Hallo,
ändere die Beziehungstypen statt INNER JOIN RIGHT JOIN (oder LEFT JOIN).
Gruß Klaus

tragger

Thank You!!

Das wars scheinbar.

Hier der Code:
SELECT tabRechnungPositionen.PositionsNr, tabRechnungPositionen.RechnungsNr, tabRechnungPositionen.VersicherungsNr, qryVersicherung.PferdeNr, qryVersicherung.Nutzungsart, qryVersicherung.VersicherungssummeEuro, qryVersicherung.Versicherungsdauer, qryVersicherung.Prämiensatz, qryVersicherung.Ablauf, tabRechnungPositionen.Bezeichnung, tabRechnungPositionen.Nettoprämie, qryPferde.Geschlecht, qryPferde.Abstammung, qryPferde.Geburtsjahr
FROM tabRechnungPositionen LEFT JOIN (qryVersicherung LEFT JOIN qryPferde ON qryVersicherung.PferdeNr = qryPferde.PferdeNr) ON tabRechnungPositionen.VersicherungsNr = qryVersicherung.VersicherungsNr;