Ich muss jedem Abschnitt in meinen Entitäten ein Symbol geben. Zum Beispiel muss ich ein Symbol für allgemeine Informationen angeben, ein anderes für Interaktionen. Gibt es eine Idee, wie könnte ich das tun? und wie kann ich bitte eine Hintergrundfarbe für jeden Abschnitt erstellen? Vielen Dank im Voraus,Abschnittssymbole hinzufügen und Hintergrundfarbe in Dynamics ändern CRM
Antwort
Es gibt keine Möglichkeit, den Abschnitten Symbole zuzuweisen. Das Beste, was Sie tun könnten, wäre, jedem Bereich eine Web-Ressource hinzuzufügen und sie mit einem Bild verknüpfen zu lassen, aber das klingt nicht wirklich danach.
Es gibt keine unterstützten Möglichkeiten zum Ändern der Hintergrundfarbe des Formulars. Wenn es Ihnen nicht wichtig ist, weiterhin unterstützt zu werden, können Sie jQuery dazu verwenden. Setzen Sie diese Funktion in das Formular Skript:
function changeSectionBackgroundColor(sectionId, color) {
parent.$("table.ms-crm-FormSection[name='"+sectionId+"']").css({"background-color": color});
}
und verwenden Sie es wie folgt aus:
changeSectionBackgroundColor("General_Section_2", "red");
changeSectionBackgroundColor("General_Section_2", "#ababab");
Sie könnten versuchen, so etwas zu tun, um die Section Bilder einzufügen:
var stackoverflow = (function (Xrm)
{
var sectionBarClassName = '.ms-crm-Form-SectionBar'; // name of the CSS class given to the Section's Label's <td> element
function GetSection(tabName, sectionName)
{
var parentTab = Xrm.Page.ui.tabs.getByName(tabName); // get the tab
var section = parentTab.sections.getByName(sectionName); // get the section
return section;
}
function AddSectionImage(tabName, sectionName, imageUrl)
{
var section = GetSection(tabName, sectionName); // retrieve section using Xrm
var elSection = document.querySelector('table[name=' + section.getKey() + ']');
var elSectionHeader = elSection.querySelector('tr:first-child');
var elTitles = elSection.querySelectorAll(sectionBarClassName);
if (elTitles.length === 1) // we can assume that this section has a title
{
var elImg = document.createElement('img');
elImg.src = imageUrl;
elTitles[0].insertBefore(elImg, elTitles[0].firstChild);
}
}
return {
AddSectionImage : AddSectionImage
};
})(Xrm);
Sie Rufen Sie dann diesen Code auf und geben Sie den Namen (nicht die Bezeichnung) der Registerkarte und des Abschnitts sowie die relative URL des Bildes ein, das Sie anzeigen möchten. Wie so:
stackoverflow.AddSectionImage('tab_5', 'tab_5_section_1', '/imgs/Cancel_16.png');
Ich habe diesen Code nur in CRM 2016 (online) getestet. Und das Bild ist ein bisschen grob. Sie müssen sich um das Styling (Inline) und die Größe selbst kümmern.
Dies wird natürlich von Microsoft nicht unterstützt :)