Neuigkeiten:

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

Mobiles Hauptmenü

Rechte nach der Anmeldung

Begonnen von maka13156, Mai 26, 2013, 21:07:49

⏪ vorheriges - nächstes ⏩

maka13156

Hallo Leute, da ich neu bin und Anfänger bin brauche ich eure Hilfe,
ich habe eine Datenbank erstellt und komme nicht weiter. Mann muss sich über eine Anmeldefenster Anmelden um in die Eingabemaske zu kommen.
es gibt 3 Kategorien  der Admin, User und die nur Lesen und da ist auch mein Problem , es kann sich jeder anmelden und kann alle in den Formular machen und das sollte so nicht sein der Admin darf alles, der User darf das Formular ausfüllen aber nicht löschen und als letztes der Leser das darf nur lesen. Da ich nicht weis wie das geht bitte  ich um Hilfe.

MfG
Mario ??? ::) :'(

P.S um die Datei hoch zu laden musste ich in der Beschluss - kopie - kopie(2) hinter den punkt z01 entfernen und durch zip ersetzen. Bitte vor dem entpacken die Dateiendung zip in z01 umwandeln

[Anhang gelöscht durch Administrator]

Jonny

Hallo,

ich habe ein ähnliches Problem so gelöst.
Alle Felder sind gesperrt.
Die Felder haben unterschiedliche Tag´s (Eigenschaft Marke)

Anmeldung nur Lesen bedeutet das die nachfolgende Routine nicht aufgerufen wird.
Anmeldung Kalkulatur (der darf nur bestimmte Felder eingeben) dies Routine LockcontrolsK. Hier werden alle Felder mit der Marke K entsperrt.
Anmeldung Admin die Routine LockControlsA, alle Felder werden entsperrt.
Das Ganze beim öffnen des Forms.

hier die Routinen:

Public Sub LockControlsK(ByRef frm As Form, ByVal bolLocked As Boolean)
    Dim ctl As Control
    On Error Resume Next
    For Each ctl In frm.Controls
        If ctl.Tag = "k" Then
            ctl.Locked = bolLocked
            ctl.Enabled = True
        End If
    Next ctl
    Set ctl = Nothing
End Sub

Public Sub LockControlsA(ByRef frm As Form, ByVal bolLocked As Boolean)
    Dim ctl As Control
    On Error Resume Next
    For Each ctl In frm.Controls
        'If ctl.Tag = "k" Then
            ctl.Locked = bolLocked
            ctl.Enabled = True
        'End If
    Next ctl
    Set ctl = Nothing
End Sub

Gruß

Johann

maka13156

#2
HalloJohann,
Vielen Dank für die schnelle Hilfe, leider weiss ich noch wo ich die rotine einfügen muss und wo ich das alles sperren soll. Könntest du mir das in meiner meiner Datei einfügen oder es mir so erklären das es auch ein Anfänger versteht.
Gruss
Mario

Jonny

Hallo,

die beiden Routinen sind in ein Modul gespeichert.

Beim öffnen Formular stellts du diesen Befehl ein:
    Call LockControlsk(Me, True) oder     Call LockControlsA(Me, True) je nach Anmeldung.

Die Marken findest du bei den Eigenschaften der Felder Register Andere ganz unten.

Gruß

Johann


maka13156

#4
Hallo Johann,
Danke noch mal wenn ich zu Hause bin werde ich es ausprobieren
Noch mal Danke

Gruss
Mario

maka13156

#5
Hallo Johann,
so ich habe alles so gemacht wie du es beschrieben hast leider funktioniert das nicht es  wird kein befehl ausgeführt was mache ich falsch

gruß
mario


[Anhang gelöscht durch Administrator]

DF6GL

#6
Hallo


vermutlich nicht alles..  ;-)

Das fehlt:

ZitatBeim öffnen Formular stellts du diesen Befehl ein:
   Call LockControlsk(Me, True) oder     Call LockControlsA(Me, True) je nach Anmeldung.


und der Aufruf dieser Prozeduren darf auch nicht in der Eigenschaft "Marke" stehen , sondern eben ein "Tag" oder eine "Marke".

Der Aufruf erfolgt wie oben zitiert im Form_Open oder Form_Load-Ereignis eines jeden Formulares, das davon betroffen ist.

maka13156

#7
Hallo
Danke für den hinweis, leider verstehe ich das nicht. Bitte erkläre das mir so das ich es auch als Dummer verstehe oder zeige es mir.

gruß
mario

[Anhang gelöscht durch Administrator]


maka13156

#9
Hallo,
Danke für den Hinweis kommt nicht mehr vor und noch einmal Danke für eure Hilfe


Gruß
mario

Gilgamesh

#10
Hallo,

ich hab diesen Beitrag die letzten Tage mitverfolgt und das gleiche Problem.
Nur eine Frage zum Sperren der Felder: Wie sperre ich denn einen Button?

Oder wird das über deine beiden Routinen gelöst?


Habs gefunden, richtig lesen müsste man, sry^^


Gruß
Gilgamesh

maka13156

Hallo Danke für eure Hilfe.

mario

Gilgamesh

Hi,

ist es auch möglich, das man sich zuerst registriert?
Also ich wollte das so machen das nach der Registrierung (mit einer Mail-Adresse) eine Anfrage an den Admin per Mail geschickt wird und dieser den Benutzer erst freischalten muss, bevor dieser an der DB arbeiten kann.

Ist das machbar? Wenn ja, wie?

Gruß
Gilgamesh

database

Hi,

die Möglichkeiten sind in dem Fall schon recht weit gestreut!

Da du aber den Admin zur Sprache bringst nehme ich an, dass sich dein 'Problem' in einer Domänenumgebung befindet?

Wenn ja, sind alle 'interessierten' Benutzer mit der Mailadresse Mitglieder der Domäne?

Wenn ja, dann kann der Admin diesen Benutzern 'Ändern-Rechte' auf das Verzeichnis des Backends einrichten.

Das Abfangen des Zugriffs musst du natürlich in die Startumgebung des FE einbauen - denkbar wäre z.B. ein Anmelden mit dem DomBenutzernamen
und nachfolgendes Abfangen eines dadurch provozierten Zugriffsfehlers auf Backend.


Gilgamesh

Hallo,

es war geplant die DB über einen Share Point Server zur Verfügung zu stellen, das ist aber noch nicht sicher.
Aber danke für deine Antwort!

Gruß
Gilgamesh