Abfrage durchsuchen und Daten in Bericht eintragen

Hallo,

ich habe mehrere DS (ca. 100) folgendermaßen in einer Tabelle gespeichert:

Name Anzahl Datum Prospekt1 Prospekt2 Prospekt3 Prospekt4 …

Meier 3 14.10. Aldi Norma
Müller 8 15.10. Aldi Lidl
Kaiser 10 20.01. Aldi Norma Edeka
Schmitt 5 11.11. Norma Edeka

In meinem Bericht sollen nun der Reihe nach die Prospekte als Überschrift in Textfelder gesetzt werden, jedes einmal z.B.:

Aldi Norma Lidl Edeka

Wie kann ich die Prospekte aus der DB sinnvoll auslesen und der Reihe nach im Bericht anordnen. Mir würde es reichen, wenn ich die o.g. 4 Prospekte nach einem Suchlauf in vier Variablen stehen hätte?!

Danke im Voraus
Thomas

Hallo,

ich habe mehrere DS (ca. 100) folgendermaßen in einer Tabelle
gespeichert:

Name Anzahl Datum Prospekt1 Prospekt2 Prospekt3
Prospekt4 …

Meier 3 14.10. Aldi Norma
Müller 8 15.10. Aldi Lidl
Kaiser 10 20.01. Aldi Norma Edeka
Schmitt 5 11.11. Norma Edeka

In meinem Bericht sollen nun der Reihe nach die Prospekte als
Überschrift in Textfelder gesetzt werden, jedes einmal z.B.:

Aldi Norma Lidl Edeka

Wie kann ich die Prospekte aus der DB sinnvoll auslesen und
der Reihe nach im Bericht anordnen. Mir würde es reichen, wenn
ich die o.g. 4 Prospekte nach einem Suchlauf in vier Variablen
stehen hätte?!

???

Zu kompliziert geschrieben?
Ich weiß z.B. nicht an welcher Stelle welches Prospekt (1-10) in der Tabelle hinterlegt ist.
Die Suchfunktion soll alle unterschiedlichen Prospekte in den Datensätzen finden, mit Namen auslesen und gruppieren…

Also alle Prospekt01…Prospekt10 Datenfelder durchlaufen und wenn was
drin steht auslesen und gruppieren…

Danke im Voraus

Zu kompliziert geschrieben?

nein, nur völlig unverständlich.

Ich weiß z.B. nicht an welcher Stelle welches Prospekt (1-10)
in der Tabelle hinterlegt ist.

Die Tabelle sagt es Dir doch…

Die Suchfunktion soll alle unterschiedlichen Prospekte in den
Datensätzen finden, mit Namen auslesen und gruppieren…

bis auf „gruppieren“ reicht eine ganz normale Abfrage.

Was verstehst Du überhaupt bei diesem Tabellenaufbau unter „gruppieren“?

Also alle Prospekt01…Prospekt10 Datenfelder durchlaufen und
wenn was
drin steht auslesen und gruppieren…

>

Sorry, ich habe Dir, glaube ich, schon mal gesagt (wenn nicht, dann halt jetzt) , daß ein solcher Tabellenaufbau unbrauchbar , um nicht zu sagen Murks ist für die ernsthafte Verwendung in einer relationalen Datenbank.

Klar könnte man alle Werte (Prospektnamen, das sind eher Firmennamen, die einen Prospekt erhalten oder beigetragen haben) aus allen Datensätzen in ein eindimensionales Array schreiben und die „mehrfachen“ ignorieren, aber das nützt nirgendwo etwas.

Ich rate dringend, die „Prospekte“-Felder in eine separate Tabelle (in EIN Feld) auszulagern und beide Tabellen über Schlüsselfelder in Beziehung zu setzen. Nur(!!) dann wirst Du weiterkommen.

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!

Hallo Franz,

–> Ich rate dringend, die „Prospekte“-Felder in eine separate Tabelle (in EIN Feld) auszulagern und beide Tabellen über Schlüsselfelder in Beziehung zu setzen. Nur(!!) dann wirst Du weiterkommen.

Hallo Thomas,

ich möchte mich Franz anschließen und dich bitten, wenn du schon eine Abfrage hast, den SQL-Code hier zu posten. Das sagt uns mehr, als wenn du versuchst das gewünschte Ergebnis in Tabellenform hier simuliert zu posten.

Die verwendeten Tabellennamen und auch die Feldbezeichnungen mit Feldtyp sind ebenfalls immer wichtig!

Wenn ich dein Problem richtig verstanden habe, geht es dir um das Zusammenfassen deiner Einträge in den Feldern Prospekt1 - Prospekt10.

Mein Vorschlag:
erstelle eine neue Spalte in deiner Abfrage:
Feld: ALLE: Trim([Prospekt1]) & Trim([Prospekt2]) … & Trim([ProspektN])

Das neue Feld [ALLE] beinhaltet dann alle Einträge aus allen Prospektfeldern als einen String.

Diese Feld kannst du dann z.B. als Basis für einen Filter nutzen.

um nach Prospekt zu gruppieren, ist es notwendig, deine Prospekt-Tabelle als Basis zu nehmen. Deine Mitarbeiter-Tabelle ist dann über die Prospekt-ID in 1:N Beziehung zu setzen.
(es wäre hilfreicher, du würdest deine Tabellen- und Feldbezeichnungen hier veröffentlichen)

Wie du das ohne SQL-Kenntnisse in einer Abfrage erstellst ist dir bekannt?

Wenn dein Bericht nun auf dieser Abfrage beruht, kannst du die Prospektbezeichnung gruppieren. Im Gruppenkopf fügst du das Feld der Prospekt-Bezeichnung ein.

Im Detailbereich wertest du die Mitarbeiter aus.

Im Gruppenfuß hast du dann noch die Möglichkeit, Summierungen durchzuführen.

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)