Microsoft Dynamics CRM 2011 | notwendige Wartungsarbeiten

Was scheinbar all zu gern vergessen wird, ist die Tatsache, dass Microsoft mit dem Download des Implementierungshandbuches auch eine Word-Datei herausgibt, die sich um den Betrieb und die Wartung von Microsoft Dynamics CRM dreht.

Hier stehen wichtige Standardaufgaben beschrieben, die sich jeder Administrator in sein Aufgabenbuch schreiben sollte. Einige Punkte sind jedoch aus meiner Sicht gar nicht oder zu kurz gefasst angesprochen und so möchte ich Euch heute exemplarisch aus meiner Praxis einen wichtigen Tipp zum Thema Wartungsarbeiten geben.

Systemaufträge

Wie dem ein oder anderen bereits bekannt sein dürfte, kommen mit der Nutzung des Systems auch allerhand Systemaufträge (oder Protokolleinträge, wie ich es gern nenne) zusammen.

Und aus der Vorgängerversion 4.0 wissen wir noch, dass eine zu stark angewachsene AsyncOperationBase-Tabelle zu Leistungsverlusten führen kann.

Doch gilt dies für CRM 2011 noch genauso?

Grundsätzlich hat sich in der 2011er Version einiges getan, was das Anwachsen der Einträge in der o.g. Tabelle reduziert oder besser managed.

Einen Faktor dürfen wir jedoch nicht übersehen: Den Faktor MENSCH!

Und so greife ich als Beispiel diverse Workflow- bzw. Prozess-Protokolleinträge auf, die allesamt mit dem Status “storniert” oder “erfolgreich” innerhalb der Systemaufträge auftauchen. Warum ist dies so?

Manchmal ist uns in der Prozesslogik kein anderer Ausstieg möglich, als nach einer Überprüfungsbedingung den Prozess abzubrechen und damit eine weitere Bearbeitung des Objekts zu verhindern.

SQLCountAsyncOperationBase

Somit sammeln sich derartige Protokolleinträge in den Systemaufträgen und lassen die Datentabelle schnell anwachsen.

Lässt man einen solchen Prozess gar noch regelmäßig nach einem Import ausführen, so können im Laufe eines Arbeitstages schnell mehrere tausend Einträge entstehen.

Doch zum Glück ist uns in der neuen Version ein nützliches Werkzeug gegeben, mit dem wir das Anwachsen der Tabelle mit solchen Protokolleinträgen kontrollieren können: Serien-Massenlöschungsaufträge

Seriensystemaufträge

Ein paar solcher Serienaufträge finden wir in der Übersicht aller Seriensystemaufträge. Und hier bietet sich auch der zentrale Zugang, wollen wir auf unsere selbst erstellten Serienaufträge zurückgreifen.

Bevor ich auf die Erstellung eines individuellen Jobs eingehe, lasst uns kurz noch auf einen im Standard ausgelieferten Systemjob blicken.

AbgeschlosseneSystemaufträgelöschen_Standard

Dieser Job hat die Aufgabe, das Protokoll von unnötigen Einträgen zu bereinigen und damit auch die AsyncOperationBase-Tabelle klein zu halten.

Doch der Filter dieses Jobs verweist auf Jobs mit dem Status “Abgeschlossen”, dem Statusgrund “Erfolgreich”, Abgeschlossen am Älter als 1 Monat und der Systemauftragstyp ist ungleich Massen-E-Mail, Importunterprozess und Workflow.

Kurz gesagt: Dieser Filter wird uns unsere Workflow Protokolleinträge nicht löschen. Und sofern Ihr sehr viel mit Prozessen arbeitet, wird das Protokoll größer und größer und größer.

Uns hilft ein neuer Serien-Massenlöschungsauftrag, den wir unter dem Punkt Weitere Aktionen aus eben jener Systemauftragsübersicht über den Eintrag Massenlöschung erstellen können.

Massenlöschungsassistent

Der Assistent lässt uns zunächst einen Filter konfigurieren, mit dem wir die Datensätze ausfindig machen, die wir löschen möchten.

MassenlöschungAssi_VorschauDatensätzeÜber die Schaltfläche Vorschau der Datensätze anzeigen könnt Ihr Eure Filter-einstellungen kontrollieren, so dass auch wirklich nur gewolltes gelöscht wird.

Massenlöschung_Assi_OptionenIn einem weiteren Fenster legt Ihr die Optionen fest, ob es sich um einen einmaligen Auftrag handelt, oder ob Ihr aus diesem Auftrag eine Serie starten wollt.

Ich empfehle hier zwei Dinge:

1.) einen sprechenden Namen für den Auftrag vergeben, der besagt, was der Auftrag tut

