0

Tabelle mit Schreibschutz versehen

Hallo liebe Ninox Gemeinde,

ich habe eine totale Anfängerfrage: Ich brauche so was wie einen Schreibschutz auf meine Stammdaten. (Nicht jeder, der den Datensatz mal kurz öffnet,soll sofort ändern können). Nun möchte ich aber vorab prüfen, ob überhaupt schon Daten erfaßt sind. Denn wenn der Datensatz "neu" ist, soll man natürlich sofort Daten eingeben können.  In dem Formular habe ich mir ein Ja/Nein-Feld eingebaut, Stammdaten ändern ja nein. Standardmäßig ist der Wert "nein".  Pro Feld habe ich dann eingefügt: Schreibbar wenn: 'Stammdaten ändern'. Aber das löst nur einen Teil des Problems. Die Idee war dann, zu prüfen, ob Werte in dem Feld "Unternehmen" stehen - denn wenn das Feld leer ist, ist es wohl ein neuer Datensatz. Aber ich kriege das irgendwie nicht zusammen. Gibt es dafür irgendwo was zu nachschauen? Oder hat jemand einen Tipp, wie man sowas macht? Lieben Dank schon mal im Voraus!

11 Antworten

null
    • Martin_Wackenhut
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hallo Annika, 

    Wenn ich dich richtig Verstanden hab kannst du wenn du auf der Tabellenansicht bist auf Felder bearbeiten gehen und bei „Schreibbar wenn“ 

    if Ja/nein != true or userRole() = “admin“ eingeben.

    Das heißt solange das ja-Nein-Feld nicht auf ausgewählt ist kann man das Formular ausfüllen oder du bist Admin dann hast du immer die Möglichkeit das Formular zu bearbeiten. 

    Oder du gibst bei schreibbar wenn:  ‘Unternehmen‘ = null ein 

    Gruß Martin 

    • Team Lead Customer Service
    • joerg
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hallo Annika,

    als kleiner Nachtrag:

    Bitte achte darauf, dass du bei

    userRole() = "admin"

    die geraden Anführungszeichen benutzt und nicht die kursiven/literarischen ( “...“).

    Dies erkennt Ninoxn dann nämlich nicht als solche.

     

    Beste Grüße

    Jörg

      • Torsten_Stang.1
      • vor 1 Jahr
      • Gemeldet - anzeigen

      joerg ... oder direkt

      userIsAdmin()

      nutzen ;-)

    • Team Lead Customer Service
    • joerg
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Das ist natürlich auch möglich. 👍

     

    Ich wollte das Thema mit den Anführungszeichen vor allem anbringen, weil es auch an vielen anderen Stellen vorkommt und sich der eine oder die andere vielleicht wundert, warum ein Skript nicht funktioniert.

    😉

    • DBMSL
    • Anke_Blomer
    • vor 1 Jahr
    • Gemeldet - anzeigen

    :-) Danke für die Infos. Die Idee war ja gerade, die Schreibbarkeit nicht von der Benutzerrolle abhängig zu machen. Ändern darf im Prinzip jeder. Aber eben erst nachdem bewußt entschieden wurde, das geändert werden soll. Und diese beiden Bedingungen bringe ich nicht zusammen.

    • UweG
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hallo Annika.
    Du kannst ein Button/Funktionsfeld erstellen, welchen man erst aktiv betätigen muss, wenn man etwas ändern möchte. Über eine Art Zeittrigger kann man dann die Dauer der Schreibbarkeit festlegen, so dass man den Schreibschutz nicht wieder manuell herstellen muss. So etwas in der Ninox-Reference DB vorhanden. Die Formulareingabe ist gesperrt, bis ein Button betätigt wird. Es beginnt ein vorgegebener Zeitraum, in dem man Felder bearbeiten kann. Nach diesem Zeitraum ist die Bearbeitung in dem Feld, in dem man sich gerade befindet noch möglich, verläßt man dieses, sind alle Felder wieder gesperrt. Das erfordert jedoch einiges an Skriptarbeit.

    • DBMSL
    • Anke_Blomer
    • vor 1 Jahr
    • Gemeldet - anzeigen

    oh! aha. Vielen Dank. Was genau meinst du mit Ninox-Reference DB ? Ist das das Handbuch? oder ist das die Sammlung der Webinar 2022 Datenbanken? Ich bin etwas verwirrt - da wäre ich niemals drauf gekommen.

      • UweG
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Annika Blum Es handelt sich um die 0001_Ninox-Reference im Webinarteam.
      Wenn du Interesse hast, kann ich zum Wochenende eine Beispiel-DB zum ausprobieren bauen um es auszuprobieren.

      • DBMSL
      • Anke_Blomer
      • vor 1 Jahr
      • Gemeldet - anzeigen

      UweG Hallo Uwe, jetzt erst gesehen !  Ich glaube auf die Webinarteam-Sachen habe ich Zugriff - wenn nicht geht das sicher über den Support, oder? Ja natürlich wäre das toll, wenn du eine Beispieldatenbank bauen könntest - hättest du denn Zeit dafür? Das Problem habe ja nicht ich allein - ich hatte hier verschiedene Beiträge gefunden, die in eine ähnliche Richtung gehen. Schade, das Ninox nicht sowas hat wie "onload" oder so....  Vielen Dank schon mal für dein Angebot. 

      • UweG
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Annika Blum Anbei die Beispiel-DB.

      • DBMSL
      • Anke_Blomer
      • vor 1 Jahr
      • Gemeldet - anzeigen

      UweG Oh vielen Dank! Das werde ich mir heute Abend in Ruhe zu Gemüte führen !

Content aside

  • Status Answered
  • vor 1 JahrZuletzt aktiv
  • 11Antworten
  • 151Ansichten
  • 5 Folge bereits