collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 47
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 0

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 13953
  • stats Beiträge insgesamt: 66359
  • stats Themen insgesamt: 8942
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Darstellung eines Queries im Forumular  (Gelesen 369 mal)

Offline DonMarco

  • Newbie
  • Beiträge: 5
Darstellung eines Queries im Forumular
« am: März 09, 2018, 14:35:08 »
Hallo,

ich habe ein Formular in Access erstellt, dass an eine Abfrage gebunden ist.
Dieses soll nach Eingabe eines Suchwortes (Seriennummer) die dazugehörigen Daten darunter anzeigen:

Wenn ich den Suchenbutton dann klicke, öffnet sich jedoch die Abfrage (und zeigt mit interessanterweise eine leere Tabelle an, anstatt das Ergebnis). Das Problem ist für mich aber aktuell erst einmal, dass die Daten nicht im Formular, sondern im Query angezeigt werden.
Das Formular heisst CheckForm. Der Button im Bild heißt SearchSerialNo. Der Button sucht mit dem Makro "OpenQuery" / Es gibt aber kein RunQuery... :-(
Und das SQL der Abfrage lautet:
SELECT Assets_ALT.STREETADDRESS, Assets_ALT.FLOOR, Assets_ALT.ROOM, Assets_ALT.DEPARTMENT, Assets_ALT.ITC_NAME, Assets_ALT.ASSET_USER_NAME, Assets_ALT.PERSONID, Assets_ALT.COMPUTER_NAME, Assets_ALT.CATEGORY, Assets_ALT.MANUFACTURER, Assets_ALT.PRODUCT, Assets_ALT.MODELL, Assets_ALT.SERIALNUM, Assets_ALT.MAC_ADDRESS
FROM Assets_ALT
WHERE (((Assets_ALT.SERIALNUM)=[Formulare]![CheckForm]![SearchSerialNo]));

Später soll der User diese Daten dann prüfen (Haken klicken) und dann abspeichern können. Aber das hebe ich mir auf für den Moment, ab dem die Daten angezeigt werden...
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23319
Re: Darstellung eines Queries im Forumular
« Antwort #1 am: März 10, 2018, 09:42:52 »
Hallo,


da liegt ein Missverständnis vor.

Der Button sucht mit dem Makro "OpenQuery" / Es gibt aber kein RunQuery... :-(
Dies öffnet eine Abfrage (wie Du selber merkst)  als solche und hat mit der Anzeige in einem Form nichts zu tun.


Eine mögliche Lösung:

Schreib in die Datenherkunft des Form den Namen der (gespeicherten) Abfrage. Entferne in der Abfrage die Where-Condition ( Kriterium).
(Alternativ kann aber auch gleich der Tabellenname eingesetzt werden.)

Für den Button erzeugst Du eine Ereignisprozedur für dessen Klickereignis  (Auf die rechts stehenden Pünktchen in der Ereigniszeile "Beim Klicken" klicken, danach evtl. "Ereignisprozedur" wählen.

Sobald der VBA-Editor sich öffnet, kommt folgender Code in die vorbereitete Prozedur:


'Private Sub SearchSerialNo_Click()   ' schon generiert
Me.Filter = "SERIALNUM= '" & Me![SearchSerialNo] & "'"
Me.Filteron = True
'End Sub    'schon generiert

 
Hier ist angenommen, dass "SERIALNUM" den Datentyp TEXT in der zugrundeliegenden Tabelle aufweist.

Ist der Datentyp ZAHL (LONG, bzw. INTEGER)  , dann entfallen die Hochkommata.



Offline DonMarco

  • Newbie
  • Beiträge: 5
Re: Darstellung eines Queries im Forumular
« Antwort #2 am: März 10, 2018, 15:12:45 »
Danke, dass macht fast genau das was ich wollte!
Jetzt funktioniert es endlich... :-D

Ich habe eine kleine Änderung gemacht. Die Aktion wird nun bei "Beim Verlassen" des Inputs ausgeführt.
Das führt aber aktuell dazu, dass wenn ich das Feld verlasse, der Inhalt immer markiert wird und ich nirgendwo anders hinklicken darf. Liegt das an der Filterung oder dass OnExit noch einen Fokusverlust zulassen muss?

VBA sieht aktuell so aus (ich hab das Textfeld umbenannt in inputSearchSerialNo, um den Namingconventions zu folgen, was ich vorher noch nicht gemacht hatte):
Option Compare Database

Private Sub inputSearchSerialNo_Exit(Cancel As Integer)
Me.Filter = "SERIALNUM = '" & Me![inputSearchSerialNo] & "'"
Me.FilterOn = True
End Sub


Wenn ich das habe, dann wird das Formular noch mit einem Update versehen und soll in die Datenbank zurückschreiben, wenn was geändert wird bzw. die Checkbuttons kommen dann in die Datenbank. Ich hoffe das funktioniert ohne Probleme. :-)
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1226
Re: Darstellung eines Queries im Forumular
« Antwort #3 am: März 10, 2018, 15:38:36 »
Verwende besser das Nach Aktualisierung Ereignis - dann sollte auch das Betätigen der Eingabetaste nach Texteingabe genügen, um das Filterkriterium anzuwenden.
Grüße von der (⌒▽⌒)
 
Folgende Mitglieder bedankten sich: DonMarco