Befehle des Menübands überspringen
Zum Hauptinhalt wechseln

Februar 14
Syntax Error in CRM 2011 Mailmerge Dokument

Beim Erzeugen von Mailmerge Dokumenten mit CRM 2011 kam es bei mir zu mysteriösen Syntaxfehlern.

 

Es sollten 2 Währungsfelder zusammengerechnet werden. Für Word eigentlich eine leichte Aufgabe, selbst wenn Währungssymbole in den Beträgen enthalten sind.
Die Produktzeile sieht auch gut aus:

 

Aktualisiert man das Feld, dann kommt der Syntaxerror hervor:

 

Also habe ich die gleiche Rechnung noch einmal von Hand eingetragen:

 

Das Ergebnis hat mich doch etwas überrascht:

 

Die Erklärung für diesen "Syntaxfehler" liegt tief im Word Dokumentenformat versteckt: Word fügt ein verstecktes Bookmark in das Mergefield ein, das selbst bei den versteckten Bookmarks nicht angezeigt wird!

 

Man findet das Bookmark erst beim durchsuchen des Word XML Formats, wo es fröhlich die 207,90€ in der Mitte teilt:

 

Die Berechnung des Wertes benötigt aber die ganze Rechnung in einem fortlaufenden String:

 

Als Lösung bietet sich nur an, das Feld mit dem mysteriösen Syntax Error nochmal neu zu machen, d.h. komplett neu von Hand einzutippen. Nur so kann man vermeiden, daß Word das Bookmark z.B. einem kopierten Feldnamen mit kopiert. Warum Word das Bookmark einfügt und wann habe ich nicht herausgefunden. Meistens klappt es, aber ab und zu schleicht sich der Fehler in die Berechnungen ein.

An dieser Stelle sei noch gesagt: Word kann zwar rechnen, aber am besten ist es, gar nicht in Word zu rechnen. Die Zahlen stammen aus dem CRM und es ist kein Problem mit JavaScript oder einem Plug-In ein neues Feld zu füllen, das das Ergebnis enthält. Wird das Feld nur angezeigt, macht es Word nichts aus, wenn sich darin ein Bookmark befindet.

Januar 19
CRM 2011 Integration mit SharePoint 2010 – Struktur und Rechtemanagement

Ein großes Manko an der Out-of-the-box Lösung für die Integration von den neuen CRM und SharePoint Versionen ist die Tatsache, dass alle Dokumente in derselben SharePoint Site abgelegt werden. Wenn man vom CRM aus die Benutzergruppen mit Business Units getrennt hat, so haben die Benutzer auf dem SharePoint wieder Zugriff auf alle Dateien.

Dem kann man in weniger als 10 Schritten (9 um genau zu sein) Abhilfe schaffen, ohne eine Zeile Code:

Voraussetzung: Sie haben den CRM Listconnector bereits installiert und CRM mit dem SharePoint verbunden.

  1. In den Dokumenteneinstellungen im CRM setzen Sie den Haken bei "Auf Entitätsbasis" und wählen Firma oder Kontakt. Mit dieser Einstellung werden die Verzeichnisse unterhalb der gewählten Entität erstellt. Ich wähle "Firma" um von der Firma aus Übersicht über alle verbundenen Dokumente zu erhalten.
  2. Erstellen Sie im SharePoint für jede CRM Business Unit eine Site. Die Teamsite ist ideal für diesen Zweck geeignet.
  3. Erstellen Sie für jede Business Unit eine Sicherheitsgruppe und beenden Sie die Vererbung der Rechte für die neuen Sites.

  4. Weisen Sie die Benutzer den Sicherheitsgruppen zu, entsprechend den CRM Business Units. Wenn Ihre Benutzer mehr sehen sollen, dann weisen Sie sie mehreren Gruppen zu.
  5. Erstellen Sie für jede Business Unit einen neuen Eintrag unter SharePoint Sites im CRM.
     
  6. Wählen Sie "Relative URL" und nehmen Sie die Standardadresse des SharePoint als Basis und die erstellte Site als Relative URL. Die Adresse muss stimmen, sonst klappt es nicht. Als Namen verwenden Sie den Namen der Business Unit.
  7. In der Firma klicken Sie auf Dokumente. Klicken Sie in der Dialogbox auf "Abbrechen", sonst wird auf der obersten Site im SharePoint ein Verzeichnis angelegt und nicht in der gewünschten Site.
  8. Klicken Sie auf Dokumentspeicherort hinzufügen, wählen Sie "Neuen Ordner erstellen" und suchen Sie den Speicherort, der zu ihrer Business Unit gehört. Sie müssen noch einen Ordnernamen angeben, wobei ich den Firmennamen empfehle um auch im SharePoint die Übersicht zu behalten.
  9. Wenn Sie neue Datensätze anlegen, die mit der Firma verbunden sind, werden diese in Zukunft automatisch unterhalb des Firmenverzeichnisses angelegt und sind in einer praktischen Übersicht von der Detailansicht der Firma zu erreichen. Beachten Sie aber, dass bereits abgespeicherte Dokumente manuell an die richtige Stelle geschoben werden müssen und danach die Speicherorte im CRM gelöscht werden müssen.
