Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: cd_com am November 26, 2011, 22:50:00

Titel: Abfrage in Formular ausgeben
Beitrag von: cd_com am November 26, 2011, 22:50:00
Hallo Leute.
Hab ewig nix mehr mit Access gemacht...und das ist mein Problem.
Habe eine Tabeller mit gemischten Daten, Text und Zahlen..
Hierfür hab ich eine Abfrage gebastelt, welche auch funktioniert->Anzeige in Tabellenform.

Nun hab ich vor Jahren mal was ähnliches gemacht, da starte ich ein Formular welches auf eine Abfrage zugreifft, also gebe ich die entsprechende Suchbegriffe ein und in dem Formular erscheinen die restlichen Daten zum abgefragten Begriff/Zahl.

Soweit so gut. Das bring ich nichtmehr hin. Abrage funktioniert, nur wenn ich mir ein Formulag baue, wird wohl der Begriff/Zahl abgefragt, welcher auch nach eingabe richtig gefunden wird, leider sind die restlichen Datendazu nicht richtig, es werden immer die Daten aus der ersten Tabellenzeile angezeigt...verzweifle langsam, was mach ich falsch?

Die Abfrage funktioniert. Beim Formular erstellen wähle ich Listenfeld und die entsprechende Abfrage aus, für die restlichen Daten die Felder aus der Tabelle...nur klappt das nicht
Mist, das konnte ich mal.

Wer kann mit meinen Angaben was anfangen und mir helfen...bitttebitte.

Gruß Jens
Titel: Re: Abfrage in Formular ausgeben
Beitrag von: MzKlMu am November 26, 2011, 23:12:51
Hallo,
ZitatBeim Formular erstellen wähle ich Listenfeld und die entsprechende Abfrage aus, für die restlichen Daten die Felder aus der Tabelle...nur klappt das nicht
Die Datenherkunft des Formulars muss die Abfrage sein und nicht die Tabelle.
Was willst Du mit dem Listenfeld?
Titel: Re: Abfrage in Formular ausgeben
Beitrag von: cd_com am November 26, 2011, 23:25:03
Hallo und danke für Deine schnelle Antwort.

Wie bring ich die Abfrage mit dem Formular in einklang?

Hast Du evtl ein Tip für mich.

Gruß Jens
Titel: Re: Abfrage in Formular ausgeben
Beitrag von: MzKlMu am November 26, 2011, 23:36:51
Hallo,
das Formular hat doch eine Datenherkunft und dort wird die Abfrage ausgewählt.
Titel: Re: Abfrage in Formular ausgeben
Beitrag von: cd_com am November 27, 2011, 09:40:45
Hallo.

Das hab ich schon verstanden, nur möchte ich einzelne Felder mit dem Inhalt der Abrage im Formular haben um diese schön zu positionieren.

Also, ich habe eine Tabelle mit Gerätedate: Seriennummer, Gerät, Kundenname, Adresse....... Die Abfrage sucht das Gerät nach seriennummer. Das funktioniert soweit, Anzeige in Tabellenform mit entsprechenden Geätedaten.
Nun hatte ich vor, das ganze mit einem Formular zu machen, um mir die Gerätedaten in einzelnen Feldern anzuzeigen. Hintergrund dieser Anzeige, ist die weiterverarbeitung der angezeigten Daten.

Also, ich öffne ein leeres Formular im Entwurfsmodus. Dann hole ich mir ein Listenfeld und plaziere dieses. Im aufgehenden Listenfeld Assistenten bleibt "Das Listenfeld soll die Werte einer Tabelle oder abfrage entnehmen" markiert->Weiter Abfrage markiert und Abfrage ausgewählt->Weiter Seriennummer ins rechte Feld gebracht (nur Seriennummer, da ich sonst eine fixierte Tabellenspalte erhalte)->Weiter sortiert wird nix->Weiter Spaltenbreite lass ich mal stehen->Weiter Markierung "Zur späteren Verwendung zwischenspeichern" lass ich mal stehen->Weiter Beschriftung im Listenfeld soll Seriennummer sein->Fertig stellen...so, jetzt hab ich ein Formular das mir die Abfrage öffnet und eine Seriennummer, die abgefragt wurde, anzeigt.
Wie bekomme ich jetzt weitere Felder in mein Formular, die den Rest der Daten beinhalten, Kunde, Kundenadresse usw.

