ACC_Entwickler
Aktiver Benutzer
- Beiträge
- 28
Moin allerseits!
Ich habe Folgendes Problem:
Ich habe eine Tabelle mit Rechnungen, in denen Die Rechnungsbeträge ausgegeben werden. Es gibt für manche Rechnungen mehrere Einträge, da auf diese Waren sowie Leistungen gebucht werden sollen. Ich möchte nun diese Rechnungen alle anzeigen lassen, was kein Problem darstellt. Allerdings möchte ich die Rechnungen mit gleicher Rechnungsnummer zuätzlich in einer weiteren Spalte noch addieren. Und in einer weiteren Spalte noch das Produkt je nach Rechnungstyp anzeigen lassen. Als dritte Erweiterung brauche ich den Gesamtbetrag aller Rechnungen der gleichen WO. Ich habe das Gefühl dass ich hier mit Subselects arbeiten muss, komme aber partout nicht weiter.
Im Anhang ist ein Beispiel
Mein Code:
SELECT
x.[WO],
x.[Rechnung],
x.[Betrag],
x.[Rechnungstyp]
FROM(
SELECT
RIGHT(Format(CAST(A.counter AS int), '##-####'), 7) AS WO,
RIGHT(Format(CAST(I.RG AS int), '##-####'), 7) AS Rechnung,
II.eBetrag AS Betrag,
II.RGtyp AS Rechnungstyp
FROM SOdata.dbo.Aufträge AS A LEFT OUTER JOIN
SOdata.dbo.Invoice AS I ON A.Auftragsnummer = I.Auftragsnummer LEFT OUTER JOIN
SOdata.dbo.InvoiceIncome AS II ON A.Auftragsnummer = II.ID AND I.RG = II.RGnummer
WHERE (A.OrderType = 'Auftrag') AND (CHARINDEX('deleted', A.Auftragnr_neu) = 0 OR
CHARINDEX('deleted', A.Auftragnr_neu) IS NULL) AND (CHARINDEX('Auftrag', A.OrderType) = 1) AND (A.counter IS NOT NULL)
)x
WHERE WO = '22-7001'
Group BY x.[WO],
x.[Rechnung],
x.[Betrag],
x.[Rechnungstyp]
Im Anhang findet ihr die Ausgabe.
Wie oben beschrieben möchte ich eine Spalte in der der Gesamtbetrag also: 100.041,17 für alle Einträge dargestellt wird. Zusätzlich soll eine Spalte Betrag je Rechnung für die 22-7001 81.720 für die 22-7002 2.841,17 und für 22-7003 15.480 anzeigen. Die letzte Spalte soll Betrag nach Typ heißen und für alle Leistungen 98.100 und für alle Waren 1941,17 anzeigen. Ich hoffe das ist so zu verstehen.
Danke im Vorraus schonmal!
Ich habe Folgendes Problem:
Ich habe eine Tabelle mit Rechnungen, in denen Die Rechnungsbeträge ausgegeben werden. Es gibt für manche Rechnungen mehrere Einträge, da auf diese Waren sowie Leistungen gebucht werden sollen. Ich möchte nun diese Rechnungen alle anzeigen lassen, was kein Problem darstellt. Allerdings möchte ich die Rechnungen mit gleicher Rechnungsnummer zuätzlich in einer weiteren Spalte noch addieren. Und in einer weiteren Spalte noch das Produkt je nach Rechnungstyp anzeigen lassen. Als dritte Erweiterung brauche ich den Gesamtbetrag aller Rechnungen der gleichen WO. Ich habe das Gefühl dass ich hier mit Subselects arbeiten muss, komme aber partout nicht weiter.
Im Anhang ist ein Beispiel
Mein Code:
SELECT
x.[WO],
x.[Rechnung],
x.[Betrag],
x.[Rechnungstyp]
FROM(
SELECT
RIGHT(Format(CAST(A.counter AS int), '##-####'), 7) AS WO,
RIGHT(Format(CAST(I.RG AS int), '##-####'), 7) AS Rechnung,
II.eBetrag AS Betrag,
II.RGtyp AS Rechnungstyp
FROM SOdata.dbo.Aufträge AS A LEFT OUTER JOIN
SOdata.dbo.Invoice AS I ON A.Auftragsnummer = I.Auftragsnummer LEFT OUTER JOIN
SOdata.dbo.InvoiceIncome AS II ON A.Auftragsnummer = II.ID AND I.RG = II.RGnummer
WHERE (A.OrderType = 'Auftrag') AND (CHARINDEX('deleted', A.Auftragnr_neu) = 0 OR
CHARINDEX('deleted', A.Auftragnr_neu) IS NULL) AND (CHARINDEX('Auftrag', A.OrderType) = 1) AND (A.counter IS NOT NULL)
)x
WHERE WO = '22-7001'
Group BY x.[WO],
x.[Rechnung],
x.[Betrag],
x.[Rechnungstyp]
Im Anhang findet ihr die Ausgabe.
Wie oben beschrieben möchte ich eine Spalte in der der Gesamtbetrag also: 100.041,17 für alle Einträge dargestellt wird. Zusätzlich soll eine Spalte Betrag je Rechnung für die 22-7001 81.720 für die 22-7002 2.841,17 und für 22-7003 15.480 anzeigen. Die letzte Spalte soll Betrag nach Typ heißen und für alle Leistungen 98.100 und für alle Waren 1941,17 anzeigen. Ich hoffe das ist so zu verstehen.
Danke im Vorraus schonmal!