collapse

* Benutzer Info

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

* Wer ist Online

  • Punkt Gäste: 65
  • Punkt Versteckte: 1
  • Punkt Mitglieder: 3
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 13974
  • stats Beiträge insgesamt: 66589
  • stats Themen insgesamt: 8974
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Verhalten bei Formularaufruf ohne Daten beeinflussen  (Gelesen 1034 mal)

Offline Heinz-R

  • Newbie
  • Beiträge: 3
Verhalten bei Formularaufruf ohne Daten beeinflussen
« am: Dezember 29, 2017, 10:39:55 »
Hallo

Ich rufe ein Formular auf, das die Daten aus einer Abfrage bezieht. Bei der Abfrage hat es drei verschiedene Benutzer-Abfragen (Name / Vorname / Ort), die alle nach dem Modell
   Wie [nach Name suchen: ] & "*"
integriert sind und einwandfrei funktionieren. Ergeben sich ein oder mehrere Treffer, so wird das Formular angezeigt und der gewünschte Datensatz kann mutiert werden (Anfügen, löschen und Filter sind im Formular nicht zugelassen). Alles soweit ok.

Nun gibt jemand einen noch nicht existenten Namen ein - oder einen Tippfehler, so bringt die Abfrage keine Daten und entsprechend wird das Formular nicht angezeigt. Wie kann ich für diesen Fall auf ein anderes Formular mit einem Hinweis und Buttons für die nächsten Schritte verzweigen?

Danke für gute Ideen!
Heinz
 

Offline steffen0815

  • Access-Profi
  • **
  • Beiträge: 126
Re: Verhalten bei Formularaufruf ohne Daten beeinflussen
« Antwort #1 am: Dezember 29, 2017, 10:53:50 »
Hallo,
du kannst beim Laden des Form kontrollieren, ob es Datensätze gibt:Private Sub Form_Load()
If Me.Recordset.RecordCount = 0 Then
    MsgBox "nix"
    DoCmd.OpenForm "Ersatzformular"
    DoCmd.Close acForm, Me.Name
End If
End Sub
Gruß Steffen
 
Folgende Mitglieder bedankten sich: Heinz-R

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7291
Re: Verhalten bei Formularaufruf ohne Daten beeinflussen
« Antwort #2 am: Dezember 29, 2017, 11:00:13 »
Hallo,
wenn Du statt des normalen Suchfeldes ein Kombinationsfeld verwendest, das als Datenherkunft die Spalte mit den Namen hast, so ist die Prüfung überflüssig, es können nur Namen gewählt werden, die es auch gibt.

Zusätzlicher Hinweis:
Name ist als Feldname völlig ungeeignet und unbedingt zu vermeiden.
Name ist eine Eigenschaft von Objekten (auch in englischer Sprache) und für eigene Namensgebungen tabu.
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Heinz-R

Offline steffen0815

  • Access-Profi
  • **
  • Beiträge: 126
Re: Verhalten bei Formularaufruf ohne Daten beeinflussen
« Antwort #3 am: Dezember 29, 2017, 11:05:19 »
OT@Klaus:
Zitat
Name ist als Feldname völlig ungeeignet und unbedingt zu vermeiden. ... für eigene Namensgebungen tabu
Ich denke so dramatisch sollte man das nicht sehen. Zu empfehlen ist es sicher nicht, aber selbst Access selbst nutzt Name als Spaltenbezeichnung in Systemtabellen.
Gruß Steffen
 
Folgende Mitglieder bedankten sich: Heinz-R

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7291
Re: Verhalten bei Formularaufruf ohne Daten beeinflussen
« Antwort #4 am: Dezember 29, 2017, 11:16:01 »
Hallo,
doch, das muss man so dramatisch sehen.
Wenn man sich z.B. in einem Formular auf dieses Feld bezieht, wird der Name des Formulars ausgegeben und nicht der Inhalt des Feldes.
Access gibt sogar eine Meldung aus, wenn man Name als Feldname verwendet.
Siehe Bild.
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Heinz-R

Offline Heinz-R

  • Newbie
  • Beiträge: 3
Re: Verhalten bei Formularaufruf ohne Daten beeinflussen
« Antwort #5 am: Dezember 30, 2017, 21:06:10 »
Zur Diskussion um "Name":
Natürlich heisst das Feld nicht "Name" sondern "ADR_Name", aber bei der Benutzerführung macht es hier Sinn nach dem 'Namen' zu fragen (und nicht nach dem Nachnamen); es könnte nämlich auch ein Firmennamen sein. Ist nur im Einschränkungskriterium bei der integrierten Abfrage so formuliert!

Aber die Variante mit der Kombinationsfeld-Abfrage scheint eine prüfenswerte Variante zu sein - allerdings möchte ich nur mit einem oder mehreren Elementen aus den Feldern
ADR_Vorname
ADR_Name
ADR_Ort
oder deren Anfangsbuchstaben suchen, was natürlich mit der integrierten Abfrage sehr einfach war!

Danke so oder so für die wertvollen Rückmeldungen!

Gruss
Heinz
« Letzte Änderung: Dezember 31, 2017, 00:06:03 von MzKlMu »
 

Offline Beaker s.a.

  • Access Guru
  • ****
  • Beiträge: 1793
Re: Verhalten bei Formularaufruf ohne Daten beeinflussen
« Antwort #6 am: Dezember 31, 2017, 03:36:59 »
Hallo Klaus,
Zitat
wenn Du statt des normalen Suchfeldes ein Kombinationsfeld verwendest, das als Datenherkunft die Spalte mit den Namen hast
Kombi zur Suche würde ich auch anraten. Das mit der Datenherkunft
könnte aber falsch verstanden werden.

@Heinz
Klaus meint die Datenherkunft des Kombis, und das darf als Suchfeld
nicht an ein Feld der Datenherkunft des Formulars gebunden sein.
Sonst würdest du das Feld ja mit dem Suchbegriff überschreiben.
Zitat
deren Anfangsbuchstaben suchen,
Dieses Verhalten ist bei einem Kombi Standard.
gruss ekkehard
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.
 
Folgende Mitglieder bedankten sich: Heinz-R

Offline Heinz-R

  • Newbie
  • Beiträge: 3
Re: Verhalten bei Formularaufruf ohne Daten beeinflussen
« Antwort #7 am: Dezember 31, 2017, 08:33:07 »
Hallo Ekkehard

Danke für die ergänzenden Erläuterungen. Dann muss ich das wohl wirklich mehr als nur in Erwägung ziehen!

Gut Rutsch.
Heinz

Nachtrag vom 01.01.2018:
Habe das nun mit einem Kombifeld integriert - ist effektiv eine sehr zweckmässige Lösung. Vielen Dank nochmals für die ganzen Tipps!
« Letzte Änderung: Januar 01, 2018, 20:27:01 von Heinz-R »