Hallo,
nach langer Pause bastel ich mal wieder an meiner Datenbank herum. Ich habe mit Access eine kleine Warenwirtschaft erstellt, hänge jetzt aber irgendwie fest...
Ich baue gerade ein Logistikmodul. Das wird bisher alles mit Word gemacht und dauert zu lange.
Für dieses Modul habe ich 2 zusätzliche Tabellen erstellt:
tblFahrauftraege (hier werden die Fauraufträge abgespeichert)
tblLogistikkatalog (hier wird erfasst welcher Logistiker was wohin zu welchem Preis fährt)
Dann habe ich ein Formular frmFahrauftraege. Hier werden die Fahraufträge erfasst. Es gibt folgende Felder:
cboLogistiker   
cboStromrichtung (Wareneingang oder Warenausgang)
cboGeschaeftsart (Unterscheidung zwischen EAR, B2B oder B2C)
cboUebergabestelle (nur auszuwählen, wenn bei Geschäftsart EAR gewählt wurde, sonst inaktiv)
cboAbholadresse (Wo soll geladen werden)
cboAnlieferadresse (Wohin soll gefahren werden)
Die Werte welche in den Feldern angezeigt werden hängt von den Angaben in tblLogistikkatalog ab. 
Beispiel: cboStromrichtung
In der Tabelle tblLogistikkatalog ist genau ein Logistiker eingetragen und der soll nur Ware zu uns bringen, also Eingang.
Dann soll im frmFahrauftrage auch für diesen Logistiker, welchen ich vorher ausgewählt habe auch nur Eingang als Option stehen. Das ganze funktioniert bis zum Anlieferadresse perfekt. Im Feld cboAnlieferadresse zeigt er mir aber überhaupt keine Auswahlmöglichkeiten an.
Das Feld cboAnlieferadresse entspricht fast 1:1 dem Feld cboAbholadresse
Die Abfrage hierzu sieht folgendermaßen aus:
Feld:         ID                 Kunde          Logistiker                 Stromrichtung           Geschaeftsarts         Abholadresse
Tabelle:    tblKunde       tblKunde      tblLogistikkatalog    tblLogistikkatalog      tblLogistikkatalog     tblLogistikkatalog
Kriterien:                                           [Formulare]![frmFahrauftraege]![cboLogistiker] ........   usw. 
Die Abfragen für die Felder Abholadresse und Anlieferadresse stehen jeweils in einer 1:n Beziehung zur tblKunden. Ich weiß nicht, ob das das Problem ist. Access will mir für beide zugleich keine referentielle Integrität einräumen. Daher habe ich diese deaktiveren müssen. Warum weiß ich auch nicht. Zudem legt mir Access im Fenster Beziehungen eine gefakete Tabelle "tblKunden_1" an. Die gibt es natürlich nicht. Irgendwie ist das alles sehr seltsam.
Hat jemand eine zündende Idee?
Emi
			
			
			
				Hallo,
ZitatZudem legt mir Access im Fenster Beziehungen eine gefakete Tabelle "tblKunden_1" an
Das ist kein Fake, sondern richtig.
Die Tabelle tblKunden musst Du 2x in das Beziehungsfenster aufnehmen und jeweils die 1:n Beziehung einrichten. Die 2. Tabelle wird dabei automatisch mit _1 ergänzt. Du darfst in diesem Fall keine 2 Beziehungen von einer Tabelle verwenden.
Im weiteren Verlauf musst Du dann auch darauf achten, welche der beiden Tabellen Du verwendest. Die Tabelle mit _1 kannst Du wie eine normale Tabelle ansprechen.
tblKunden.Adresse = Abholadresse
tblKunden_1.Adresse = Anlieferadresse
Oder umgekehrt.
Wenn Du keine RI einstellen kannst, würde ich gar nicht erst weitermachen. Du hast dann bereits einen Fehler in den Datensätzen oder in der Struktur.
Zeige mal ein Bild des Beziehungsfensters, oder noch besser, eine Beispieldb (Access2003 bitte)
			
 
			
			
				Hallo MzKlMu,
