Access-o-Mania

Access-Forum (Deutsch/German) => Bericht => Thema gestartet von: datekk am Januar 26, 2015, 09:10:47

Titel: In Bericht Umsätze nach Datum Summieren
Beitrag von: datekk am Januar 26, 2015, 09:10:47
Hi. Ich möchte gern in einem Bericht Umsätze summieren. Diese Daten sind in einer Tabelle gespeichert mit dem Datum des Vertagseingangs.

Beispiel:

Vertragseingang          Umsatz          Addition
03.01.2014                 100               100
05.01.2014                   50               150
06.01.2014                 500               650

Wie bekomme ich die Spalte "Addition" hin? Gibt es da nur wieder die langsame DomSumme Funktion oder einen anderen Lösungsansatz? Das ganze soll nämlich in einem Bericht erscheinen und dieser Bericht soll ein Diagramm beinhalten welches die Umsatzzuwächse in Form eines Liniendiagramms anzeigt. Und vieleicht kann noch jemand eine Idee liefern, wie man die aktuellen 2015er Umsätze ebenfalls im gleichen Diagramm anzeigen lassen kann - in Form einer andersfarbigen zweiten Linie deckungsgleich über der des Vorjahres..?

Freue mich auf Vorschläge.
Titel: Re: In Bericht Umsätze nach Datum Summieren
Beitrag von: MzKlMu am Januar 26, 2015, 09:38:10
Hallo,
für einen Bericht ist das sehr einfach. Nimm das Feld mit dem Umsatz 2x auf und stelle für das 2. Feld die Eigenschaft "Laufende Summe" auf "Über alles". Fertig.
Titel: Re: In Bericht Umsätze nach Datum Summieren
Beitrag von: datekk am Januar 26, 2015, 10:12:28
Danke Dir. Das hat funktioniert. Jetzt stelle ich gerade fest, dass ich das Diagramm gar nicht über das Textfeld erzeugen kann, sondern die Abfrage muss bereits die Daten liefern. Wie ist hier das Aufsummieren möglich?
Titel: Re: In Bericht Umsätze nach Datum Summieren
Beitrag von: MzKlMu am Januar 26, 2015, 11:10:22
Hallo,
das ist etwas aufwendiger. Siehe hier:
FAQ3.11 Laufende Nummer/Summe in Abfragen (http://www.donkarl.com?FAQ3.11)
Titel: Re: In Bericht Umsätze nach Datum Summieren
Beitrag von: datekk am Januar 26, 2015, 14:37:23
Ok. Danke.. Das hilft etwas weiter.. also wird doch ein DomSumme Befehl notwendig...

Zur genauen Berechnung meines Vorhabens benötige ich eine Spalte in der Datumsangaben vom 01.01. bis 31.12. hochgezählt werden.

Also

SpalteDat
01.01.
02.01.
03.01.
04.01.
...
...
31.12.

Diese SpalteDat könnte ich dann als Kriterium für meinen DomSummen Befehl nehmen. Vereinfacht:
DSum("Angebotspreis","Tabelle","Vertragseingang <= [SpalteDat] AS Ergebnis

Also z.B. Nur wie lässt sich diese SpalteDat realisieren?
Titel: Re: In Bericht Umsätze nach Datum Summieren
Beitrag von: MzKlMu am Januar 26, 2015, 16:04:55
Hallo,
das geht nur mit einer Hilfstabelle die alle 365/366 Tage eines Jahres enthält.
Titel: Re: In Bericht Umsätze nach Datum Summieren
Beitrag von: datekk am Januar 26, 2015, 17:03:45
Kann bitte mal jemand drüber schauen... Bekomme seit Stunden die Formel nicht fertig.... Immer Fehlermeldung...


DSum("Angebotspreis","AbfrageDOMSUM","Vertragseingang< Format(DateSerial(2014,DatePart('m',[Vertragseingang]),datepart('d',[Vertragseingang]),'jjjj-tt-mm'") AS Erg2014


Fehlermeldung:
Fenster 1:
Fehlendes Element, ) oder ] in Abfrageausdruck 'Vertragseingang< Format(DateSerial(2014,DatePart('m',[Vertragseingang]),datepart('d',[Vertragseingang]),'yyyy-mm-dd')")

dann bei Klick auf (OK) kommt Fenster 2:

Fehlt

das wars... Ohne weiteren Hinweis... Einfach "Fehlt"...

Ich habe übrigens auch eine weitere Spalte in die Abfrage eingefügt, welche das Vertragseingangsdatum entsprechend meinem Wunsch bereits bildet:

Format(DateSerial(2014,[VMon],[VTag]),"yyyy-dd-mm") AS Test

Warum kann ich in der DomSum Funktion nicht einfach auf die Spalte Test verweisen? Er meckert dann immer das er das Objekt Test nicht finden kann... obwohl die Spalte richtig berechnet und erzeugt wird.







Titel: Re: In Bericht Umsätze nach Datum Summieren
Beitrag von: MaggieMay am Januar 26, 2015, 22:22:23
Hi,

es fehlen zwei Klammern, aber ich denke, die Format-Funktion ist hier überflüssig, denn DateSerial liefert ja bereits einen Datumswert.

Versuche es mal hiermit:DSum("Angebotspreis","AbfrageDOMSUM","Vertragseingang< DateSerial(2014,Month(Vertragseingang),Day(Vertragseingang))) AS Erg2014