Ungültiges Argument

CRM 2011 Fehler: “Ungültiges Argument” beim Speichern einer Sicherheitsrolle

Dynamics CRM 2011 onpremise Sicherheitsrolle

Meldung bei dem Versuch, eine geänderte Sicherheitsrolle zu speichern

Bei einem Dynamics CRM 2011-Anwender mit OnPremise-Installation musste eine Sicherheitsrolle geändert werden.  Beim Speichern der Rolle trat eine Fehlermeldung mit Hinweis auf ein “Ungültiges Argument” auf.

Der entsprechende Eintrag in der Protokolldatei lautete:

“You are attempting to update in the active context when there exists an active row, but either the active row has a state other than publish or unpublish or you are attempting to do a published update of a publishable component, which is not allowed. _Input.IsBeingPublished: True; CurrentState: Microsoft.Crm.Platform.SolutionAwareComponents.BusinessComponentState”

Dieser Fehler trat sowohl im Internet Explorer als auch bei Mozilla Firefox auf. Die Veröffentlichungsfunktionen in anderen Bereichen (z.B. Workflows oder Duplikatserkennung) funkionierte ohne Probleme. Eine andere, testweise veränderte Sicherheitsrolle hatte keine Probleme beim Speichern und Veröffentlichen. Damit war für uns klar, dass es sich um ein Problem mit dem einzelnem Datensätzen der Sicherheitsrolle handeln muss.

Diese (defekte) Sicherheitsrolle konnten wir über die Funktion “Speichern unter” kopieren. An der Kopie der Sicherheitsrolle konnten wir ohne Probleme die gewünschten Änderungen vornehmen und danach Speichern und Veröffentlichen. Statt der weiteren Lösungssuche haben wir dann als Workaround die Sicherheitsrollen bei den Anwendern getauscht. Damit war unser Problem gelöst, aber die eigentliche Ursache noch unbekannt.

Bei einer Nachrecherche im Internet sind wir dann noch auf einen Blogbeitrag mit dem gleichen Problem gestoßen. Auch hier wurde die Ursache in den Datensätzen der konkreten Sicherheitsrolle vermutet. Als Lösung wurden allerdings direkte Update in der SQL-Datenbank von Microsoft Dynamics CRM vorgenommen. Hinweis: Dieses Vorgehen wird von Microsoft “nicht empfohlen” und ist daher völlig unsupported.