Nehme ich im Entwurfsmodus aus der Feldliste die Felder, bekomme ich immer die erste Zeile meiner Tabelle eingeblendet...also nicht aus der Abfrage

Wie bekomme ich einzel, im Entwurfsmodus frei plazierbare, Felder mit meinen Restdatenaus der Abfrage ins Formular.

Gruß Jens
Titel: Re: Abfrage in Formular ausgeben
Beitrag von: DF6GL am November 27, 2011, 10:01:31
Hallo,

vermutlich verkomplizierst Du das Ganze unnötig.


Wenn Du die Felder der Abfrage (Warum Abfrage? Um später Datensätze zu suchen, benutzt man keine Abfrage mit Parameterfeldern) als separate Textfelder im Formular erhalten willst, dann starte den Formularassistenten, biete ihm die Tabelle (oder die Abfrage ohne Parameter!) an und definiere den Typ des Formulares (Einzelform oder Endlosform--> tabellarisch) . In nullkommanix hast Du ein Form , mit dem Du alle Datensätze anzeigen und deren Feldinhalten ändern und auch löschen, bzw. hinzufügen kannst.


Im Formentwurf steht es Dir dann frei, die Felder nach Belieben zu Positionieren (unter Berücksichtigung der Eigenheiten der verschiedenen Bereiche, d. h. Felder mit Inhalt aus den einzelnen Datensätzen zeigen   nur im Detailbereich ohne weiteres Zutun die Werte richtig an)

Ein (Access-)Listenfeld ist ein "eigenständiges" Daten(satz)-Anzeigefeld (hat eine eigene Daten(satz)herkunft, kann nicht editiert werden) und ist in diesem Zusammenhang vermutlich nicht sinnvoll.

Wie man eine Suchfunktionalität einbaut, kannst Du in einer Beispieldatei bei DBWIKI (siehe u. st. Link) unter Beispieldatenbanken/Suchen nachsehen.


Allerdings möchte ich noch darauf hinweisen, dass vor der Erstellung von Formularen der Tabelleaufbau kritisch in Bezug auf Normalisierungsregeln  untersucht werden sollte.

Titel: Re: Abfrage in Formular ausgeben
Beitrag von: MzKlMu am November 27, 2011, 10:02:41
Hallo,
wenn das Formular an die Abfrage gebunden ist, enthält die Feldliste die Felder der Abfrage und nicht die der Tabelle.
Da siehst Du keinen Unterschied. Die Feldnamen sind ja gleich.

Und noch ein Hinweis, die Abfrage darf nicht gefiltert sein, sondern muss alle Geräte anzeigen.
Titel: Re: Abfrage in Formular ausgeben
Beitrag von: cd_com am November 27, 2011, 10:34:35
@MzKlMu

Danke für die Hilfe, aber wie binde ich ein Feld an die Abfrage, und wie kann ich die Filterung der Abfrage ausstellen?

Gruß J
Titel: Re: Abfrage in Formular ausgeben
Beitrag von: MzKlMu am November 27, 2011, 10:53:59
Hallo,
ZitatDanke für die Hilfe, aber wie binde ich ein Feld an die Abfrage,
Das Formular muss an die Abfrage gebunden sein, nicht das Feld. Wenn das Formular an die Abfrage gebunden ist, stehen in der Feldliste nur Felder der Abfrage.
Warum machst Du nicht mal wie von Franz vorgeschalgen ein Formular mit dem Assi und wählst die Abfrage bzw. die Tabelle direkt.
Das Listenfeld hat ja mit der Datenherkunft des Formulars nichts zu tun.

Zitatwie kann ich die Filterung der Abfrage ausstellen
Die Abfrage darf keine Kriterium enthlaten.
Ob Du dann überhaupt eine Abfrage brauchst, ist auch noch nicht raus.

PS:
Das sind hier absolute Basics zu Access, die man unbedingt wissen sollte. Es ist schwer und aufwändig das in allen Einzelheiten zu beschreiben.