私は現在、Dynamics 2011->2016 へのアップグレード プロジェクトに取り組んでいます。次のコードでは、Dynamics 2016 では、オプションセットで値がまだ定義されていない場合、addOption() 関数が機能しないようです。以下のコードを使用すると、オプションセットに値が追加されますが、オプションを選択することはできません! フィールドのオプションセットにオプションを静的に追加せずに、この問題を回避する方法はありますか?
PopulateCaseTemplateRecords = function () {
//Fetch case template records
var fetchXml =
"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>"
+ "<entity name='new_casetemplate'>"
+ "<attribute name='new_name' />"
+ "<filter type='and'>"
+ "<condition attribute='statecode' operator='eq' value='0' />"
+ "<condition attribute='ownerid' operator='eq-userteams' />"
+ "</filter>"
+ "</entity>"
+ "</fetch>";
//retrieve case templates using asynch call to webapi v8.0
return WebAPI.Proxy.Fetch("new_casetemplates", fetchXml).then(function (retrievedCaseTemplate) {
if (retrievedCaseTemplate) {
if (retrievedCaseTemplate.length >= 1) {
Xrm.Page.getControl("new_case_template").clearOptions();
//Populate the Case template option set on Case
for (var i = 0; i < retrievedCaseTemplate.length; i++) {
var option = new Option();
option.text = retrievedCaseTemplate[i].new_name;
option.value = i;
//Add the new option, Does not work in Dynamics 2016 if option not defined in optionset!
Xrm.Page.getControl("new_case_template").addOption(option);
}
}
}
});
}