MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Access & Datenbanken > Microsoft Access
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 12.07.2018, 11:24   #1
AshTray223
Neuer Benutzer
Neuer Benutzer
Standard Acc2016 - Formular lädt nicht korrekt, wenn Daten aus einer Abfrage mit einem JOIN kommen

Hallo zusammen,

ich brüte nun schon seit einiger Zeit an diesem Problem und hoffe, mir kann jemand vielleicht einen Tipp geben.

Problem:
Ich benutze das Kontakttemplate von Access 2016 (Version 1806) und möchte es auf meine Bedürfnisse anpassen. Die Kontakte-Tabelle habe ich über eine Abfrage (Erweiterte Kontakte) um bestimmte Felder erweitert (zum Beispiel Anzeigename = Name + Vorname).

Ein Formular (Kontaktformular) nutzt nun diese Abfrage, um bestimmte Felder anzuzeigen. Wird ein bestimmter Kontakt geöffnet, wird ein weiteres Formular (Kontaktdetails) geöffnet. Auch das Klicken des "Neuer Kontakt"-Buttons im Kontaktformular öffnet das Formular Kontaktdetails mit leeren Feldern (Standard durch das Access Kontakt-Template, hier habe ich nichts verändert, siehe Anhang "Neuer Kontakt").

Wenn ich nun aber die zugrunde liegende Abfrage um eine Spalte, die sich aus einem JOIN mit einer anderen Tabelle ergibt, erweitere, erscheint beim Klicken des "Neuer Kontakt"-Buttons ein blankes Kontaktdetails-Formular. Selbst die statischen Textfelder werden nicht mehr angezeigt (siehe Anhang "Neuer Kontakt blank").

Und hier liegt mein Problem, bei dem ich hier um Hilfe bitte bzw. auf einen Tipp hoffe, denn ich kann nicht herausfinden, wodurch dieses Verhalten hervorgerufen wird.
Der JOIN liefert den Namen, der in einer anderen Tabelle gespeichert ist, zu einer ID in der Ursprungstabelle.
Das Problem muss irgendwas mit dem JOIN zu tun haben, denn wenn ich die Datensatzquelle auf die ursprüngliche Tabelle ändere, wird das Formular korrekt angezeigt (Bis auf den Fehler, dass jetzt bestimmte Felder nicht mehr zu finden sind).

Ich bin um jeden Tipp und jede Hilfe dankbar.


Liebe Grüße

AshTray223
Angehängte Grafiken
Dateityp: png Neuer Kontakt blank.png (9,8 KB, 7x aufgerufen)
Dateityp: png Neuer Kontakt.png (20,8 KB, 8x aufgerufen)

Geändert von AshTray223 (12.07.2018 um 11:26 Uhr).
AshTray223 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2018, 11:36   #2
maikek
MOF Guru
MOF Guru
Standard

Moin,
der Schilderung nach liefert diese Abfrage keine Datensätze.
Versuch es mit einem Left oder Right Join (Rechtsklick auf die Beziehungslinie in der Abfrage und dann auswählen: Alle aus Tabelle X und nur die aus ...).
Ansonsten bitte die SQL-Ansicht der Abfrage posten.
maike

__________________

Bitte dein Thema auf erledigt setzen, wenn's durch ist!
MOF Access Stammtisch in Bremen
maikek ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2018, 11:54   #3
AshTray223
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Hallo Maike,

danke für die schnelle Antwort.


Zunächst muss ich mich korrigieren, denn die Abfrage wird bereits über einen RIGHT JOIN realisiert und liefert auch Datensätze, denn in der Datenblattansicht werden die korrekten Namen angezeigt. Das ist ja auch ein wenig das kurriose: ich bin zwar relativ neu in Access, aber meiner Meinung nach ist die Abfrage korrekt. Es sieht zumindest danach aus.
Hier dennoch mal der SQL-Code:

Code:

SELECT Kontakt.[Nachname] & ", " & Kontakt.[Vorname] AS [Speichern unter], Kontakt.[Vorname] & " " & Kontakt.[Nachname] AS [Name des Kontakts], IIf(IsNull(Firma.[Name der Firma]),"Keine Firma angegeben",Firma.[Name der Firma]) AS [Name der Firma], Kontakt.*
FROM Firma RIGHT JOIN Kontakt ON Firma.ID = Kontakt.FirmenID;
Wenn ich hier den JOIN und die entsprechenden Felder entferne, funktioniert auch das Formular wieder.
AshTray223 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2018, 12:03   #4
ebs17
MOF Guru
MOF Guru
Standard