Januar 18
The sandboxed code execution request was refused because the Sandboxed Code Host Service was too busy to handle the request

Beim Installieren der CRM Listenkomponente für SharePoint 2010 bin ich auf unerwartete Probleme gestoßen: Der Sandkasten-Codedienst (herrliche Übersetzung ;-)) war zu beschäftigt um meine simple Anfrage nach der Aktivierung der Lösung zu bearbeiten. Da es sich um ein frisch gestartetes Development-System handelte, auf dem niemand sonst aktiv war, war ich mir sehr sicher, dass der Dienst nicht zu beschäftigt sein konnte und das Problem an anderer Stelle lag.

Im SharePoint Blog gab es auch eine Reihe von Workarounds für dieses Problem:

http://blogs.msdn.com/b/sharepointdev/archive/2011/02/08/error-the-sandboxed-code-execution-request-was-refused-because-the-sandboxed-code-host-service-was-too-busy-to-handle-the-request.aspx

Doch mir half nichts davon. Durch Zufall bin ich dann auf die Lösung gekommen:

Direkt nachdem ich den Sandkasten-Codedienst gestartet war, habe ich versucht die Lösung zu aktivieren. Heraus kam folgende Fehlermeldung:

Die Sandkasten-Codeausführungsanforderung wurde abgelehnt, weil der Sandkasten-Codeausführungs-Hostdienst noch initialisiert wurde.

 

Der Sandkasten musste also erst noch mit Sand gefüllt werden... Es dauerte ungefähr 2-5 Minuten nach dem Start des Service, bis der Initialisierungsfehler nicht mehr kam und dafür der "Ich bin gerade beschäftig" Fehler.

Nachdem alle Methoden aus dem MSDN Blog nicht halfen, wartete ich nach dem Start des Service 5 Minuten, ohne die Lösung zu aktivieren und auf einmal hat es geklappt:

Die Listenkomponente für CRM wurde aktiviert! Geduld zahlt sich eben aus. 2 Mal konnte ich den Fehler reproduzieren, aber nun klappt es auf Anhieb, auch wenn der Service den Initialisierungsfehler schon geworfen hat. Von daher starte ich in Zukunft den Service lange bevor ich die erste Sandbox-Lösung installiere.

 

Januar 16
Benutzerdefinierte Sicht auf Kontakte für Firmen einstellen

In der Firma gibt es 2 Ansichten für Kontakte: In der allgemeinen Übersicht werden "Meine aktiven Kontakte" angezeigt und in der Navigation links alle der Firma zugeordneten Kontakte.

 

 

Um die Standardansicht in der allgemeinen Übersicht zu ändern geht man auf das Bearbeitungsformular und klickt doppelt auf den Platzhalter für die Kontakte.

 

 

 Hier lässt sich jede öffentliche Ansicht als Standard konfigurieren. Nach dem Abspeichern das Veröffentlichen nicht vergessen!

 

 

Januar 13
Phone7 Projekt: Lokalisierte Ressource wird nicht geladen

Beim Einrichten eines Windows Phone7 Projekts wird häufig die Angabe der unterstützten Sprachen vergessen. Bei anderen Projekttypen (z.B. Silverlight oder WPF) werden die Sprachen unterstützt, für die jeweils eine RESX Datei vorhanden ist. Im Phone7 muss zusätzlich noch eine Einstellung vorgenommen werden.

