0

Änderung eines (Datum-)Feldes verhindern

Guten Abend,

ich möchte folgendes realisieren: Für meine Projektdatenbank habe ich meine Untertabelle „Aufgabe" mit sich selbst verknüpft.

Damit habe ich zum einen den „↠ Vorgänger" und zum anderen den „↞ Nachfolger", um damit die Abhängigkeiten der Aufgaben abzubilden.

Zusätzlich habe ich zwei Schalter (Ja/Nein): 

- Vorgänger vorhanden

- Nachfolger vorhanden

Wenn ich jetzt eine neue Aufgabe anlegen und den Schalter bei Vorgänger auf JA stellen, kann ich eine andere Aufgabe auswählen, die erst abgeschlossen sein muss, bevor die neue beginnt. Über den Trigger bei der Verknüpfung vom  Vorgänger wird mir dann das Ende-Datum (mit Uhrzeit) als Start-Datum in der neuen Aufgabe eingetragen.

Jetzt möchte ich aber verhindern, dass ich das Start-Datum des Nachfolger ändern kann, wenn ein Vorgänger vorhanden ist. Aktuell steht dieser Code im Trigger vom Start-Datum, was auch wunderbar klappt:

if 'Vorgänger vorhanden?' = 1 and Nachfolger.'Nachfolger vorhanden?' = 1 then
Nachfolger.'Task-Start' = 'Task-Ende'
end

Wenn die Bedingung [if 'Vorgänger vorhanden?' = 1 and Nachfolger.'Nachfolger vorhanden?' = 1 then] erfüllt ist soll aber vor der manuellen Änderung gewarnt werden [alert("Das Datum kann nicht geändert werden! Ein Vorgänger-Task ist vorhanden!"] und am besten verhindert werden - oder aber wieder das Ende-Datum des Vorgängers reingeschrieben werden

Ich habe jetzt schon mehrere Möglichkeiten getestet, aber leider ohne Erfolg.

Habt ihr eine Idee für mich?

Schönen Abend

Markus

2 Antworten

null
    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Markus,

    bei Datum gibt es in Eigenschaften das Feld schreibbar wenn. Wenn du da schreibst :

    ---

    not  '↠ Vorgänger' or not 'Task-Start'

    ---

    Dürfte man das Feld nicht mehr ändern sobald Start gfüllt ist und Vorgänger vorhanden ist. Ohne Warnung. Wird einfach nicht gehen.

     

    Leo

    • Markus.1
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Moin Leo,

    perfekt, das ist die Lösung. Jetzt weiß ich auch, wofür die Option „schreibbar" ist 😜👍🏼

    Viele Grüße
    Markus