2.) Die Startzeit dieses Auftrags nicht in die produktive Arbeitszeit zu legen, sondern auf ein Zeitfenster zu legen, in dem solche Arbeiten hervorragend durchgeführt werden können.

Des Weiteren seht Ihr im Ausführungsintervall für den Auftrag eine Auswahlliste. Als kleinsten Wert steht hier im Standard 7. Es ist jedoch durchaus möglich hier eine 1 für einen täglichen Auftrag einzutragen. Dies vergisst oder übersieht man schnell.

Über das SDK ist es übrigens möglich, auch ein stündliches Zeitintervall für derartige Jobs zu übergeben. Warum man dies nicht im Assistenten vorgesehen hat, hängt vermutlich damit zusammen, dass man verhindern wollte, das ungewollt sehr viele stündliche Systemaufträge die Leistung des gesamten Systems schmälern.

Tipp: Wer jedoch 2 oder mehrmals am Tag einen solchen Job ausführen möchte, der kann den Job einfach ein 2tes Mal anlegen, das Intervall wieder auf 1 einstellen, aber eine andere Startzeit mitgeben. Auch darüber lassen sich Jobs mehrmals täglich durchführen.

Nachträglich_Serie_ändern

Habt Ihr einmal eine Serie angelegt und Euch ggfs. in der Startzeit vertan oder Ihr müsst das Zeitintervall ändern, so ist dies schnell erledigt.

Seriensystemauftrag finden, öffnen und aus dem Aktionen Menü Serie ändern auswählen.

Nun könnt Ihr Startzeit, Intervall oder auch Benachrichtigungsoption nachträglich anpassen.

 

 


Neuigkeiten_ÜbersichtNicht nur Protokolle von erfolgreichen oder stornierten Systemaufträgen sind es, die unser System “belasten”, sondern auch die mit dem November Service Update veröffentlichten Nachrichten.

Sie sind hilfreich, ohne Frage, doch irgendwann verliert man auch die Übersicht. Und ähnlich wie man sich unter Twitter, Facebook & Co. Statusnachrichten nur in einem begrenzten Zeitraum rückwirkend anschaut, so verhält es sich auch in Eurem Nachrichtensystem.

Da es automatische und manuelle Nachrichten gibt, empfiehlt es sich automatisch erzeugte Nachrichten die Älter als ein bestimmter Zeitraum sind, aus dem System über einen Serienauftrag zu löschen.

Massenlöschung_Assi_Nachrichten

Ein möglicher Filter könnte – wie auf dem Bild links zu sehen – aussehen. Hierbei werden nur die automatisch vom System erzeugten Nachrichten aus einem Zeitraum gelöscht.

Manuelle – vom Nutzer erstellte – Nachrichten oder auch manuelle – von einem Prozess erstellte – Nachrichten bleiben im System erhalten.

Neuigkeiten_nach_Bereinigung

Und Eure Neuigkeiten sind anschließend deutlich übersichtlicher.

Und was ist mit Kommentaren, die Ihr zu einem automatischen Eintrag erstellt habt? Nun, auch diese werden durch den Auftrag mit gelöscht, wenn Ihr die Bildserie aufmerksam verfolgt habt.


Überwachung_Protokoll

Bleibt noch ein letzter, dennoch wichtiger Punkt, die Überwachungsprotokolle.

Hat man die Überwachung aktiviert, können auch hier diverse Protokollaufträge auflaufen, von denen man sich zum einem Zeitpunkt X mit größter Wahrscheinlichkeit trennen kann.

Leider ist uns hier nicht die Möglichkeit gegeben worden, dies ebenfalls über einen Serien-Massenlöschungsauftrag zu kontrollieren, da es sich um eine besondere Form der Datenaufbereitung handelt.

Protokolle_löschen

Doch auch hier findet sich in der Verwaltung der Überwachungs-protokolle eine Möglichkeit, sich von älteren Einträgen zu befreien.

Tipp: Es werden immer die Protokolle eines Quartals zusammengefasst. Ihr löscht also auch immer gleich die Daten eines gesamten Quartals.


So, damit für heute erst einmal wieder genug Tipps vorgestellt. Entwickelt Eure eigenen Wartungspläne aus diesen Vorschlägen und Ihr werdet in Eurem System nicht nur eine Menge Leistungsreserven entlocken, sondern auch Eure Nutzer glücklicher machen.

 

Technorati Tags:

2 Gedanken zu “Microsoft Dynamics CRM 2011 | notwendige Wartungsarbeiten

  1. Pingback: Microsoft Dynamics CRM 2011 | notwendige Wartungsarbeiten (2. Teil) - Microsoft Dynamics CRM & Co - CRM Technical Blogs - Microsoft Dynamics Community
  2. Pingback: Microsoft Dynamics CRM 2011 | notwendige Wartungsarbeiten (2. Teil) « Microsoft Dynamics CRM & Co

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s