5.2k Aufrufe
Gefragt in Datenbanken von saschawittke Mitglied (121 Punkte)
hi zusammen,

folgende ausgangssituation:

1 tabelle "kundenwunsch"
1 tabelle "wunsch_id"
1 tabelle "sprachen"
1 tabelle "wunsch_spanisch"
1 tabelle "wunsch_englisch"
1 tabelle "wunsch_deutsch"

"kundenwunsch" hat:
- ein feld "landessprache", dieses basiert auf der tabelle "sprachen"
- ein feld "wunsch_id"

in "wunsch_id" selektiere ich einen wunsch, der in entsprechender
sprache in den jeweiligen tabellen mit allen unterschiedlichen
sprachen enthalten ist (selbe id natürlich)

nun habe ich eine abfrage in der folgende tabellen enthalten sind:

1 tabelle "kundenwunsch"
1 tabelle "wunsch_spanisch"
1 tabelle "wunsch_englisch"
1 tabelle "wunsch_deutsch"

_spanisch, _englisch und _deutsch sind mit der _id an die
kundenwunsch-tabelle mit einer beziehung verbunden

nun meine frage:
wie erstelle ich die abfrage so, dass nur die ausgewählte sprache
angezeigt wird?
(heißt: ich selektiere spanisch und möchte dann auch NUR den
wert aus "wunsch_spanisch" und nicht _englisch oder _deutsch)

kann mir da jemand helfen?

lieben dank!
sascha

15 Antworten

0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Sascha,

Es bräuchte in der Abfrage ein Feld mit allen Landessprachen, wonach die Landssprache pro Datensatz klar ersichtlich ist.

Mit dem formularbasierten Filter dann auswählen.

Gruß

Paul1
0 Punkte
Beantwortet von saschawittke Mitglied (121 Punkte)
Hi

Kannst mir das näher erklären?

Ich komm nicht ganz mit ... sorry
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Sascha,

Es sollte nur eine Anregung sein, ich weiß auch nicht aus welchen Feldern der genannten Tabellen die Abfrage (oder wie viele Felder die Tabellen haben z.B."wunsch_spanisch") erstellt wurde und wie die Abfrage aussieht.

Die Tabellen sollten so in Beziehung stehen, dass das Feld mit der Landessprache pro Datensatz (Zeile)in der Abfrage konform geht.

Mehr kann ich ad hoc aus Ferne nicht dazu sagen.

Gruß

Paul1
0 Punkte
Beantwortet von saschawittke Mitglied (121 Punkte)
ok - ich denke ich komme der sache näher...

ich weiß auch nicht aus welchen Feldern der genannten Tabellen
die Abfrage (oder wie viele Felder die Tabellen haben
z.B."wunsch_spanisch") erstellt wurde und wie die Abfrage
aussieht.


die tabellen mit wunsch_spanisch, _englisch und _deutsch haben
nur 2 felder:
> wunsch-id (primärschlüssel)
> wunsch (in landessprache)

die abfrage sieht aktuell so aus:

aus der tabelle kundenwunsch neben hier unwichtigen feldern:
> landessprache
> wunsch-id

UND aus dieser tabelle ist die wunsch-id mit den drei ebenfalls
vorhandenen tabellen wunsch_spanisch, _englisch und _deutsch
in beziehung, somit sind also noch
> wunsch_spanisch.wunsch
> wunsch_englisch.wunsch
> wunsch_deutsch.wunsch

ebenfalls enthalten.

...

die abfrage funktioniert bis hierher soweit auch ganz gut, denn das
ergebnis ist nun, dass ich einen bericht erstellen kann in dem alle
hier (im post) unwichtigen felder vorhanden sind und auch der
wunsch - jedoch in allen drei sprachen!
ich möchte, dass nur die sprache erscheint, welche der gewählten
landessprache entspricht!

...hoffe du kannst damit was anfangen.

schonmal HERZLICHEN DANK im voraus!
sascha
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo,

Um hier die gewünschte Filterung nach Sprachen durchführen zu können, müsste Access eine Spracherkennung zur Verfügung stehen. Es fehlen in den 3 Tabellen mit den Sprachen ein Feld was eindeutig die Sprache pro Datensatz bezeichnet, das ist leider nicht der Fall, ob das Feld jetzt in Beziehung zu einer anderen Tabelle steht oder nicht ist belanglos.

