Optionsgruppenwerte in CRM dynamisch ändern
Ich benutze CRM Online 2013.
Ich versuche, 3 Werte aus einem Optionssatz unter einer bestimmten Bedingung zu entfernen. Das Optionsset enthält standardmäßig sechs Optionen: Sie werden oben in meinem JS-Code unten aufgeführt.
Wenn ich meinen Code ausführe, werden die richtigen Optionen angezeigt. aber sie alle sagen undefiniert.
Folgendes habe ich momentan:
var customer = 100000000;
var partner = 100000001;
var partnerCustomer = 100000002;
var customerAndBeta = 100000003;
var partnerAndBeta = 100000004;
var partnerCustomerAndBeta = 100000005;
function populateBetaOptionSet(beta) {
var options = Xrm.Page.getAttribute("intip_websiteaccess").getOptions();
var pickListField = Xrm.Page.getControl("intip_websiteaccess");
for(i = 0; i < options.length; i++)
{
pickListField.removeOption(options[i].value);
}
if (beta == false) {
pickListField.addOption(customer);
pickListField.addOption(partner);
pickListField.addOption(partnerCustomer);
}
pickListField.addOption(customerAndBeta);
pickListField.addOption(partnerAndBeta);
pickListField.addOption(partnerCustomerAndBeta);
}
Dies wird von einer anderen Funktion aufgerufen, die mit dem Änderungsereignis eines separaten Felds verbunden ist. Ich bin sicher, dass dies korrekt funktioniert, da ich den korrekten Beta-Wert erhalte, wenn er aufgerufen wird.
Ich entferne alle Optionen, bevor ich sie erneut hinzufüge, um Duplikate zu vermeiden.
Hast du eine Idee, was ich hier falsch mache / oder weißt du, wie ich das besser machen kann?