Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: funnysmily am November 30, 2020, 10:51:56

Titel: Kombinationsfeld (Suchen) in kurzem Text
Beitrag von: funnysmily am November 30, 2020, 10:51:56
Hallo zusammen,

ich habe wieder eine Frage zu meiner Datenbank.

Ich habe in meiner Kopfzeile zwei Suchfelder.
Im ersten kann nach der Auftragsnummer gesucht werden (funktioniert ohne Probleme)

Im zweiten soll nach der Seriennummer gesucht werden. In einem Auftrag gibt es mehrere Seriennummern und je nachdem was man zur Hand hat, soll dementsprechend gesucht werden.
Die Seriennummern werden in ein Textfeld "kurzer Text" eingetragen. Dieses Feld soll eben durchsucht werden. Leider findet die Datenbank immer nur die Seriennummer in der ersten Zeile, alle darunter werden nicht gefunden.

Gibt es eine Möglichkeit, das komplette Textfeld durchsuchen zu lassen?

Danke und viele Grüße
funnysmily
 
Titel: Re: Kombinationsfeld (Suchen) in kurzem Text
Beitrag von: MzKlMu am November 30, 2020, 11:16:30
Hallo,
wie suchst Du jetzt ?

Aber, wie in deinem anderen Thema auch schon gesagt, gehören die Seriennummern in eine extra Tabelle mit einem Fremdschlüssel zu Auftrag, je Seriennummer ein Datensatz.
In ein Datenbankfeld kommt immer nur ein Wert (1.Normlform, atomare Inhalte).
Du solltest das umbauen.
Titel: Re: Kombinationsfeld (Suchen) in kurzem Text
Beitrag von: Beaker s.a. am November 30, 2020, 17:27:46
@funnysmily
Zeig doch mal dein Beziehungsfenster.
Ob die Seriennummern (SN) nun einen FK zum Artikel oder zum Auftrag
haben, spielt für's finden nur in soweit eine Rolle, an der richtigen Stelle
zu suchen.
Wenn also eine 1:n-Beziehung zwischen Auftrag und SN besteht, sieht das
Kombi zum Suchen einer SN etwa so aus
- DS-Herkunft:
SELECT AuftragID_F, Seriennummer
FROM tblSeriennummern
- Steuerelementeinhalt: keiner
- gebundene Spalte: 1
- Breiten: 0cm; 4cm (oder wie lang deine SN auch sind)
- Ereignis "Nach Aktualisierung" = Ereignisprozedur
Code
Private Sub DeinKombi_AfterUpdate()
'zum zur SN gehörenden Auftrag gehen
    Me.Recordset.FindFirst "AuftragID = " & Me.DeinKombi
'oder Formular filtern
'    Me.Filter = "AuftragID = " & Me.DeinKombi
'    Me.FilterOn = True
End Sub
gruss ekkehard