Customer-Relationship-Management (kurz CRM) wird in vielen Unternehmen zur Dokumentation Ihrer Kunden und der Kundenprozesse benutzt. Dabei kommt es häufig vor, dass die vordefinierten Felder nicht ausreichen oder bestimmte Kriterien beim ausfüllen erfüllen müssen. Dieser Artikel gibt ein kleinen Einblick wie bestimmte Events auf ein Element gelegt werden können. An einem Beispiel soll ein Feld ausgeblendet werden, wenn ein bestimmtes Land in der Dropdown Liste ausgewählt wurde.
1. Systemeinstellungen
An erster Stelle müssen wir sicher stellen, ob die Sichherheitsrichtlinien für die Anpassung richtig gesetzt sind. Da der Einfluß auf die GUI die Oberfläche unnötig verlangsamen kann, ist der Standartwert für das editieren auf NEIN gesetzt. Wir können zwar lustig Javascript oder JQuery Scripte schreiben, aber das System wird diese automatisch nicht erkennen, obwohl die JQuery Bibliothek eingebunden ist. Die Einstellung nehmen wir an folgender Stelle vor. Settings -> Administartion ->System Settings -> Use legacy form rendering = YES
2. Ein Script schreiben
Wir erstellen eine Javascript Datei. Auf der Referenzseite von Microsoft findet ihr eine Dokumentation von der Verwendung von Javascript im CRM. Die Namen Felder entnehmen wir aus der Feld Eigenschaften.
function CountryPicklist_OnChange() { //Feld ID der Länderliste var countryField = "new_country" //Feld ID der Stateliste var stateField = "new_stateorprovince" var countryText = ''; countryText = Xrm.Page.getAttribute(countryField).getSelectedOption().text; var quickViewMobilePhoneControl = Xrm.Page.getControl("stateField"); if(countryText == 'Germany') { quickViewMobilePhoneControl.setVisible(false); } else quickViewMobilePhoneControl.setVisible(true); }
3. Script einbinden
Unter Form -> Properties -> Form Libary -> Add -> New wählen wir unser erstelltes Script aus. Und speichern es z.B. unter den Namen: „new_country_change“ aus. Somit landet unserer Script in der CRM Bibliothek.
Anschließend müssen wir nur noch das Script an unsere Länderliste binden. Unter „Form Properties“ wählen wir die Länderliste und das Event „onChange“ aus. Mit „Add“ suchen wir unsere neue „“new_country_change“ – Bibliothek aus. Als Funktion müssen wir unseren Funktionennamen aus unserer Datei angeben. In diesem Falle:
CountryPicklist_OnChange
Jetzt Speichern und Publishen.
Somit wäre das Script eingebunden und Betriebsbereit. Aufpassen ob ihr auch das Häckchen Enable gesetzt habt. Sonst wird das Script nicht ausgeführt. Die Funktion macht sich gut, um schnell Scripte zu deaktivieren ohne sie gänzlich zu löschen.