Diverse Aktionen sollten Sie nicht ohne Nachfrage ausführen.
Dazu gehört z.B. das Löschen von Datensätzen. Zwar gibt es im Script die Möglichkeit eine solche Abfrage zu aktivieren, dem Anwender wird jedoch die bedingt Möglichkeit gegeben, den weiteren Ablauf entgegen der vorgesehenen Funktion zu beeinflussen. Für ungeübte Anwender kann das durchaus irritieren sein. Deshalb Finger weg von dieser Möglichkeit.
Datensatz/Abfrage löschen [ Mit Dialog: Aus ]
Das hat jedoch zur Folge, dass FM den Datensatz ohne Abbruchmöglichkeit löscht. Das sollten Sie tunlichst vermeiden.
Wenn es einfach nur darum geht, ob ja oder nein, dann ist der folgende Ansatz der Einfachste:
In der Datenbanktabelle habe ich das globale Feld1) ‘puffer’, welches ich auch noch für andere Abläufe verwende.
Als Erstes schreibe ich ‘nein’ in das Feld. Dann öffne ich ein ‘eigenes Dialogfeld’ mit einem einzigen Button, welchen ich mit ‘Weiter’ beschrifte. Das Feld ‘puffer’ füge ich als einziges Eingabefeld hinzu.
Klickt man nun im Ablauf auf ‘Weiter’, prüft FM den Inhalt des Feldes ‘puffer’. Nur wenn der Anwender ‘ja’ in das Feld geschrieben hat. löscht FM den Datensatz.
Feldwert setzen [ puffer ; ’nein’ ] Eigenes Dialogfeld anzeigen [] Wenn [ puffer = ‘ja’ ] Datensatz/Abfrage löschen [ Mit Dialog: Aus ] … weiterer Verlauf … Ende (wenn) Feldwert setzen [ puffer ; ’’ ]
Steht nicht 'ja' im Feld 'puffer', schliesst sich einfach nur das Dialogfeld ohne das Weiteres passiert. Steht 'ja' im Feld, wird der DS gelöscht und das Script kann beliebig fortgeführt werden, um z.B. das Layout zu wechseln, von der Detailanzeige zur Listenansicht.
1) Ein globales Feld hat in jedem Datensatz den selben Inhalt. Eine gute Möglichkeit, Inhalte über unterschiedliche Datensätze zu verarbeiten.
--- Ich nix putzen hier, ich nur Signatur. ---