Zum Inhalt springen

Formular + Suche


merlin3011

Empfohlene Beiträge

Guten morgen zusammen

ich möchte gerne meinen Nutzern der Datenbank die Möglichkeit bieten das in ihrem Access-Formular nur bestimmte Daten zur Verfügung stehen.

Dies mache ich derzeit über verschiedene Formulare die ich aus Abfragen befülle. In der Abfrage sage ich als Kriterium z.B. [Kundennummer] das sich ein Eingabefenster öffnet. Geht auch ganz gut.

Jetzt sind die Anforderungen gewachsen und die möchten auf 9 verschiedene Felder suchen.

Klar könnte ich ein und das selbe Formular x-mal kopieren und die Abfragen anpassen.

Aber da muss es doch einen einfacheren Weg geben???

z.B. als String bei on_click "SELECT *** WHERE" mitgeben was er wie suchen soll. So kann ich dann immer das selbe Formular verwenden.

HILFE

Danke schon mal im Voraus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ist Access nur das Frontend, und ist da ein echtes DBMS im Hintergrund ?

Das wäre ein sehr wichtiges Detail, im Sinne von Mysql, Oracle, MSSQL, DB2 etc

//edit : nicht alle links sind das ideale tutorial für das entsprechende DBMS, aber eine DATENBANK kann fulltext search, das is der Punkt

(nein Access ist keine Datenbank, Access ist ein Auswuchs der Hölle, aber keine Datenbank)

Gruß

Sven

Bearbeitet von streffin
Link zu diesem Kommentar
Auf anderen Seiten teilen

(nein Access ist keine Datenbank, Access ist ein Auswuchs der Hölle, aber keine Datenbank)

**** stimmt aber das liegt am Hersteller **** :D :D :D

Ich beziehe meine Daten von verschiedenen Servern... zum einen läuft da ein Oracle zum anderen ein MSSQL.

Um meinen Datenstamm den ich benötige zu bekommen laufen im Vorfeld ein, zwei Abfragen die mir im Access selber die benötigten Daten in eine Tabelle einfügen. Der Grund warum sind die Feldtypen (Text / Zahl) leider habe ich auf die Strukturen des Servers keinen Einfluss, Aber mit „Texten“ kann ich leider nicht rechnen…

Also kann man sagen ich habe die Daten im Access selber… sollte das dann so nicht gehen kann ich diese auch umleiten (was ich auch machen will wenn ich fertig bin) auf den MSSQL.

P.S. Ich bin an die server via ODBC angebunden

Link zu diesem Kommentar
Auf anderen Seiten teilen

Gibt es einen Grund, warum die Entscheidung irgendwann einmal auf Access gefallen ist? Wenn es filebasiert sein soll, wäre vielleicht auch SQL Server CE eine Alternative. Kann echtes SQL und Du kannst eine anständige Anwendung bauen.

Zu Deiner eigentlichen Frage... da ist mir nicht ganz klar, was genau jetzt eigentlich dabei herauskommen soll. Soll der Anwender mehrere (beliebig viele?) Suchbedingungen angeben oder jeweils nur eines auswählen, also z.B. entweder nach Kundennummer oder nach Nachname suchen können?

Du kannst dem Anwender im zweiten Fall z.B. über ein Dropdown auswählen lassen, welches Feld sein Suchkriterium bildet. Oder im ersten jeweils auf Button-Click eine weiteres Suchkriterium bestimmen lassen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Auf die Entscheidung der Programme habe ich keinen Einfluss ich muss das nehmen was da ist.

Es sollen mehrere User darauf zugreifen.

Diese sollen die Auswahl haben in einem „Formular“ zu sagen ich brauche Herrn Müller aus Mühlenbach der uns Mehl liefert.

Formular:

Hier im Formular sollen die eingeben können was sie wollen.

z.B.

[Name]

[Vorname]

[str.]

[Hnr]

[PLZ]

[Ort]

[Artikel] [Knopf Filtern]

Wenn der Filter dann aktiv ist sollen alle Daten von dem Müller angezeigt werden...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Da würd ich mir den MSSQL Server nehmen, die Daten darauf lagern, und dieses Suchquery per table valued function oder ner View implementieren. Das kannste dann auch direkt in Access einbinden / abrufen.

Der Vorteil is dann halt ganz klar, dass du ne richtige DB im Hintergund hast, mit so netten Sachen wie Backups, Transaktionssicherheit, Volltextsuche, Indizes, etc etc etc.

Kannst natürlich auch den Oracle her nehm für. Wo deine ETL Prozesse enden is verhandelbar, aber Access wär bei mir da die letzte Wahl ;)

Gruß

Sven

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich kenn die Datenstrukur nicht, deshalb ist das aus der Ferne bissl schwer zu sagen, wie genau das zu implementieren ist. Die View wäre relativ statisch, da kannst du keine Parameter übergeben, die Funktion wäre seeehr viel dynamischer.

Vom Prinzip her kannst du die Funktion so gestalten, dass alle deiner Suchoptionen, Parameter der Funktion sind. Im Query kannst du dann über nullif und isnull dafür sorgen, dass nicht alle der möglichen Parameter wirklich da sein müssen. Im Sinne von

WHERE (nullif(@ort,'') is null OR alias.ort like '%' + @ort + '%') AND (/* das gleiche spiel mit anderem Parameter */)

Darüber hättst du schon viel erschlagen denke ich.

Mit Volltextsuche hab ich bisher in so einem Kontext bisher nicht rumspielen können, aber das müsste / dürfte eigentlich nicht wirklich ein Problem sein.

Die Funktion würde dir dann nen Recordset zurückgeben, auf dass du dann recht einfach zugreifen kannst,

SELECT * FROM [schema].[function] (@param1, @param2, @param3)

Selbst da kannste dann noch mit ner Where Bedingung filtern (is aber nich so dolle für die performance, mach das dann lieber in der funktion selber wenns geht)

Des wär aus der Ferne mein erster Ansatz. Datenbank seitig is das denke ich recht gut machbar. In Access selber kannste dir das dann als Recordset laden, und in den Formularen verwursten.

Bearbeitet von streffin
Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...