Project for the Web – Spalten im Project Center sperren

Nach meinem letzten Artikel zum Thema „Anzahl der verspäteten Aufgaben ins Project Center eintragen“, kam gleich die Frage aus der Community, wie man die Spalte sperren kann, dass keine weiteren Änderungen mehr vorgenommen werden können. Da diese Frage nicht nur die spalte „Delayed Task“ aus meinem vorherigen Artikel betrifft, sondern auch jede andere benutzerdefinierte Spalte die ihr im Model-Driven-App Project hinzufügt, möchte ich euch in diesem Artikel zeigen, wie ihr die Werte in der Spalte schützt.

Die Business-Rules (Geschäftsregeln)

Das sperren von Spalten könnt ihr über die Business-Rules bzw. Geschäftsregeln umsetzen. Diese werden in der Entität erstellt, in der sich die Spalte befindet, die ihr sperren wollt. Also in meinem Fall die Entität „Projekte“ aus meinem letzten Beispiel. Die Funktionsweise ist relativ einfach. Eine Business Rules arbeitet nach dem IF/ELSE-Prinzip. Hier wird ein bestimmter Wert durch eine Bedingung abgefragt und danach erfolgen die Anweisungen durch die Komponenten. Legen wir eine Business-Rules zum sperren der „Delayed Task“ Spalte aus meinem letzten Artikel an. Melde dich an dem make.powerapps.com an. Solltest du dich schon auf einer Seite in Microsoft 365 befinden, so klicke auf das App-Startfeld und klicke auf „Power Apps“. Klicke auf der rechten Seite auf „Tabellen (1)“, wähle in der Mitte die Option „Alle (2)“ und gebe im Suchfeld den Namen „Projekt (3)“ ein. Dir werden die entsprechenden Suchergebnisse angezeigt. Klicke auf die Entität „Projekt (4)“.

01 - Projekt Entität (Tabelle) öffnen
Projekt Entität (Tabelle) öffnen

Klicke jetzt unter der Rubrik „Anpassungen“ auf den Link „Geschäftsregeln“. Klicke im oberen Bereich auf „+ Neue Geschäftsregel“, um den Regeldesigner zu öffnen.

Neue Geschäftsregel erstellen
Neue Geschäftsregel erstellen

Es öffnet sich der Regeldesigner. Ändere als erstes den Namen und die Beschreibung der Regel. Klappe hierzu die Eigenschaften der Regel auf. Klicke hierzu auf den Pfeil nach unten, hinter dem Namen „Neue Geschäftsregel (1)“. Gebe jetzt einen Namen (2) und eine Beschreibung (3) für die Regel in die dafür vorgesehenen Beschreibungsfelder ein.

Regelnamen und Beschreibung eingeben
Regelnamen und Beschreibung eingeben
Einrichten der Bedingung

Im nächsten Schritt müssen wir jetzt eine Regel erstellen. Diese Regel soll prüfen, ob ein Wert in der Spalte „Delayed Task“ enthalten ist, oder die Spalte keinen Wert enthält. Diese Überprüfung machen wir mit einer Bedingung. Die erste Bedingung wird beim erstellen der Regel durch den Regeldesigner hinzugefügt und durch ein lila Quadrat angezeigt (1). Klicke mit der Maus auf die Bedingung. Auf der rechten Seite öffnen sich die Eigenschaften zu der Bedingung, die wir jetzt angeben können. Trage als erstes einen Anzeigenamen für die Bedingung ein (2). Wähle dann auf der rechten Seite, unter dem Auswahlfeld „Feld (4)“, die gewünschte Spalte aus. In meinem Fall die Spalte „Delayed-Task“. Wähle als nächstes unter Operator die Option „Enthält Daten (4)“. Da wir keine weiteren Bedingungen brauchen, speicherst du deine Eingabe indem du im unteren Bereich den Button  „Anwenden (5)“ klickst.

Eingabe der Bedingung für die Regel
Eingabe der Bedingung für die Regel

Hinweis: Leider passiert es oft, dass man vergisst auf den Button „Anwenden“ zu klicken. Dadurch werden die zuvor getroffenen Einstellungen nicht übernommen! Vergewissere dich immer, dass du den Button klickst, bevor du weitere Aktionen ausführst!

Komponente hinzufügen

Jetzt musst du nur die Komponente „Sperren/Entsperren“ hinzufügen und die Eigenschaften für diese einrichten. Klicke hierzu auf der linken Seite die Registerkarte „Komponenten“. Klicke mit der Maus auf die Komponente „Sperren/Entsperren“ und halte die Maustaste gedrückt. Ziehe die Komponente per drag-and-drop an den Haken der zuvor eingerichteten Bedingung und lasse die Maustaste dann wieder los. Die Ansicht sollte wie folgt aussehen.

Komponente an die Bedingung anfügen
Komponente an die Bedingung anfügen

Jetzt musst du genau wie bei der Bedingung, die Eigenschaft für die Komponente eingeben. Gebe als erstes unter Anzeigenamen wieder eine gewünschte Beschreibung ein (1). Wähle dann unter „Sperren/entsperren“ die Spalte „Delayed Task (2)“ und achte darauf, dass darunter die Option „Sperren (3)“ eingetragen ist. Übernehme die Einstellungen, indem du auf „Anwenden“ klickst.  Die Regel sollte jetzt so aussehen.   

Einrichtung der Komponente inkl. Eigenschaften
Einrichtung der Komponente inkl. Eigenschaften

Jetzt kannst du die Regel aktivieren. Klicke hierzu im oberen Bereich auf „Speichern“. Dieser Vorgang kann einen kleinen Moment dauern. Nachdem das Speichern abgeschlossen wurde, wird der Button „Aktivieren“ angezeigt. Klicke auf den Button „Aktivieren“. Auch dieser Prozess dauert einen kleinen Moment. Schließe das Fenster „Bestätigung der Aktivierung von Prozess“ mit „Aktivieren“.

Bestätigung der Aktivierung von Prozess
Bestätigung der Aktivierung von Prozess

Regel überprüfen

Jetzt kannst du die Regel überprüfen. Öffne die Model-Driven-App von Project. Wechsel in die Ansicht, in der du die Spalte hinzugefügt hast, die wir gerade mit der Regel gesperrt haben. Es können jetzt keine Daten mehr manuell eingetragen werden.

Aktivierter Schreibschutz der Spalte nach aktivierter Regel.
Aktivierter Schreibschutz der Spalte nach aktivierter Regel

Hinweis: Solltest du das Model-Driven-App Project geöffnet haben, so aktualisieren zwei mal die Browseransicht.