Hi,
Zitat:
SELECT @Nummer = COALESCE(
CONVERT(VARCHAR, dbo.tEingangsrechnung.Eingangsrechnungsnummer),
CONVERT(VARCHAR, dbo.tKassenbuchung.Belegnummer),
CONVERT(VARCHAR, tEingangsrechnung_1.Eingangsrechnungsnummer),
CONVERT(VARCHAR, dbo.tAusgangsrechnung.Ausgangsrechnungsnummer),
CONVERT(VARCHAR, dbo.tDauerauftrag.Dauerauftragsnummer),
CONVERT(VARCHAR, dbo.tSonstigeZahlungenEinnahmen.SZENummer),
CONVERT(VARCHAR, dbo.tSonstigeZahlungenAusgaben.SZANummer)
)
Stimmt, so klappt es jedenfalls bei einem Test bei mir.
Aber deine Abfrage oben hat noch ein paar andere Feher - oder ist etwas durcheinander gerüttelt. Ein gut formatierter Code hilft auch bei
SQL
SQL-Code:
SELECT TOP 100 PERCENT -- eigendlich unnötig?
dbo.sUmbuchung_Anteil.*,
COALESCE (
tEingangsrechnung_1.Eingangsrechnungsnummer,
dbo.tKassenbuchung.Belegnummer,
tEingangsrechnung_1.Eingangsrechnungsnummer,
dbo.tAusgangsrechnung.Ausgangsrechnungsnummer,
dbo.tDauerauftrag.Dauerauftragsnummer,
dbo.tSonstigeZahlungenEinnahmen.SZENummer,
dbo.tSonstigeZahlungenAusgaben.SZANummer,
NULL) AS Eingangsrechnungsnummer,
tKontenbuchung.Betrag AS RechnungBetrag,
tKontenbuchung.Verwendung AS RechnungVerwendung,
tKontenbuchung.Zahlungsempfaenger AS RechnungZahlungsempfaenger,
tKontenbuchung.Buchungsdatum AS RechnungBuchungsdatum,
dbo.tKontenbuch.PK_tKontenbuch AS PK_tKontenbuchRechnung
FROM
dbo.tSonstigeZahlungenAusgaben
RIGHT OUTER JOIN dbo.sUmbuchung_Anteil
ON dbo.tSonstigeZahlungenAusgaben.PK_tSonstigeZahlungenAusgaben = dbo.sUmbuchung_Anteil.FK_tSonstigeZahlungenAusgaben
LEFT OUTER JOIN dbo.tSonstigeZahlungenEinnahmen
ON dbo.sUmbuchung_Anteil.FK_tSonstigeZahlungenEinnahmen = dbo.tSonstigeZahlungenEinnahmen.PK_tSonstigeZahlungenEinnahmen
LEFT OUTER JOIN dbo.tAusgangsrechnung
ON dbo.sUmbuchung_Anteil.FK_tAusgangsrechnung = dbo.tAusgangsrechnung.PK_tAusgangsrechnung
LEFT OUTER JOIN dbo.tDauerauftrag
ON dbo.sUmbuchung_Anteil.FK_tDauerauftrag = dbo.tDauerauftrag.PK_tDauerauftrag
LEFT OUTER JOIN dbo.tEingangsrechnung tEingangsrechnung_1
ON dbo.sUmbuchung_Anteil.FK_tEingangsrechnung = tEingangsrechnung_1.PK_tEingangsrechnung
LEFT OUTER JOIN dbo.tKassenbuchung
ON dbo.sUmbuchung_Anteil.FK_Kassenbuchung = dbo.tKassenbuchung.PK_tKassenbuchung
LEFT OUTER JOIN dbo.tKonto
------------------------------------------------------------------------ hier fehlt die bedingung <-- ????
INNER JOIN dbo.tKontenbuch
ON dbo.tKonto.PK_tKonto = dbo.tKontenbuch.FK_tKonto
INNER JOIN dbo.tKontenbuchung tKontenbuchung
ON dbo.tKontenbuch.PK_tKontenbuch = tKontenbuchung.FK_tKontenbuch
ON dbo.sUmbuchung_Anteil.FK_tKontenbuchung = tKontenbuchung.PK_tKontenbuchung
LEFT OUTER JOIN dbo.tEingangsrechnung tEingangsrechnung_2
INNER JOIN dbo.tRechnung_Teilzahlung
------------------------------------------------------------------------ hier fehlt die bedingung <-- ????
INNER JOIN dbo.tKontenbuchung_Rechnung
ON dbo.tRechnung_Teilzahlung.PK_tRechnung_Teilzahlung = dbo.tKontenbuchung_Rechnung.FK_tRechnung_Teilzahlung
INNER JOIN dbo.tRechnung
ON dbo.tRechnung_Teilzahlung.FK_tRechnung = dbo.tRechnung.PK_tRechnung
------------------------------------------------------------------------ wo ist der join <-- ????
ON tEingangsrechnung_2.FK_tRechnung = dbo.tRechnung.PK_tRechnung
------------------------------------------------------------------------ wo ist der join <-- ????
ON tKontenbuchung.PK_tKontenbuchung = dbo.tKontenbuchung_Rechnung.FK_tKontenbuchung
ORDER BY tEingangsrechnung_1.Eingangsrechnungsnummer