Zitat:

erscheint beim Klicken des "Neuer Kontakt"-Buttons ein blankes Kontaktdetails-Formular

Bei NEU würde ich auch etwas Leeres erwarten, abgesehen von vorbelegten Standardwerten.

Ansonsten: Man wird bei Dateneingaben immer ein Formular auf EINE Tabelle verwenden, wobei bei der Schachtelung Haup-/Unterformular die entsprechende vorhandene Beziehung nachgebildet wird.

__________________

Ein freundliches Glück Auf!

Eberhard

Abfrageperformance ist kein Geheimnis
SQL ist leicht: {0}:{1}:{2}:{3}:{4}:{5}:{6}:{7}:{8}:{9}:{10}:{11}
Dein Dankeschön: DBWiki=>Spende
ebs17 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2018, 12:13   #5
AshTray223
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Hallo Eberhard,

auch dir danke ich für die schnelle Antwort.

Zitat:

Bei NEU würde ich auch etwas Leeres erwarten, abgesehen von vorbelegten Standardwerten.

Leer ist ja auch in sofern richtig, dass keine Daten enthalten sein sollen. Aber die Felder sollten schon zum Ausfüllen und anschließenden Speichern angezeigt werden, wie es im Screenshot "Neuer Kommentar" zu sehen ist. Und das funktioniert ja auch, wenn ich keinen JOIN verwende.

Zitat:

Ansonsten: Man wird bei Dateneingaben immer ein Formular auf EINE Tabelle verwenden, wobei bei der Schachtelung Haup-/Unterformular die entsprechende vorhandene Beziehung nachgebildet wird.

Heißt das, dass es so wie ich es mir gedacht habe garnicht funktionieren kann? Also ich kann in einem Formular nicht auf eine Abfrage als Datensatzquelle verweisen, die wie auch immer mehr als eine Tabelle verwendet?
Ich werde mal versuchen, die gewünschte Darstellung über ein Unterformular darzustellen.
AshTray223 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2018, 12:34   #6
maikek
MOF Guru
MOF Guru
Standard

Zitat:

denn in der Datenblattansicht werden die korrekten Namen angezeigt.

Ist diese Abfrage auch aktualisierbar? D.h. kannst du dort einen neuen Datensatz anlegen?
maike

__________________

Bitte dein Thema auf erledigt setzen, wenn's durch ist!
MOF Access Stammtisch in Bremen
maikek ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2018, 12:35   #7
ebs17
MOF Guru
MOF Guru
Standard

Zitat:

Also ich kann in einem Formular nicht auf eine Abfrage als Datensatzquelle verweisen, die wie auch immer mehr als eine Tabelle verwendet?

Zum Anzeigen schon.

Beim Editieren / Neuanlegen von Datensätzen wird man bei gejointen Abfragen regelmäßig Probleme haben, über Anzeige von Feldern in einem Formular hinaus.

Bitte immer beachten: Datensätze liegen real in Tabellen. Dort sind sie zu verarbeiten, wenn man über ein Anzeigen hinausgeht.

__________________

Ein freundliches Glück Auf!

Eberhard

Abfrageperformance ist kein Geheimnis
SQL ist leicht: {0}:{1}:{2}:{3}:{4}:{5}:{6}:{7}:{8}:{9}:{10}:{11}
Dein Dankeschön: DBWiki=>Spende
ebs17 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2018, 12:47   #8
AshTray223
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Zitat:

Zum Anzeigen schon.

Beim Editieren / Neuanlegen von Datensätzen wird man bei gejointen Abfragen regelmäßig Probleme haben, über Anzeige von Feldern in einem Formular hinaus.

Bitte immer beachten: Datensätze liegen real in Tabellen. Dort sind sie zu verarbeiten, wenn man über ein Anzeigen hinausgeht.

Ok, vielen Dank für die Ausführung. So macht es Sinn und es ist auch logisch, dass es nicht funktionieren kann. Ich versuch gerade, es über ein Unterformular zu lösen.

Zitat:

Ist diese Abfrage auch aktualisierbar? D.h. kannst du dort einen neuen Datensatz anlegen?

Nein, ist es tatsächlich nicht. Mit der Ausführung von Eberhard ist nun auch klar, wieso. Vielen Dank euch beiden.

Ich werde diesen Thread jetzt als erledigt markieren.
AshTray223 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:30 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.