Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

individualisierte Fehlermeldung für das Frontend

Begonnen von Carl, November 10, 2017, 13:55:04

⏪ vorheriges - nächstes ⏩

Carl

Mit welchem VBA kann ich die Fehlermeldung, die kommt, wenn der User keine Berechtigung hat das BE zu lesen, individualisieren? Gibt es da was Vorbereitetes?

Carl

steffen0815

Hallo,
wer bzw. was gibt den welche konkrete Fehlermeldung aus?
Wer bzw. was verhindert den Zugriff auf's BE?
Gruß Steffen

Carl

Das BE liegt in einem Ordner, auf den nur zugriffsberechtigte User Zugriff haben. Diese bekommen auch das FE zugeschickt.

Wenn jetzt ein zugriffsberechtigter User das FE an einen nicht-zugriffsberechtigten User weiter schicken würde, dann würde bei diesem nicht-zugriffsberechtigten User beim Öffnen des FE eine Fehlermeldung erscheinen die sagt, dass er nicht auf das BE zugreifen oder dass ein Fehler vorliegt.

Diese Fehlermeldung ist schwer verständlich und ich würde sie gern neu formatieren und vereinfachen und ersetzen. D.h. sie soll unterdrückt werden und statt dessen soll eine vorbereitete Fehlermeldung kommen, z.B. ein kleines Formular.

Wie macht man das? Gibt es dafür z.B. einen Code, den man in ein globales Modul einfügen kann?

Carl

MzKlMu

Hallo,
die jetzige Fehlermeldung muss doch aber auch jemand programmiert haben.
Access hat von Hause aus keine Userverwaltung (mehr) und kann somit keine Berechtigungen kontrollieren.
Gruß Klaus

steffen0815

#4
Hallo,
du solltest im Autostart(Makro) prüfen, ob das BE existiert und gegebenfalls ob Schreibrechte existieren.
Da du vermutlich/hoffentlich mit UNC-Pfad arbeitest, kannst du das FSO-Objekt dafür nutzen.
Den Pfad zum BE kannst du fest vorgeben, aus einer Tabelle lesen oder optimal aus einer Tabellenverknüpfung ermitteln.

@Klaus:
Ich denke es geht um Windowsrechte.
Gruß Steffen

Carl

Bitte lest #3 nochmal.

Wenn ein nicht auf das BE zugriffsberechtigter User das FE öffnet, generiert das FE eine normale Access-Fehlermeldung in einem grauen Access-Fehler-Meldungsfenster. Das würde ich gern durch ein selbst formatiertes Fenster ersetzen.

Grund: Das graue Access-Fehler-Meldungsfenster a la "Finde Tabelle sowieso nicht oder blah blah blah" sieht aus wie ein Programmierfehler. Statt dessen soll aber der User zurück gemeldet bekommen, dass er nicht berechtigt ist. Damit er weiß worum es geht.

DF6GL

Hallo,


Du solltest präziser sein und den genauen Wortlaut der Fehlermeldungen zeigen...


Vermutlich wird diese Meldung dann erzeugt, wenn ein gebundenes Formular geöffnet wird.

In diesem Fall kann die Ereignis-Eigenschaft  "Bei Fehler"  des Form benutzt werden, um eine user-definierte Meldung anzuzeigen und/oder entspr. zu reagieren:


Private Sub Form_Error(DataErr As Integer, Response As Integer)

If DataErr = 3024 Then
   MsgBox "Keine Berechtigung"
   Response= acDataErrContinue
   Docmd.Close
   Application.Quit
End If

End Sub


steffen0815

#7
Hallo Carl,
ich habe extra geschrieben im AutoExec-Makro.
Das wird als erstes ausgeführt, bevor irgendwelche Formulare geöffnet werden. Dort hinterlegst du eine Funktion, die schaut ob das BE erreichbar ist, wenn nicht kannst du dein Fehlerformular öffnen und anschließen gleich noch die DB schließen.

Gruß Steffen

Carl