Tipp: Laden Sie im Visual Studio die Productivty Power Tools ( http://visualstudiogallery.msdn.microsoft.com/d0d33361-18e2-46c0-8ff2-4adea1e34fef ) herunter. Neben vielen anderen sinnvollen Erweiterungen für VS2010 stellt es Ihnen ein Kontextmenü zum Bearbeiten der CSPROJ Datei zur verfügung.

  1. Dazu geht man auf das Projekt und entlädt es mit dem Kontextmenüeintrag "Unload Project".
  2. Anschließend muss man die CSPROJ Datei editieren:

 

  1. Das XML Element heißt SupportedCultures. Standardmäßig ist es leer. Im Innertext müssen alle unterstützten Sprachen mit Komma/Semikolon getrennt eingetragen werden.

 

Ich kann mir nicht erklären, weshalb es keine Einstellungsmöglichkeit über das UI von Visual Studio gibt, oder es im Phone7 anders gemacht wird als bei allen anderen Projektarten, aber so ist es nun mal. In der MSDN ist diese Besonderheit auch dokumentiert: http://msdn.microsoft.com/en-us/library/ff637520(v=vs.92).aspx

Dezember 09
CRM Outlook Client automatisch konfigurieren

In größeren Unternehmen ist es ratsam, nicht nur die Installation des CRM Outlook Clients zu automatisieren, sondern auch die Konfiguration. Durch Vorgabe z.B. der CRM URL lassen sich so viele Konfigurationsprobleme direkt vermeiden.

Für die automatisierte Installation benötigt man eine XML Datei, welche man z. B. in den Dynamics CRM Programme-Ordner kopiert. Die XML-Datei hat dann folgenden Inhalt:

<Deployment>

<DiscoveryUrl>http://CrmServerUrl</DiscoveryUrl>

<Organizations>

<Organization IsPrimary='true'>OrganizationUniqueName</Organization>

</Organizations>

</Deployment>

Den Unique Name bekommt man über Einstellungen -> Anpassungen -> Entwickler Ressourcen. Groß-/Kleinschreibung ist hier wichtig!

Eine "silent" Konfiguration ginge dann so (Nachdem die Anwendung selbst schon auf dem Client installiert ist):

"C:\Program Files\Microsoft Dynamics CRM\Client\ConfigWizard\Microsoft.Crm.Application.Outlook.ConfigWizard.exe" /q /xa

"C:\Program Files\Microsoft Dynamics CRM\Client\ConfigWizard\Microsoft.Crm.Application.Outlook.ConfigWizard.exe" /q /i "C:\Program Files\Microsoft Dynamics CRM\Default_Client_Config.xml"

Dies muss auf dem jeweiligen Rechner für jeden CRM Benutzer ausgeführt werden (z.B. als Start-Skript).

Nähere Infos zu dem Thema gibt es auch hier: http://technet.microsoft.com/en-us/library/hh367356.aspx

Dezember 02
Microsoft Dynamics CRM Server is not installed on this computer

Aufgepasst beim Installieren von CRM 2011 Rollups: Die Sprachversion des CRMs wird vom Installer nicht geprüft, stattdessen kommt bei dem Versuch z.B. ein englisches Rollup auf einem deutschen CRM Server zu installieren folgende aussagekräftige Fehlermeldung:

 

Auf der Suche nach Rollup 5 kam ich auf der deutschen KB-Seite an: http://support.microsoft.com/kb/2567454/de

Auf der KB Seite wurde ich weitergeschickt zum Download http://www.microsoft.com/downloads/details.aspx?FamilyID=b9dd0bd7-8b1f-45af-a5ae-ee73a07ec90c

Dieser Download ist aber der englische und man muss noch einmal die Sprache von Englisch auf Deutsch ändern, bevor man zum richtigen Download kommt. Als Hinweis steht die Sprachversion zwar im Dateinamen CRM2011-Server-KB2567454-ENU-amd64.exe, bzw. CRM2011-Server-KB2567454-DEU-amd64.exe, aber im Eifer des Gefechts habe ich das überlesen und erst bei der Installation mächtig gestutzt.

Hier daher der Direktlink zum deutschen Rollup 5 http://www.microsoft.com/downloads/de-de/details.aspx?familyid=b9dd0bd7-8b1f-45af-a5ae-ee73a07ec90c&displaylang=de

Dezember 02
Aktivitätsfeeds für CRM

Microsoft hat im Marketplace eine managed solution veröffentlicht mit der man in das CRM eine Pinnwand im Stile von Facebook einführt. Hier bekommt man auf einem Blick alle letzten Aktivitäten z.B. einer Firma angezeigt.

Darüber hinaus kann man auch eigene Kommentare hinzufügen, wie sonst nur bei typischen social Applications üblich.

 

Für "on premise" Installationen muss man die Solution noch extra aus dem Marketplace beziehen (Link), bei CRM Online sind die Aktivitätsfeeds standardmäßig vorinstalliert, wenn man eine neue Organisation anlegt.

Diese Aktivitätsfeed werden auch von der offiziellen Dynamics CRM App für Windows Phone 7 unterstützt

November 29
Diagnoseseite für CRM Online

Einer der Nachteile von einer Anwendung in der Cloud ist, dass die Performance oft von der jeweiligen Internetverbindung abhängt. Wenn der Kunde sich über die Performance einer solchen Anwendung beschwert, ist es immer schwierig die Ursache für den Flaschenhals zu finden.

Für CRM Online hat Microsoft eine Diagnoseseite eingerichtet die einen Grundtest durchführt, was die Konnektivität des Clients angeht. Die Diagnoseseite ist über keinen Link zu erreichen, daher muss die URL direkt in den Browser eingegeben werden:

https://<organisation>.crm4.dynamics.com/tools/diagnostics/diag.aspx

 

Die Auswertung kann ein Kunde selbstständig durchführen und das Ergebnis anschließend einfach kopieren oder direkt per E-Mail verschicken.

November 28
CRM Popups als Tab im selben Internet Explorer Fenster öffnen

Wer häufig mit CRM arbeitet wird bestimmt bemerkt haben, dass man schnell viele Browser-Fenster offen und später dann Probleme hat, zwischen diesen umzuschalten.

Mit einer einfachen Konfigurationseinstellung im IE9 werden alle neuen CRM Fenster im selben IE Fenster als Tab geöffnet:

 

In den Internetoptionen öffnet man im Registerreiter "Allgemein" die Einstellungen der Registerreiter

 

In dem Einstellungsdialog wird nun unter dem Punkt "Beim Auftreten von Popups" der Eintrag "Popups immer in neuer Registerkarte öffnen" ausgewählt.

Nach einem Browserneustart werden nun alle CRM Fenster im selben IE Fenster geöffnet, jedoch nun in extra Tabs.

1 - 10Weiter
Suche
 

 TagCloud