schwierige Summenbildung im Bericht
Hallo Leute,
ich habe eine Tabelle "Aufträge". In der gibt es u.a. die folgenden Feler:
- ksort = (Kundenname)
- prnum =(Produktnummer=
- Menge
- Jahreszahl
Ich habe also in dieser Tabelle alle Aufträge von 2005 bis 2007
Nun will ich in einem Bericht ausgeben:
Ksort
.....prnum.....Menge05.....Menge06.....Menge07
Zu einem Ksort kann es mehrere Prnum geben.
Wie und wo muss ich ansetzen, um die Umsätze pro Kunde und innerhalb des Kunden pro Produktnummer auf die einzelnen Jahre (summiert) zu verteilen?
Beste Grüße zu Rest-Ostern
Axel
Antwort schreiben
Antwort 1 von Saarbauer vom 09.04.2019, 11:20 Options
Hallo,
mit welchem Programm arbeitest du den?
Es gibt leider nicht nur ein Datenbankprogramm
Gruß
Helmut
Antwort 2 von Teddy7 vom 09.04.2019, 14:18 Options
Einfachste, aber nicht dynamische Lösung:
Mach je eine Abfrage pro Jahr, in der du die Daten des Jahres selektierst und je ProduktNr summierst.
Diese (3) Jahresabfragen verknüpfst Du dann über die ProduktNr mit einer Abfrage über die anderen Daten der Tabelle -also KSort und ProjektNr, gruppiert um jede Kombination nur einmal zu bekommen(diese Abfrage muß führend sein - also in der Verknüpfung die Verknüpfungsart einstellen auf "alle Sätze aus der gruppierten Abfrage und nur die passenden aus den Jahresabfragen).
/////////////////
Oder man verwendet die Jahresabfragen als Datenquelle für Unterberichte.
////////////////
Dynamisch macht man das so, daß man eine eigene Function erstellt (definiert als public im Modul1), der man Kunden und ProjektNr übergibt und z.B. ein Textstring zurückbekommt, in dem alle Jahre mit Umsätzen bereits aufbereitet drin stehen.
Gruß
Teddy
Antwort 3 von Axel18 vom 09.04.2019, 14:33 Options
Sorry Helmut,
es geht um Access XP. Teddy hat das richtig gedeutet.
Das was Du vorschlägst, Teddy, wird relativ lange dauern in dem Abarbeiten.
Kann man das nicht per SQL oder im Bericht mit DomSumme machen?
Ich kann kein VBA und werde das vermutlich auch nicht lernen, daher suche ich nach anderen Möglichkeiten.
Beste Grüße
Axel
Antwort 4 von Teddy7 vom 10.04.2019, 08:59 Options
Hallo Axel !
Ohne VBA kann man keine professionelle Access-Datenbank machen.
dlookup ist übrigens auch VBA-Programmierung.
Und - ja, natürlich kannst Du auch im Bericht in einem passenden Ereignis (z.B. beim Formatieren des Gruppenfußes) mit dsum die Summe der Jahre ermitteln und einem ungebundenen Textfeld zuweisen.
dsum dauert allerdings in der Ausführung etwas länger.
Gruß
Teddy