ich habe Dir mal ein Bild mit den Beziehungen hochgeladen. Ansonsten arbeite ich mit Access 2007.
Emi
[Anhang gelöscht durch Administrator]
			
			
			
				Ich kann die Tabelle Kunden_1 aber gar nicht in Abfragen auswählen. Ich dachte erst es liegt daran, dass ich keine Verknüpfung in das Frontend übernommen habe, aber das geht auch nicht. Er zeigt mit nur die Tabelle Kunden an, die Kunden_1 fehlt.
			
			
			
				Hallo,
die Tabelle "tblKunden_1" gibt es in Wirklichkeit doch gar nicht. Das dient nur zur Darstellung im Beziehungsfenster.
Benutz entweder die "richtige" Tabelle(nnamen) oder falls Daten nur aus Tabellen mit Beziehungen gebraucht werden, eine verknüpfende Abfrage über die entspr. Tabellen.
			
			
			
				Hallo,
wenn man im Beziehungsfenster die Beziehungen mit der virtuellen Tabelle anlegt (also 2x die Kundentabelle hat), wird das in einer Abfrage mit einer  Tabelle und 2 Beziehungen dargestellt. Also die falsche Version. In der Abfrage muss man dann eine Beziehung löschen und die Kundentabelle ein 2tes mal aufnehmen. Dann kann die Beziehung erstellt werden wie im Beziehungsfenster. Auch in der Abfrage gibt es dann die virtuelle Tabelle mit der Beziehung. RI ist da aber nicht zu sehen.
			
			
			
				Hallo,
vielleicht versteh ich das Ausgangsproblem auch falsch...   
Über ein Kombi soll aus einer Tabelle mit Beziehung zu einer weiteren (weil Daten auch daraus in der Kombiliste angezeigt werden solln) irgend ein Datensatz ausgewählt werden...  Dazu braucht es keine RI .. lediglich die Definiton einer (oder mehrerer) Beziehung(en), die sogar nicht einmal mit denen der  im Beziehungsfenster festgelegten Beziehungen übereinstimmen muß. Die "automatisch" gesetzten Beziehungen beim Hinzufügen der einzelnen Tabellen in den Abfrageentwurf können brauchbar/verwendbar  sein (sind es auch in den meisten Fällen) , müssen es aber nicht.
			
			
			
				Hallo,
das ist, ohne 1000 Seiten Text zu produzieren nicht so einfach. Ich habe mal die Abfrage im Entwurf für das Kombo cboAnlieferadresse erstellt. Dann seht ihr bestimmt was ich meine.
[Anhang gelöscht durch Administrator]
			
			
			
				Hallo,
eigentlich habe ich die Lösung schon geschrieben. 
Zitat von: MzKlMuwenn man im Beziehungsfenster die Beziehungen mit der virtuellen Tabelle anlegt (also 2x die Kundentabelle hat), wird das in einer Abfrage mit einer Tabelle und 2 Beziehungen dargestellt. Also die falsche Version. In der Abfrage muss man dann eine Beziehung löschen und die Kundentabelle ein 2tes mal aufnehmen.
Lösche also eine der beiden Beziehung. Nimm die Kundentabelle in die Abfrage noch mal auf. Es entsteht Kunden_1. Erstelle dann die gelöschte Beziehung noch mal mit der virtuellen Tabelle (_1).
Du solltest die ID nicht einfach ID nennen, lieber KundenID.
Das Fremdschlüsselfeld dann KundenID_Abhol_F bzw. KundenID_Liefer_F, damit man immer schön weis, von was man spricht.
Hast Du Nachschlagefelder direkt in den Tabellen angelegt?
Wenn ja, unbedingt entfernen, die sind von Übel und sollten nur in Formularen verwendet werden.
			
 
			
			
				Hallo MzKlMu,
ich arbeit nicht mit Nachschlagefeldern. In den Tabellen befinden sich Felder in denen Zahlen gespeichert werden. Die gebundene Spalte im Formular ist die welche die Zahlen übernimmt. Angezeit wird die zweite Spalte mit dem Text. Das spart Speicherplatz.
Deinen Vorschlag muss ich mal ausprobieren. Bin mal gespannt, ob das so funzt. Ihr lest bestimmt von mir :)
Emi
			
			
			
				Da hol mich doch der ... Delphin  ;D Es funktioniert. Darauf muss man erst einmal kommen. Durch logisches kombinieren wäre ich zu diesem Ergebnis niemals gekommen. Das ist bei Dir wohl die Erfahrung. Jedenfalls funktioniert das Kombo jetzt wie geplant. Besten Dank Jungs.
Emi