| Wie installiere ich Anpassungen an Microsoft CRM |
|
| Sonntag, 25. November 2007 | |
|
Heute beschreibe ich die Möglichkeiten, ein Installer- bzw. Setup-Programm zu erstellen, das Anpassungen am CRM auf andere Server migriert. Verwenden Sie die Microsoft.Crm.Sdk.IsvReadiness Klassen, die mit dem ISVReadiness Beispielcode des CRM SDK geliefert werden. Nachdem die Arbeiten an den benutzerdefinierten Entitäten (alle Entitäten die standardmäig mit "new_" beginnen, sofern die in den Einstellungen nicht geändert wurde) und deren Beziehungen abgeschlossen sind, exportieren Sie nur diese Entitäten und fügen Sie die erzeugte XML-Datei zu Ihren Visual Studio Installer Projekt. Schreiben Sie dann Ihren Code, der diese XML-Datei zur Laufzeit importiert und danach publiziert.
private void importEntities()
//Publish
Nachdem Sie nun Ihre Änderungen an den System-Entitäten und deren Geschäftsbeziehungen vorgenommen haben:
private void changeLeadEntity()
{
//Load the lead entity in an XmlDocument
//Add an attriute map to tell crm what to do with an atrribute if the user converts a lead to an opportunity XmlNode mapnode = map.DocumentElement;
XmlElement attributemap = xml.CreateElement(”AttributeMap”);
attributemap.AppendChild(attributesource.Clone()); XmlNode newnode = xml.SelectSingleNode(”descendant::EntityTarget[@LocalizedName=’Opportunity’]”).ParentNode.SelectSingleNode(”AttributeMaps”).AppendChild(attributemap.Clone());
//Add fields to the lead form
XmlDocument helper = new XmlDocument();
helper.SelectSingleNode(”descendant::tab[@id=’” + xml.SelectSingleNode(”descendant::tab”).Attributes[”id”].Value + “‘]/sections/section/labels/label[@description=’blabla’]”).ParentNode.ParentNode.ParentNode.RemoveChild(helper.SelectSingleNode(”descendant::tab[@id=’” + xml.SelectSingleNode(”descendant::tab”).Attributes[”id”].Value + “‘]/sections/section/labels/label[@description=’blabla’]”).ParentNode.ParentNode);
Guid sectionid = Guid.NewGuid();
//Add a lookup field to a new section
//Add Javascript to the onload event
//Import the modifications
//Publish |