edit mode verbieten

  • guten morgen zusammen!


    ich möchte in dokumenten, in denen eine bestimmte variable mit "Änderung durchgeführt" belegt ist, den änderungsmodus deaktivieren/verbieten, am besten mit einer entsprechenden messagebox.


    wie bring ich meiner maske das bei???


    vorausdank
    philipp

    Was zum Nachdenken:


    je mehr Käse desto mehr Löcher
    je mehr Löcher desto weniger Käse


    Also: je mehr Käse desto weniger Käse

  • hab ich schon gemacht, kann die dokumente aber trotzdem noch ändern... das hab ich drinstehn



    Sub Querymodechange(Source As Notesuidocument, Continue As Variant)
    If durchgef = "Änderung durchgeführt" Then continue = False
    End Sub

    Was zum Nachdenken:


    je mehr Käse desto mehr Löcher
    je mehr Löcher desto weniger Käse


    Also: je mehr Käse desto weniger Käse

  • was ist denn "durchgef"??
    Das muessteste aber schon ein wenig definieren, z.B. mit
    source.document.durchgef(0) = "Änderung durchgeführt"

  • "durchgef" ist ein feldname


    mit source.document davor klappts, danke!


    jetz ists allerdings so daß ich in die dokumente überhaupt nicht mehr reinkomme, zur ansicht sollten sie schon noch offen sein, nur nicht änderbar.


    wenn ich die abfrage nur im querymodechange drinhab kann ich die dokumente trotzdem noch ändern...


    EDIT


    sorry, einfach vergessen diesen post, falsche maske genommen *schäm*

    Was zum Nachdenken:


    je mehr Käse desto mehr Löcher
    je mehr Löcher desto weniger Käse


    Also: je mehr Käse desto weniger Käse

  • irgendwie klappt das nicht so wie ich das will... ich kann das zwar so jetzt abspeichern, aber wenn ich ein dokument ändern will krieg ich einen type mismatch, was mach ich falsch???


    Sub Querymodechange(Source As Notesuidocument, Continue As Variant)
    If source.Document.durchgef(0) = "Änderung durchgeführt" Then
    Messagebox "Änderung ist bereits durchgeführt - keine nachträgliche Änderung mehr möglich!" And continue = False
    End If
    End Sub

    Was zum Nachdenken:


    je mehr Käse desto mehr Löcher
    je mehr Löcher desto weniger Käse


    Also: je mehr Käse desto weniger Käse

    • Offizieller Beitrag

    Warum arbeitest Du nicht mit Autoren-Feldern?


    Jeder User bekommt Autorenzugriff über eine Rolle und je nach Status wird im AUtorenfeld die Rolle eingetragen oder nicht.

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • vergiss mal das "AND" und mach nen Zeilenumbruch. Dann würd ich sicherheitshalber mal noch abfragen, ob das Feld überhaupt existiert und davor noch den aktuellen Modus abfragen. Es bringt ja nix, wenn du das ganze bei Modusänderung von Bearbeiten nach Lesemodus (beim Schliessen d. Dokumentes) abfragst. Und bei neuen Dokuemnten sollte die Abfrage auch nicht kommen, da gibt's nämlich noch kein Backend-dokument.


    Hier mal mein Codevorschlag:



    If source.editMode=False and not(source.isNewDoc) then
    If source.Document.hasItem("durchgef") then
    If source.Document.durchgef(0) = "Änderung durchgeführt" Then
    Messagebox "Änderung ist bereits durchgeführt - keine nachträgliche Änderung mehr möglich!"
    continue = False
    end if
    End If
    end if
    End Sub

    So is das mit dem Licht, mal brennt's und mal brennt's nicht.

  • autorenfelder?? hab ich noch nie davon gehört muß ich zugeben ;)


    ich bin kein notes-entwickler, hatte noch nie einen kurs oder sowas in die richtung, alles learning by doing... hab nur nebenher mal eine db gemacht, die rein von meiner abteilung verwendet wird.

    Was zum Nachdenken:


    je mehr Käse desto mehr Löcher
    je mehr Löcher desto weniger Käse


    Also: je mehr Käse desto weniger Käse