Summation in (1:N) Beziehung

Sehr geehrte Damen und Herren,

ich wende mich mit folgender Situation an Sie:

Ich habe zwei Ansichten: Firma und Umsätze. Diese stehen in einer (1:N) Beziehung zueinander. Nun möchte ich in der Ansicht ‚Firma‘ ein Textfeld anlegen, in dem ich mittels Formel berechne, wie hoch der Gesamte Umsatz dieser Firma ist. Ein entsprechendes Feld in der Tabelle Umsatz ist hinterlegt. Normalerweise müsste man nun hierbei als Ausdruck als Formel nur eingeben, dass er alle Umsätze addiert, die zum entsprechenden Datensatz gehört.

Nun ist es allerdings so, dass wenn ich im Eingabemaskenmanager bin und ich dort in einem Textfeld die Summe der Umsätze anzeigen lassen möchte, mir die entsprechenden Felder der Tabelle Umsatz nicht zur Verfügung stehen. Lediglich die, die in einer (1:1) Beziehung stehen.

Wie erreiche ich nun dennoch mein Ziel, die Umsätze zur entsprechenden Firmen-Kontakt anzeigen und berechnen zu lassen?

Mit freundlichen Grüßen

Sascha Hellfeuer

Hi Sascha,

in der cRM-Solution „Large“ ist das schon fertig:

Es wird eine Datenbanksicht definiert, die je Firma für das laufende Jahr über die Belege summiert:

CREATE VIEW [dbo].[SalesTurnoverCompaniesCY] AS SELECT TOP 100 PERCENT CompanyID, SUM(Total) AS Turnover FROM dbo.SalesDocuments WHERE (Type = '3') AND (YEAR(Date) = YEAR(CURRENT_TIMESTAMP)) AND (CompanyID IS NOT NULL) GROUP BY CompanyID ORDER BY Turnover DESC

„SalesDocuments“ ist in diesem Fall die Tabelle mit Rechnungen (Type=‚3‘), Aufträgen, Lieferscheinen etc.

Dann wird eine address manager Ansicht („SalesUmsatzFirmenLJ“) definiert, die genau darauf beruht.

Dann definierst du bloß noch in „Firmen“ eine 1:1 Relation, die auf diese Ansicht anhand der Firmen-ID zeigt. Und schon haste zu jeder Firma ihren Umsatz als 1:1 Feld verfügbar.

Gruß

Alex