Hallo,
habe folgende Tabelle mit Spalten
Firma; HausID; Provision; Datum; Tagesumsatz; LZB_ID_1; LZB_Umsatz_1; LZB_ID_2; LZB_Umsatz_2; LZB_ID_3; LZB_Umsatz_3
Ziel soll es sein durch eine Abfrage folgende Darstellung für weitere Auswertungen zu bekommen.
Querry mit Spalten: Firma; HausID; Provision; Datum; Tagesumsatz; LZB_ID_Zus; LZB_Umsatz_Zus
Das muss man doch durch eine Abfrage hinbekommen können.
Bisher habe ich hierzu ein Recordset mit einer do while Schleife verwendet. Ist aber meiner Meinung nach zu komplex.
Außerdem möchte ich Dateninkonsitenzen vermeiden, da ich bei dieser Lösung, die Daten immer in eine neue Tabelle schreibe. Das müßte ich ja bei einer Abfrage dann nicht mehr, sondern würde immer auf die Daten meiner ursprungstabelle zugreifen.
Gruß
Tom
Hallo,
ich rate, erst mal die Tabelle(n) in Ordnung zu bringen (Primärschlüssel, Normalisierung!, Beziehungen), bevor Du Dich mit Tabellenerstellung(en), Recordsets oder sonstigen "Umwegen" im Urwald verlierst.. ;)
Da gebe ich meinem Vorredner esrt mal Recht.
Aber so ganz verstehe ich auch dein Ansinnen nicht.
Was soll LZB_ID_Zus sein ??? Eine Sume von ID-Werten ?
LZB_Umsatz_x in einer Abfrage zu addieren, um deren Summe zu ermitteln ist weniger das Problem.
Zitat von: TomTom2903 am Februar 06, 2013, 08:32:28
Hallo,
habe folgende Tabelle mit Spalten
Firma; HausID; Provision; Datum; Tagesumsatz; LZB_ID_1; LZB_Umsatz_1; LZB_ID_2; LZB_Umsatz_2; LZB_ID_3; LZB_Umsatz_3
Ziel soll es sein durch eine Abfrage folgende Darstellung für weitere Auswertungen zu bekommen.
Querry mit Spalten: Firma; HausID; Provision; Datum; Tagesumsatz; LZB_ID_Zus; LZB_Umsatz_Zus
Hi,
also die tbl_Hausumsatz hat natürlich eine ID die ich jetzt hier nicht aufgeführt hatte :-)
ID; Firma; HausID; Provision; Datum; Tagesumsatz; LZB_ID_1; LZB_Umsatz_1; LZB_ID_2; LZB_Umsatz_2; LZB_ID_3; LZB_Umsatz_3
In der Spalte LZB_ID_i (i = 1- 3) steht die ID der Langzeitberaterin pro Haus und Tag und in der LZB_Umsatz_i (i = 1 -3) der Anteil am Umsatz in %.
Pro Tag können maximal 3 LZBs in einem Haus anwesend sein, daher auch drei Spalten.
Die Eingabe erfolgt über ein Endlosformular - direkt in die Tabelle.
Mein Problem ist jetzt die Auswertung der Langzeitberater. Das würde ich gerne über eine Querry machen die mir zuerst folgende Spalten liefert:
Firma; HausID; Provision; Datum; Tagesumsatz; LZB_ID_Zus; LZB_Umsatz_Zus
102 1 9 01.01.2013 1000 € 1 50
102 1 9 01.01.2013 1000 € 2 50
102 1 9 02.01.2013 1000 € 1 50
102 1 9 02.01.2013 1000 € 2 50
102 5 9 01.01.2013 1000 € 4 33
102 5 9 01.01.2013 1000 € 6 33
102 5 9 01.01.2013 1000 € 7 33
102 5 9 02.01.2013 1000 € 7 50
102 5 9 02.01.2013 1000 € 8 50
Im Anschluß könnte ich nach Monat/Jahr, Haus und Beraterin weiter abgrenzen.
Gruß
Tom
Hallo,
die (rot gekennzeichneten) Felder
LZB_ID_1; LZB_Umsatz_1; LZB_ID_2; LZB_Umsatz_2; LZB_ID_3; LZB_Umsatz_3
gehören in eine extra Tabelle mit einem Fremdschlüsselfeld, der eine Beziehung zu "tbl_Hausumsatz" ermöglicht.
Hallo Franz,
Zitat von: DF6GL am Februar 06, 2013, 09:42:54
Hallo,
die (rot gekennzeichneten) Felder
LZB_ID_1; LZB_Umsatz_1; LZB_ID_2; LZB_Umsatz_2; LZB_ID_3; LZB_Umsatz_3
gehören in eine extra Tabelle mit einem Fremdschlüsselfeld, der eine Beziehung zu "tbl_Hausumsatz" ermöglicht.
Ja aber wie kann ich dann wieder meine Tabelle aufbaurn. tbl_HausLZB_Umsatz
Firma; HausID; Provision; Datum; Tagesumsatz; LZB_ID_1; LZB_Umsatz_1; LZB_ID_2; LZB_Umsatz_2; LZB_ID_3; LZB_Umsatz_3
Die benötige ich für ein Endlosformular.
Ich versteh glaub grad nicht, wie du die Struktur meinst. Mit dem Fremdschlüssel ist klar. Also wenn ich die Tabellen mit einem Fremdschlüssel aufbaue. Allerdings weiß ich dann nicht, wie ich die Zuordnung dann später wieder hinbekomme. Also in der Form tbl_HausLZB_Umsatz.
Ich hätte ja dann bei dir 2 tabellen.
1. tbl_HausUmsatz
ID; HausID; Datum; Tagesumsatz
2. tbl_LZBUmsatz
ID; Datum; LZB_ID; Umsatzanteil
Wenn ich die jetzt in meine "Normalform" bringen möchte, würde das doch nur über ein Pivot funktionieren, dass für ein Endlosformular ja nicht funktioniert.
Firma; HausID; Provision; Datum; Tagesumsatz; LZB_ID_1; LZB_Umsatz_1; LZB_ID_2; LZB_Umsatz_2; LZB_ID_3; LZB_Umsatz_3
Gruß
Tom
Hallo,
es fehlt der Fremdschlüssel, über die eine Beziehung hergestellt werden kann. Von "Deiner Normalform" solltest Du zunächst Abstand nehmen, die könnte nur zur "schönen" Ansicht dienen.
Ob das Feld "Datum" in beiden Tabellen vorhanden sein muss, bezweifle ich erst mal.
1. tbl_HausUmsatz
HUID; HausID; Datum; Tagesumsatz
2. tbl_LZBUmsatz
LZBUmID; LZBUm_HUID; Datum; LZB_ID; Umsatzanteil
Hallo Franz,
habe mal im Anhang eine Testdatenbank erstellt.
Das Problem was ich habe ist jetzt noch das Eingabeformular...
Hab das im Header rein geschrieben.
Problem 1 ist die Querry und 2 dann die entsprechende Eingabe für den Nutzer.
Danke für deine Hilfe!
Tom
[Anhang gelöscht durch Administrator]
Hallo,
naja, die Test-DB hat nun nicht sehr viel gemeinsam mit meinem Vorschlag....
"Und das zu einem Datum, die Datensätze in der gleichen Reihe stehen. " solltest Du , wie gesagt, davon Abstand nehmen, weil in Tabellen und Formularen bei durchgeführter Normalisierung nicht möglich (und auch nicht sinnvoll).
Hallo Franz,
danke für deine Hilfe. Habe es jetzt durch eine Union - Abfrage gelöst.
Gruß
Tom