AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
CRM
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.10.2013, 12:49   #1  
spectr is offline
spectr
Участник
Аватар для spectr
MCBMSS
Лучший по профессии 2014
 
287 / 70 (3) ++++
Регистрация: 19.10.2011
Адрес: Киев
Если можно прикрепите весь скрипт с формы и скрин формы с указанием поля которое нулится.
Потому что тут нечего рассуждать. Если при создании не выставляется по умолчанию то у вас точно скрипт что-то мутит.
Старый 01.10.2013, 15:49   #2  
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;
}
Самое интересное - то что на пустой форме - все отображается, нулится само поле лишь только в том случае когда запись эту открываем в представлении отличной от последней давольно забано получается:

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

удобнее скачать к себе на комп и посмотреть в полноэкранном режиме
Старый 01.10.2013, 16:01   #3  
-O_o- is offline
-O_o-
Еда - топливо, Одежда - н
Аватар для -O_o-
Лучший по профессии 2015
Лучший по профессии 2014
 
727 / 80 (4) ++++
Регистрация: 11.05.2012
Адрес: Киев
меня смутил тот факт, что в первых 2 записях вообще не отображается значение поля "тип кампании" в верхнем колонтитуле (при открытии).
А вот в 3-й записи отображается и поле не чиститься... Может оно вообще в базу не записывает?
Проверьте просто в базе, есть ли значение в это поле для этих записей?
Кстати, еще так, ради интереса.
Какая нумерация этих значений в поле "тип кампании"? Можете показать? ну там - 10009001 или что-то в этом роде... И посмотрите, не пересекаются эти номера с еще какими-то значениями в других сущностях...

Последний раз редактировалось -O_o-; 01.10.2013 в 16:06.
Старый 01.10.2013, 18:55   #4  
spectr is offline
spectr
Участник
Аватар для spectr
MCBMSS
Лучший по профессии 2014
 
287 / 70 (3) ++++
Регистрация: 19.10.2011
Адрес: Киев
Предлагаю через расширенный поиск посмотреть на колонку Тип кампании.
Думаю там в 1 и 2 будет пусто а в 3 заполнено.

Так как дата создания последнего сегодня там походу все "ок", а в 1 и 2 оно скидывает его в null а так как select не содержит пустого option это заметно.

А если там значения есть то возможно у них поменялись номера (Value). Вы такого не делали ?

и предлагаю еще дописать в код после
Код:
function optionSetChanged() {
такое
Код:
alert("Name: "+Xrm.Page.getAttribute("new_typecampaign").getText()+"Value: "+Xrm.Page.getAttribute("new_typecampaign").getValue());
и скрин показать нам
Старый 01.10.2013, 19:19   #5  
Space-06 is offline
Space-06
Участник
 
57 / 10 (1) +
Регистрация: 23.01.2013
Цитата:
Так как дата создания последнего сегодня там походу все "ок", а в 1 и 2 оно скидывает его в null а так как select не содержит пустого option это заметно.

А если там значения есть то возможно у них поменялись номера (Value). Вы такого не делали ?
База на самом деле тестовая с почти реальными данными. Код пишется именно сейчас. Это и настораживает что если к форме применяется какой то функционал - почему он не может работать в старых записях?

Значения номеров параметров не менял, так как только что их создал.

сейчас добавил несколько записей - в новых все в порядке, а в старых обнуляется
Старый 02.10.2013, 10:14   #6  
spectr is offline
spectr
Участник
Аватар для spectr
MCBMSS
Лучший по профессии 2014
 
287 / 70 (3) ++++
Регистрация: 19.10.2011
Адрес: Киев
Ну вот как оказалось все просто
CRM при создании нового атрибута (В SQL это столбец таблицы) все старые записи будут с знацением NULL в этом поле. Так как за заполнение этого должен отвечать интерфейс. И еще если был бы функционал который выставляет значение по умолчанию в старые записи, то прикиньте вы создали поле выставили значение по умолчанию и всем старым записям оно поставилось, а потом оказалось что это не то значение по умолчанию и что бы в этом случаи должен был сделать СРМ ?
Так что все там логично.
А чистится так как я и писал:
Цитата:
оно скидывает его в null а так как select не содержит пустого option это заметно.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
CRM 2011, "нет места на диске" при загрузке формы продукта для возможной сделки mistah Dynamics CRM: Функционал 5 08.11.2012 01:44
При загрузке страницы формы не отображаются записи в гриде. fatty_bu Dynamics CRM: Функционал 3 19.01.2012 12:00
CRM Programmer: Get Picklist Value By Picklist Name Blog bot Dynamics CRM: Blogs 1 05.02.2010 13:17
Microsoft Dynamics CRM Team Blog: CRM 4.0: Checkbox style Multi-Select Picklist Blog bot Dynamics CRM: Blogs 0 01.04.2009 05:07
Jim Wang: CRM 4.0: Checkbox style Multi-Select Picklist Blog bot Dynamics CRM: Blogs 0 11.02.2009 06:05

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 10:34.