So, hier noch die Abfragen:

(Erklärung und Hinweise weiter unten)

Abfrage Daten Personaldatenblatt (um diese Abfrage geht es):

SELECT "Personaldaten JF-Mitglieder"."JFM_PNr", "Personaldaten JF-
Mitglieder"."JFM_Name", "Personaldaten JF-Mitglieder"."JFM_Vorname", 
"Personaldaten JF-Mitglieder"."JFM_Strasse", "Personaldaten JF-
Mitglieder"."JFM_PLZ", "Personaldaten JF-Mitglieder"."JFM_Ort", "Personaldaten 
JF-Mitglieder"."JFM_GebDatum", "Personaldaten JF-
Mitglieder"."JFM_Tel_Festnetz", "Personaldaten JF-Mitglieder"."JFM_Tel_Handy", 
"Personaldaten JF-Mitglieder"."JFM_E_Mail", "Personaldaten JF-
Mitglieder"."JFM_ICQ", "Personaldaten JF-Mitglieder"."JFM_Skype", 
"Personaldaten JF-Mitglieder"."JFM_MSN", "Personaldaten JF-
Mitglieder"."JFM_AOL", "Personaldaten JF-Mitglieder"."JFM_AusweisNr", 
"Personaldaten JF-Mitglieder"."JFM_Eintrittsdatum", "Personaldaten JF-
Mitglieder"."JFM_Austrittsdatum", "Personaldaten JF-
Mitglieder"."JFM_Austrittsgrund", "Personaldaten JF-
Mitglieder"."JFM_Krankheiten", "Personaldaten JF-
Mitglieder"."JFM_Besonderheiten", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Vater_Name", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Vater_Vorname", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Vater_Strasse", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Vater_PLZ", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Vater_Ort", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Vater_Tel_Festnetz", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Vater_Tel_Handy", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Vater_E_Mail", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Mutter_Name", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Mutter_Vorname", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Mutter_Strasse", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Mutter_PLZ", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Mutter_Ort", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Mutter_Tel_Festnetz", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Mutter_Tel_Handy", "Personaldaten JF-
Mitglieder"."JFM_ErzBer_Mutter_E_Mail", "JF-Jacken in 
Gebrauch"."Kleidungsstueck_Nr" AS "JF-Jacke", "JF-Parkas in 
Gebrauch"."Kleidungsstueck_Nr" AS "JF-Parka", "JF-Hosen in 
Gebrauch"."Kleidungsstueck_Nr" AS "JF-Hose", "Stiefel in 
Gebrauch"."Kleidungsstueck_Nr" AS "Stiefel", "Handschuhe in 
Gebrauch"."Kleidungsstueck_Nr" AS "Handschuhe", "Helme in 
Gebrauch"."Kleidungsstueck_Nr" AS "Helm", "Hemden in 
Gebrauch"."Kleidungsstueck_Nr" AS "Hemd", "Krawatten in 
Gebrauch"."Kleidungsstueck_Nr" AS "T-Shirt", "BaseCaps in 
Gebrauch"."Kleidungsstueck_Nr" AS "BaseCap", 
"Leistungsabzeichen"."Jugendflamme_1_A", 
"Leistungsabzeichen"."Jugendflamme_1_B", 
"Leistungsabzeichen"."Jugendflamme_2", "Leistungsabzeichen"."Jugendflamme_3", 
"Leistungsabzeichen"."Leistungsspange" FROM "JF-Jacken in Gebrauch" AS "JF-
Jacken in Gebrauch", "Personaldaten JF-Mitglieder" AS "Personaldaten JF-
Mitglieder", "JF-Parkas in Gebrauch" AS "JF-Parkas in Gebrauch", "JF-Hosen in 
Gebrauch" AS "JF-Hosen in Gebrauch", "Stiefel in Gebrauch" AS "Stiefel in 
Gebrauch", "Helme in Gebrauch" AS "Helme in Gebrauch", "Handschuhe in 
Gebrauch" AS "Handschuhe in Gebrauch", "Krawatten in Gebrauch" AS "Krawatten 
in Gebrauch", "Hemden in Gebrauch" AS "Hemden in Gebrauch", "BaseCaps in 
Gebrauch" AS "BaseCaps in Gebrauch", "T-Shirts in Gebrauch" AS "T-Shirts in 
Gebrauch", "Leistungsabzeichen" AS "Leistungsabzeichen", "Austrittsgruende" AS 
"Austrittsgruende" WHERE "JF-Jacken in Gebrauch"."JFM_PNr" = "Personaldaten 
JF-Mitglieder"."JFM_PNr" AND "JF-Parkas in Gebrauch"."JFM_PNr" = 
"Personaldaten JF-Mitglieder"."JFM_PNr" AND "JF-Hosen in Gebrauch"."JFM_PNr" = 
"Personaldaten JF-Mitglieder"."JFM_PNr" AND "Stiefel in Gebrauch"."JFM_PNr" = 
"Personaldaten JF-Mitglieder"."JFM_PNr" AND "Helme in Gebrauch"."JFM_PNr" = 
"Personaldaten JF-Mitglieder"."JFM_PNr" AND "Handschuhe in Gebrauch"."JFM_PNr" 
= "Personaldaten JF-Mitglieder"."JFM_PNr" AND "Krawatten in 
Gebrauch"."JFM_PNr" = "Personaldaten JF-Mitglieder"."JFM_PNr" AND "Hemden in 
Gebrauch"."JFM_PNr" = "Personaldaten JF-Mitglieder"."JFM_PNr" AND "BaseCaps in 
Gebrauch"."JFM_PNr" = "Personaldaten JF-Mitglieder"."JFM_PNr" AND "T-Shirts in 
Gebrauch"."JFM_PNr" = "Personaldaten JF-Mitglieder"."JFM_PNr" AND 
"Personaldaten JF-Mitglieder"."JFM_AusweisNr" = 
"Leistungsabzeichen"."JFM_AusweisNr" AND "Personaldaten JF-
Mitglieder"."JFM_Austrittsgrund" = "Austrittsgruende"."Austrittsgrund" GROUP 
BY "Personaldaten JF-Mitglieder"."JFM_PNr" HAVING ( ( "Personaldaten JF-
Mitglieder"."JFM_PNr" = ? ) ) ORDER BY "Personaldaten JF-Mitglieder"."JFM_PNr" 
ASC


Abfrage JF-Jacken (beispielhaft für alle Kleiderabfragen):

SELECT "JFM_PNr", "Kleidungsstueck_Nr", "Kleidungsart", "Kleidungsgroesse" 
FROM "Kleidung" AS "Kleidung" WHERE "JFM_PNr" = ? AND "Kleidungsstueck_Nr" 
BETWEEN 0 AND 99 ORDER BY "JFM_PNr" ASC, "Kleidungsstueck_Nr" ASC


Funktionsweise:

Die Kleiderabfragen holen sich jeweils die Informationen aus derselben 
Tabelle. Dort ist ein Kleidungsstück mit einer Kleidernummer (= Index) 
gespeichert.
Dem Kleidungsstück (respektive der Kleidernummer) ist eine Personalnummer 
zugeordnet. Diese Personalnummer ist wiederum der Index der 
Personaldatentabelle.

Da die Kleider kategorisiert nummeriert werden (Jacken 1-99, Parkas 101-199 
usw.) und alle Kleider in einer Tabelle stehen, brauche ich für jede 
Kleiderkategorie eine Abfrage, um einen bestimmten Bereich einzugrenzen (das 
sind die Abfragen, die einzeln jeweils funktionieren [getestet]).

In der Personaldatenabfrage sollen aber alle Kleiderkategorien für eine 
Personalnummer gleichzeitig angezeigt werden (die Abfragen also parallel 
ausgeführt werden).

Beispiel:

In der Kleidertabelle sind die Kleider Nrn. 70, 142, 235, 365 und 794 der 
Personalnummer 40 zugeordnet.
Wenn ich den Personaldatenabruf starte, sollen diese Kleidernummern ausgegben 
werden, wenn ich den Abruf für die Personalnummer 40 aufrufe.

Ich hoffe es ist so verständlich! :-/

Grüße

Marco


Am Dienstag, 29. September 2009 21:49:51 schrieb Robert Großkopf:
> Hallo Marco,
>
> > Habe folgendes Problem mit einer Abfrage:
> >
> > In meiner Datenbank gibt es die Tabellen "Personaldaten" und
> > "Kleiderdaten" Zu jedem Kleidungsstück ist eine Personalnummer
> > hinterlegt, welche in der Personaldatentabelle den Index bildet.
> > Verschiedene Abfragen suchen nun in der Kleiderdatentabelle nach einer
> > Personalnummer, um die Kleidungsstücknummer herauszufinden.
> >
> > Beispiel: Ich gebe als Parameter die Personalnummer 40 an. Dann sucht
> > eine Abfrage nach der Hemdnummer, eine weitere nach der Hosennummer usw.
>
> Du hast hier also pro Abfrage einen Parameter einzugeben.
>
> > Das funktioniert einzeln auch wunderbar.
> >
> > Für einen Bericht benötige ich aber eine Abfrage mit sämtlichen Daten.
> > Also habe ich eine weitere Abfrage erstellt, in die neben den Daten der
> > Personaldatentabelle auch die Ergebnisse der Kleider-Abfragen einfließen
> > sollen. Da alles anhand der Personalnummer gefunden werden kann, und die
> > Beziehungen eingetragen sind, dürfte das doch kein Problem sein (dachte
> > ich zumindest).
>
> Jetzt müsstest Du folglich mehrere Parameter angeben, oder?
>
> > Beim Aufruf der Abfrage erscheint jedoch die Fehlermeldung "Cannot be in
> > ORDER BY clause STATEMENT [SELECT...." und alle Datenbankfelder werden
> > aufgezählt.
>
> ORDER BY - das bedeutet, dass Du irgendeinen Fehler in der Sortierung
> machst.
>
> > Anbei ein Screenshot als Anlage (wenn das geht).
>
> Ein Screenshot bringt hierbei wohl wenig, zumal er nicht in der Liste
> erscheint (Mailingliste ohne Anhänge). Vielleicht könntest Du einmal die
> zusammengewürfelte Abfrage posten oder - noch besser und falls möglich -
> die Datenbank irgendwo ins Netz stellen, damit der Zusammenhang klar wird.
> Natürlich letzteres nur, wenn keine persönlichen Daten drin sind.
>
> Gruß
>
> Robert
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org
> For additional commands, e-mail: users-h...@de.openoffice.org


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org
For additional commands, e-mail: users-h...@de.openoffice.org

Antwort per Email an