Eine Filterung nach Sprachen ist daher unmöglich.

Warum Du überhaupt für jede Sprache eine Tabelle angelegt hast, verstehe ich nicht, es hätte eine durchaus gereicht.

In dieser Datenbank ist derart der Wurm drinnen, dass ich mir nicht sicher bin, ob da noch was zu retten ist.

Schau es mir übers Wochendende an, kann aber nichts versprechen, da eine funktionierende Datenbank von Grund auf neu überlegt werden müsste.

Gruß

Paul1
0 Punkte
Beantwortet von saschawittke Mitglied (121 Punkte)
Hallo Paul,

ok - hatte ich schon befürchtet...

Ist jedoch kein Problem, da die Datenbank grad erst "gebaut" wird -
muss also nichts großartig konvertieren oder anpassen :-)

Ich erkläre kurz Sinn und Zweck der Sache:

Ich arbeite im Reisebüro.
Wir senden für unsere Kunden Faxe an das gebuchte Hotel mit
Zimmerwünschen.
Bisher machen wir das händisch in Word - ätz!
Das möchte ich automatisieren.

Ich möchte also:
ein formular in welches ich die kunden-relevanten daten eintragen
(name, checkin, checkout, hotelname, faxnummer UND die sprache
des bereisten landes) - diese daten muss ich manuell eingeben ...
jetzt möchte ich eine auswahl haben an vorgefertigten wünschen ...
ich wähle also z.b. bei dir, wenn du bei mir buchen würdest, "obere
etage" aus ... da du nach spanien reist, möchte ich nun, dass der
bericht (welchen ich per fax versende) auf spanisch ist (bzw. der
wunsch).

...dass der ganze bericht auf spanisch ist (ich mach hierzu einfach
verschiedene berichte) - möchte ich erst im nächsten schritt in
angriff nehmen - dass access also den richtigen bericht nimmt, je
nach angegebener sprache.

viele grüße
sascha
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Sascha,

Komme beim Lesen Deiner letzten Nachricht bereits ins Schwitzen, wie gesagt ich schau es mir an, kann allerdings nichts versprechen, nicht zuletzt deswegen da es sehr viel Arbeit ist.

Mir fällt ein Stein vom Herzen, dass die Datenbank erst gebaut wird, zumal die Abfrage mit den Sprachtabellen (die nebeneinander sind) selbst wenn jeweils ein Feld mit der Sprachzuordnung nachträglich eingefügt worden wäre, würde die Filterung nach einer Sprache auch die anderen Sprachen mitschleppen.

Dem hätte man nur entgegensteuern können, wenn sprachbezogen für jede Sprache ein Abfrage erstellt wurde und die 3 Abfragen mittels Union-Abfrage zusammengezogen worden wären, dann wäre eine Filterung möglich gewesen, aber das ist eine andere Geschichte.

Gruß

Paul1
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Sascha,

Schau Dir mal das nachfolgende Konzept an, ich könnte damit arbeiten, verfeinern, anpassen und komplettieren solltest Du es selbst.
Bei geöffneter Tabelle "WunschDetail" die Parameter im Bericht auswählen, der Bericht ist dann angepasst.
Änderungen auch nachträglich wären in Tabelle "WunschDetail" vorzunehmen.

http://p.aon.at/u/772405/?key=5N252YQZXSP4&share=33759

Hoffe es entspricht in etwa Deinen Vorstellungen

Gruß

Paul1

P.S.

Bei Fragen schreibe es
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Sascha,

Ergänzung:

Besser Du öffnest die Tabelle "Kundenname" parallel zum Bericht und klickst das + neben den Kundennamen an (da ist dann alles ersichtlich) als Unterstützung, außer Du hast die Kunden mit ihren Wünschen alle im Kopf, dann genügt, wenn nur der Bericht geöffnet wird und Du gibst die Parameter aus dem Stegreif ein.

Gruß

Paul1

[sub]Excel > Access > MS-Office 2003
MS Windows XP Professional SP3
ECDL-Syllabus Version 4.0[/sub]
0 Punkte
Beantwortet von saschawittke Mitglied (121 Punkte)
hi paul,

ich schau mir das in der laufenden woche an ... bin grad ausm urlaub
zurück und muss erstmal den schreibtisch leer arbeiten :-)

melde mich dann bei dir.

viele grüße
und besten dank!
sascha
...