Project for the Web – Ressourcen können nicht gelöscht werden

Bei einem unserer Kunden hatten wir vor einiger Zeit das Problem, dass er unterschiedlichste Ressourcen innerhalb der Model-Driven-App von Microsoft Project nicht löschen konnte. Jedes Mal kam die Fehlermeldung „The record could not be deleted“. In diesem Blog möchte ich dir zeigen, wie du das Problem analysieren und die entsprechenden Ressourcen anschließend löschen kannst.

Ursache der Fehlermeldung

Wenn Du eine Ressource in Project for the Web anlegst, werden die Informationen zu dem Datensatz nicht nur in diese Tabelle geschrieben, sondern einige Informationen auch in andere Tabellen verlinkt. Dadurch können zugehörige Informationen zu einem Datensatz auch von anderen Tabellen abgefragt werden. Die Tabelle „Buchbare Ressourcen (Bookable Resource)“ hat zwei Beziehungen zu den Tabellen „Buchbare Ressourcenbuchungen“ und Projektteammitglieder die mit einer 1:N-Beziehung verlinkt sind. Ebenfalls besitzen Sie als Verhaltenstyp die Option „Referntial, Restrict Delete (Referenzziel, Löschbeschränkung)“, was ein Direktes löschen verhindert. Genau das ist der Grund, warum die Ressourcen nicht direkt aus der Tabelle „Buchbare Ressourcen“ entfernt werden können.

Abhängigkeiten überprüfen

Stellen wir uns als erstes die Frage, wie du herausfinden kannst, welche Tabellen in Abhängigkeiten zueinanderstehen.  Normalerweise kannst du diese Informationen über die Tabellen-Eigenschaften in den Datenverse anzeigen lassen. Im Fall Project ist das allerdings nicht möglich, denn die Tabelle „Bookable Resource“ wird dir gar nicht unter den Tabellen angezeigt. Diese Informationen kannst du im Moment nur über das Dynamic 365 – Admincenter herausfinden. Öffne hierzu deine Power-Platform-Umgebung. Klicke in der oberen rechten Ecke auf das Zahnrad (Einstellungen). Wähle in dem Kontextmenü die Option „Erweiterte Einstellungen“. Klicke im Dynamcis-Admin-Center auf den Pfeil neben den „Einstellungen“ und klicke dort auf „Anpassungen“. Wähle im nächsten Fenster die Option „System Anpassen“ aus. Suche den Eintrag „Booking Ressources“ und extrahiere die Einträge darunter. Wähle dort die Option „1:N Relationships“. Suche jetzt die Abhängigkeiten zu anderen Tabellen. Hierzu suchst du in der Spalte „Type of Behavior (Verknüpfte Entitäten)“ alle Einträge mit „Referntial, Restrict Delete (Referenziell, Löschbeschränkung)“ heraus. In meiner Umgebung besitzt die Tabelle „Bookable Resource (Buchbare Ressourcen)“ und „Projektteammitglieder“ diese Abhängigkeitsform.

Nun musst du auf diese Tabelle zugreifen. Dies geht zwar bei allgemeinen Datensätze auch über das Tabellen-Tool in Power-Apps, allerdings nicht in den Project-Tabellen. Solltest du versuchen die gefunden Datensätze dort zu löschen, bekommst du die Info angezeigt, dass das Löschen der Datensätze nur über die Project UI erfolgen kann. Problem hierbei ist, dass die Tabellen nicht in der Standardkonfiguration in die Project-App eigebunden sind. Also musst du die Tabellen in die Model-Driven-App einbinden.

Einbinden der Tabelle „Projektteammitglieder“

Wechsel in das Power App Center. Öffne die Project Model-Diven-App im App-Designer. Klicke hierzu auf der Linken Seite auf die Option „Apps“. Klicke dann bei der Project-App auf „Weitere Befehle“ und wähle im Kontextmenü die Option „Bearbeiten“.

Ich möchte die Tabelle unter der Rubrik „Ressourcen“ hinzufügen. Hierzu klicke ich auf das „Erweiterte Menü“ bei dem Gruppennamen „Ressourcen“ und wähle dann die Option „Neue Seite“ aus.

Wähle in dem sich öffnenden Fenster die Option „Dataverse-Tabelle“ aus und klicke dann auf weiter. Gebe in der Suche „Projekt“ ein und wähle dann die Tabelle „Projektteammitglieder aus“. Kicke anschließend auf Hinzufügen.

Finde hier den Datensatz, den du löschen möchtest. Markiere diese und klicke dann im oberen Menü auf „Löschen“.

Sobald die Ressource hier gelöscht wurde, kannst du diese dann auch im Ressourcencenter löschen. Nachdem du die Ressource dann gelöscht hast, kannst du dich entscheiden, ob du die Tabelle eingebunden lassen möchtest oder nicht. Solltest du die Tabelle wieder löschen wollen, so klicke erneut auf das entsprechende Gruppenmenü und wähle dann im Kontextmenü die Option „Aus Navigation entfernen“. Bestätige die nächste Abfrage mit „Seite entfernen“.

Hinweis: Die beschriebenen Schritte funktionieren alle im App-Designer. Du brauchst die App nicht veröffentlichen!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Die folgenden im Rahmen der DSGVO notwendigen Bedingungen müssen gelesen und akzeptiert werden:
Durch Abschicken des Formulars wird dein Name, E-Mail-Adresse und eingegebene Text in der Datenbank gespeichert. Für weitere Informationen wirf bitte einen Blick in die Datenschutzerklärung.