2013-12-18 8 views
0

Я использую CRM 2013 В предположении, и в нем есть атрибут, который имеет набор опций (не глобальный), имеющий текст и значение как «Dummy Entry» «0». Значение по умолчанию не назначено.CRM 2013 Dynamic OptionSet issue

Мой код должен добавлять опции в эту опцию с некоторой бизнес-логикой. Поэтому я могу добавить в него новые возможности с помощью Javascript.

Когда я добавляю Параметры в нем с помощью Javascript, он не позволяет мне изменить значение позволяет сказать

Option1 знач1 Option2 знач1 добавляется то не позволит мне выбрать эти значения и каждый, времени на выбор они вернутся к записи по умолчанию «-», и ничего не изменится.

Но позволяет сказать, что я могу добавить «ОПЦИЯ1» «0» «option2» «0»

как текст и значения, они показаны тонко и выбора любого из них изменяет текст «пустышки Entry».

В принципе, если это значение существует в списке параметров (которые являются статическими и не добавляются через JS), он принимает и выбирает его и показывает текст из него.

Если значение не найдено в статическом списке опций, он не выбрать ничего, и шоу по умолчанию «-»

Я надеюсь, что я ясно, пожалуйста, дайте мне знать, в случае каких-либо путаницы. Следующий фрагмент кода работает в CRM 2011, а не работать в CRM 2013.

// testing function 
populateBundleLists: function() { 
    var bundleListControl = Xrm.Page.getControl("XXX_bundlelist"); 
    var bundleOptions = bundleListControl.getAttribute().getOptions(); 
    var bundleOption = bundleOptions[0]; 
    bundleListControl.clearOptions(); 

    // add some arbitrary values to control 
    for (var i = 1; i <= 7; i++) { 
     bundleOption.value = i; 
     bundleOption.text = 'Dummy bundle ' + i.toString(); 
     bundleListControl.addOption(bundleOption, i - 1); 

    } 
}, 
+0

Что вы делаете с этими значениями параметров, которые вы добавили, которые на самом деле не хранятся в CRM? – Daryl

+0

Мы собираем замену этого набора параметров и фиксируем выбранное значение, затем отправляем выбранные данные в нашу другую систему через API. Эти данные в раскрывающемся списке также поступают из одной и той же системы. –

+0

Ashish, ваши слова «отправить выбранные данные в нашу другую систему через API» означает для меня, что вы пытаетесь интегрировать другую систему, динамически обновляя элементы управления внутри формы CRM, правильно? – Eccountable

ответ

1

CRM хранит OptionSets в конфигурации объекта и должны знать о все возможных значений. Вы не можете добавлять новые параметры с помощью JS b/c, система не сможет решить ваше значение , когда кто-то запрашивает использование другого механизма (Fetch XML, Advanced Find, отфильтрованное представление и т. Д.).

+0

Он работает в нашей установке CRM 2011, хотя он не работает в CRM 2013. Я видел, что элемент управления, который был возвращен, теперь изменился, это InlineOptionSetControlView, раньше это был OptionSetUIControlWrapper, он возвращается с помощью метода Xrm.Page.getControl. –

Смежные вопросы