Показать сообщение отдельно
Старый 01.10.2013, 15:49   #5  
Space-06 is offline
Space-06
Участник
 
57 / 10 (1) +
Регистрация: 23.01.2013
Скрипт:
X++:
function optionSetChanged() {


    var _collection = getCollection(); 
    var _selectedCategory = null;
    var _categoryOptionset = Xrm.Page.ui.controls.get("new_category");
    if (_categoryOptionset != null)
        _selectedCategory = _categoryOptionset.getAttribute().getValue();
    var _categoryOptions = _categoryOptionset.getAttribute().getOptions();
    var _selectedCampaign = Xrm.Page.getAttribute("new_typecampaign").getText();

    if (_selectedCampaign == "") {
        _categoryOptionset.clearOptions();
    }
    else {
        for (var i = 0; i < _collection.length; i++) {
            if (_selectedCampaign.toLowerCase() == _collection[i].Campaign.toLowerCase()) {
                _categoryOptionset.clearOptions();
                for (var j = 0; j < _collection[i].Categories.length; j++) {
                    for (var k = 0; k < _categoryOptions.length; k++) {
                        if (_collection[i].Categories[j].toLowerCase() == _categoryOptions[k].text.toLowerCase()) {
                            _categoryOptionset.addOption(_categoryOptions[k]);
                            break;
                        }
                    }
                }
                break;
            }
        }
        if (_categoryOptionset != null && _selectedCategory != null)
            _categoryOptionset.getAttribute().setValue(_selectedCategory);
    }
}


function getCollection() {


    var _collection = new Array();
    var Kholod_Categories = new Array("Интерес", "Отложенный Интерес", "Информация отправлена", "ЛК зарегистрирован", "Вебинар интересен", "Мероприятия приглашать", "Отказ", "Отказ. Не профильный", "Перезвонить", "Уточнить контакты", "Недозвон");
    var Kholod_obj = { Campaign: "Холодный Обзвон", Categories: Kholod_Categories };
    _collection.push(Kholod_obj);

    var Marketing_Categories = new Array("Интерес", "Отложенный Интерес", "Приглашение отправлено", "Зарегистрирован", "Пришел", "Не пришел", "Отказ", "Отказ. Не профильный", "Перезвонить", "Уточнить контакты", "Недозвон", "Рассматривают приглашение", "Заинтересован участвовать", "Напомнили о регистрации");
    var Marketing_obj = { Campaign: "Маркетинговый Обзвон", Categories: Marketing_Categories };
    _collection.push(Marketing_obj);

    var Information_Categories = new Array("Информация отправлена", "Требуется консультация", "Проинформирован", "Отказ", "Перезвонить", "Уточнить контакты", "Недозвон", "Интерес");
    var Information_obj = { Campaign: "Информационный Обзвон", Categories: Information_Categories };
    _collection.push(Information_obj);

    return _collection;
}
Самое интересное - то что на пустой форме - все отображается, нулится само поле лишь только в том случае когда запись эту открываем в представлении отличной от последней давольно забано получается:

вот ссылка на видео, где все показано: ВИДЕО

удобнее скачать к себе на комп и посмотреть в полноэкранном режиме