Nachdem ich in der Lage war, den Dienst „Management Reporter 2012 Process Service“ zum Laufen zu bringen, war der nächste Schritt, den Data Mart zurückzusetzen. Also den Datentopf, der vom Dienst befüllt wird und als Grundlage für die Berichte dient. Zurücksetzen muss man diesen in ein paar definierten Situationen, damit den Finanzberichten wieder korrekte Daten zugrunde liegen. Der häufigste wird sein, dass man eine Sicherung der Datenbank einspielt. Das ist auch ganz logisch, weil Management Reporter inkrementell arbeitet und im laufenden Betrieb nur geänderte Daten integriert.
Ich hatte schon sehnsüchtig auf Update 1 (auch bekannt als das May Update) gewartet, weil ich der Liste der angekündigten Neuheiten die Möglichkeit zum Zurücksetzen des Data Mart genannt wurde (und ich wusste, dass das bei uns nötig sein würde wegen des grundsätzlichen Einsatzes von Datenbankbackups). Außerdem habe ich einen Blogeintrag mit Titel Resetting the Management Reporter data mart gefunden, der zwar recht neu ist, aber sich nicht auf das neue Microsoft Dynamics AX bezieht. Allerdings trifft vieles darin trotzdem zu und der Rest weist in die richtige Richtung! Es gibt bei den beschriebenen PowerShell-Befehlen eine Menge Parameter und wenn man dann mal davorsitzt, wird man feststellen, dass sich etwas verändert haben muss. Es gab nämlich z. B. im Zusammenspiel mit AX 2012 zwei Datenbanken; eine für die Einrichtungsdaten und eine weitere für die Transaktionen etc. In der aktuellen Version (AX7) gibt es offenbar nur noch eine Datenbank. Was soll man also jeweils angeben? Es geht viel einfacher, als ich dachte!
Den Management Reporter 2012 Process Service anhalten
Als erstes muss man in den Windows-Diensten den Management Reporter 2012 Process Service anhalten.
Den Data Mart mithilfe von PowerShell zurücksetzen
Bei Verwendung einer virtuellen Maschine, in der alle Komponenten zusammengeworfen sind (aktuell trifft das auf alle möglichen Setups zu), kann man das PowerShell-Kommando mit stark reduzierten Parametern verwenden. Glücklicherweise reichen die ersten beiden beschriebenen aus, alles andere wird automatisch aus der Konfiguration gelesen. Man muss also nur folgende beiden Kommandos mit PowerShell (als Administrator ausführen) abschicken (die Pfade könnten bei Azure-deployed VMs abweichen):
Import-Module 'C:\FinancialReporting\Server\Console\Microsoft.Dynamics.Performance.Deployment.Commands.Integration.dll'; Reset-DatamartIntegration -Reason BADDATA -ReasonDetail "Restored database from backup";
Nach dem Zurücksetzen finden sich der angegebene Rücksetzungsgrund und die detaillierte Beschreibung im Ereignislog. Mit der Ereignisanzeige (Event Viewer) findet man die entsprechenden Einträge unter Applications and Services Logs > Microsoft > Dynamics > MR-Logger.
Den Dienst wieder starten
Jetzt startet man den Dienst Management Reporter 2012 Process Service und lässt ihn sein Werk vollrichten.
Fortschritt überwachen
In Abhängigkeit zur Datenmenge kann es schon ein bisschen dauern, bis so ein Data Mart frisch aufgebaut ist. Ein wenig nachverfolgen kann man das, indem man SQL Server Management Studio verwendet und eine Abfrage an die View Connector.MapsWithDetail, die sich in der Datenbank ManagementReporter befindet, absendet. Sobald alle angezeigten Datensätze in der Spalte LastRunTime einen Wert haben, sollte die initiale Integration abgeschlossen und die Anzeige von Finanzberichten verfügbar sein.
Ein besonderer Dank gilt dem Team bei Microsoft, das für Financial Reporting zuständig ist und mir ein wenig unter die Arme gegriffen hat, das Ganze erstmalig auf meiner Entwicklungskiste ans Fliegen zu bekommen!
*This post is locked for comments