Frage : Überprüfungsgültigkeit, bevor Aufzeichnung auf einer Form gespeichert oder redigiert wird

Hallo ist Kerle,

This eine ziemlich allgemeine Frage. Ich habe eine Form, die zu den Aufzeichnungen in meiner Tabelle gesprungen wird. Für jede Aufzeichnung, die Benutzer addieren möchte,/, ich möchten sicherstellen redigieren, dass bestimmte Felder nicht leer sind, bevor die Aufzeichnung in meine Tabelle gespeichert wird. Und ich auch wünsche keine Duplikate in meiner Tabelle. Ich weiß, dass die Logik recht einfach ist, aber wo ich soll in meinen Code mich setzen?

Can jedermann direkt ich zum rechten Weg über dieses?
Many thanks.

Antwort : Überprüfungsgültigkeit, bevor Aufzeichnung auf einer Form gespeichert oder redigiert wird

Sie können einzigartige Indizes auf der Tabelle, mit jenen Feldern auch wie erforderlich gründen. Dieses hat den ähnlichen Effekt von, was Gary beschrieb.

Jedoch von einer UI Perspektive, konnten Sie das BeforeUpdate Ereignis Ihrer Form verwenden, um jene Felder zu überprüfen und werden sie zu versichern ausgefüllt. Die erforderliche Eigentum- oder Indexmethode kann einige recht ungerade (und hart zu verstehen) Störungen werfen, während Sie viel benutzerfreundlichere Störungen using die BeforeUpdate Methode aufbauen können. BeforeUpdate Feuer, bevor die Daten zum Tabelle geschrieben werden, also es sind für die neuen und vorhandenen Aufzeichnungen nützlich:

VorForm_BeforeUpdate (Löschen als ganze Zahl)
  Schwaches sError als Schnur
  Wenn Nz (Me.txCustomerName, "") = "" dann
    sError = „Sie müssen einen Firmennamen eintragen“
  Beenden wenn

  Wenn Nz (me.txCustomerPhone, "") = "" dann
    Wenn Len (sError) > 0 dann sError = sError u. vbCrLf
    sError = sError u. „Sie müssen eine Firma-Telefonnummer eingeben“
  Beenden wenn
 
  Wenn Len (sError) > 0 dann
    Msgbox „Sie müssen alle erforderlichen Felder ausfüllen: “ u. vbCrLf u. sError, vbOkOnly + vbExclamation, „Verfehlung oder unzulässige Daten“
    Löschen = richtet aus
  Beenden wenn
Unterseeboot beenden

Zu das „Löschen merken = zutreffend“ - dieses ist, was Zugang NICHT außer den Daten erklärt, wie ist. Benutzer müssen entweder (a) die Daten ausfüllen oder (b) Gebrauch der ESC-Schlüssel, aus der Form (die heraus zu annullieren alle Änderungen/Einsätze wegwirft).

Anmerkung können Sie das BeforeUpdate Ereignis Ihrer Kontrollen auch verwenden, um die gleiche Sache zu tun. In vielen Fällen ist dieses bevorzugt, da Sie ControlA ausfüllen manchmal lassen müssen, bevor Sie vorwählen können,/etwas in Control-B eintragen.
Weitere Lösungen  
 
programming4us programming4us