Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: lengaumi am November 20, 2013, 23:18:09

Titel: Summe in Endlosformular
Beitrag von: lengaumi am November 20, 2013, 23:18:09
Hallo Forum,

Ich habe ein Problem in einem Formular zu lösen. Vielleicht könnt ihr mir helfen.

Es existieren 3 Tabellen, die in Beziehung stehen. Erste=Kunden (20), 2=Rechnungen(350 von allen Kunden), 3=Artikel (2000 Artikel alle Kunden u. alle Rechnungen)

Die Daten in die Artikeltabelle werden über Kombifelder eingetragen. Es gibt insgesamt 50 Artikel.
Pro Rechnung werden unterschiedliche Artikel erfasst.

Diese drei Tabellen stehen in passender 1:n Beziehung und alle Daten werden in einer Abfrage auch angezeigt.

Nun benötige ich ein Endlosformular, indem alle Rechnungen (350) aufgelistet sind.
Für jeden Datensatz (= eine Rechnung) soll in diesem Formular die Summe(Preis) der Artikel die zu dieser Rechnung gehören, berechnet und in einem Feld angezeigt werden.

Das Auswahlkriterium für die zu addierenden Artikel muss wohl über die Rechnung_ID möglich sein oder?
Wie es genau funktioniert, ist mir nicht klar.

Ich verwende AC 2007

Wer hat eine Idee zu diesem Problem?

Danke für eure Hilfe

Michael

Titel: Re: Summe in Endlosformular
Beitrag von: DF6GL am November 21, 2013, 08:18:24
Hallo,

1) die Tabellen sind nicht normalisiert und erzeugen dadurch mancherlei Hindernisse.
2) Wenn es wirklich 50 separate Felder für die jeweilige ArtikelID in einem Rechnungs-Datensatz gibt und die Artikelpreise in der Artikel-Tabelle stehen, muss für jedes ArtikelID-Feld ein Auslesen des dazugehörenden Preises aus der Artikel-Tabelle erfolgen und es müssen diese Preise summiert werden.

Das kann durchgeführt werden, indem man

-- im Steuerelementinhalt eines Textfeldes die Summierung über die 50 mal ausgelesenen Preise durchführt
oder
-- das Auslesen und die  Summierung in eine Public-Funktion auslagert und diese Funktion im Steuerelementinhalt des Textfeldes aufruft.  Alternativ könnte dieser Aufruf auch schon in der dem Form zugewiesenen Abfrage stehen, was aber zur Folge hat, dass keine Datenänderungen mehr möglich wären.


Insgesamt ist aber dringend anzuraten, die Tabellenstruktur entspr. den Normalisierungsregeln zu ändern/anzupassen, um solche Unzulänglichkeiten zu vermeiden.