0

Messagebox mit einer Abfrage "ja" oder "nein", um davon abhängig eine Codevariante a) oder b) auszuführen

Hallo zusammen,

ich habe mir mit Ninox ein Zeiterfassungs- und Fakturierungssystem gebaut. Ich habe eine Schaltfläche "Zeiten auf abgerechnet setzen" implementiert. Nun passiert das schonmal, dass ich versehentlichauf diesen Button angeklickt habe, bevor ich die Rechnung erstellt hatte. Daher möchte ich eine Sicherheitsabfrage mittels einer Messagebox einbauen.

Z.B. so:

1) Wird auf den Button "Zeiten zurücksetzten" geklickt dann
2) gebe Messagebox aus "Text: Alle Zeiten werden zurückgesetzt, Sicher a)Ja b)nein
3) Wird in der Messagebox auf Button Ja geklickt, dann sollen die Zeiten zurückgesetzt werden (diesen Code habe ich bereits)
4) Wird auf nein geklickt, dann soll die Messagebox geschlossen und nichts weiter unternommen werden.

Vielen Dank für eure Unterstützung
Snikey

4 Antworten

null
    • Leonid_Semik
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo Snikey,

    Die Mesagebox kann momentan nur als Information ausgegeben werden. Du kanns höchstens noch zwei Befehlsschaltflächen einbauen und diese anzeigen lassen, wenn du die Abfrage starten möchtest. Ich habe mal ein Beispiel für Löschen der Datensätze geschrieben. Dort wird zwar die Messagebox aufgeführt, aber diese hat keine Funktionen. Außerdem funktioniert alert("Text") nur in der App.

    https://www.dropbox.com/s/hztqiuo8lrg19x2/Deleting.ninox?dl=0

    Grüße

    Leo

    • Kambiz
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo Leo,

    vielen Dank für Deine schnelle und kreative Lösung.

    Vorab muss ich sagen, dass ich den oben genannten Button pro Projekt monatlich mindestens 1x angklicken muss, um die Zeiten in der Tabelle Zeiterfassung als "abgerechnet" zu definieren.

    Deine Lösung, adapiert auf meinen Bedarf, heisst somit: Zeige beim Aufrufen des Projekts xxx den Button "Zeiten zurücksetzen". Wenn darauf geklickt wird, dann blende den vorherigen Button aus und blende zwei neue Buttons ein a)Bist du sicher? b)lieber abbrechen  ein.

    Das Problem was ich auf die schnelle gemerkt habe ist, dass der Button "Zeiten zurücksetzen" nur einmal eingezeigt wird. Beim weiteren Aufrufen des Projekts tauchen nur noch die zwei neue Buttons a)bist du sicher b)lieber abbrechen auf. Ich kriege es nicht hin, dass der erste Button immer als erstes angezeigt wird.

    Hast Du da evntl. noch eine Idee?

    Vielen Dank für Deine Mühe!

    • Leonid_Semik
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Na ja, in meiner Datenbank gibt es ein verstecktes "Ja/Nein" Feld namens "Visible". Die Sichtbarkeit der Knöpfe ist von dem Wert des Feldes abhängig und beim Klick wird der Wert auch geändert. Da muss du überprüfen, ob die Skripte bei allen Knöpfen vollständig sind.

    • Kambiz
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo Leo,

    ich habe gestern übersehen, dass durch das Klicken des Buttons "Nein" wieder der ursprüngliche Zustand da ist. D.h. der Delete- bzw. Zeitenzurücksetzen-Button erscheint wieder.

    Damit ist es mir gut geholfen. Ich werde Deine Lösung in meine Datenbank einbauen.
    Ich danke Dir für Deine Unterstützung.

    Kami