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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.02.2014, 22:59   #1  
b777 is offline
b777
Участник
 
46 / 10 (1) +
Регистрация: 11.07.2013
Глючат скрипты в CRM13
У организации несколько форм, которые подсовываются в зависимости от типа: Партнёр, Заказчик и пр.
При создании открывается нейтральная форма с ограниченным набором полей и требованием задать тип организации.
При сохранении происходит перенаправление на нужную форму с возможностью заполнения остальных полей.

В CRM11 по этому поводу успешно работал скрипт на загрузке формы
Код:
var uiForm = selector.items.get(function (item, index) { return item.getLabel() == neededFormName; })[0];
        if (uiForm != null) uiForm.navigate();
С переходом на CRM13 он стал падать с ошибкой, а вместо перенаправления на нужную форму сохранённой организации, он падает в ошибку и открывает новую пустую форму (сохранение старой при это происходит, но она таким образом теряется из виду).
Вот ошибка:
Изображения
Тип файла: bmp err01.bmp (252.0 Кб, 438 просмотров)
Старый 26.02.2014, 23:01   #2  
b777 is offline
b777
Участник
 
46 / 10 (1) +
Регистрация: 11.07.2013
То есть, некорректно отрабатывает само перенаправление.
Что так они опять намудрили с загрузкой страницы?
Старый 27.02.2014, 00:54   #3  
-O_o- is offline
-O_o-
Еда - топливо, Одежда - н
Аватар для -O_o-
Лучший по профессии 2015
Лучший по профессии 2014
 
727 / 80 (4) ++++
Регистрация: 11.05.2012
Адрес: Киев
Цитата:
При сохранении происходит перенаправление на нужную форму с возможностью заполнения остальных полей.
Извините за вопрос чуток отдаленный от темы, но - почему не использовали вкладки вместо новых форм???
Сделали бы так. На главной форме обработка логики заполнения пполей.
А на онлоад формы, уже бы загружали ту форму, которую надо в зависимости от типа или чего там у вас.
__________________
Все что вам нужно - это мозК
Еда - топливо... Одежда - необходимость...
Старый 27.02.2014, 02:13   #4  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Чтобы ошибка стала более менее читабельной (потому что то что вы предоставили не даёт никакой информации для осмысления) кликните "Просмотр данных, которые будут отправлены...", скопируйте из окна, которое открылось текст, вставьте сюда.

От себя добавлю, что у меня навигация заработала, правда я пользовался немного другим подходом. Пример кода:

Код:
function OnLoad() {
	var customerType = Xrm.Page.getAttribute("customertypecode") == null ? null : Xrm.Page.getAttribute("customertypecode").getValue();
	if (customerType == null) {
		return;
	}

	var formId = GetFormId(customerType);

	var currentFormId = Xrm.Page.ui.formSelector.getCurrentItem().getId();

	if (currentFormId == formId) {
		return;
	}

	Xrm.Page.ui.formSelector.items.forEach(function (item, index) {
		if (item.getId() == formId) {
			item.navigate();
		}
	});
}

function GetFormId(customerType) {
	switch (customerType) {
		case 100000003:
			return "6D305B2E-D539-4A3A-BCB1-3657C5D83499".toLowerCase();
		default:
			return "8448B78F-8F42-454E-8E2A-F8196B0419AF".toLowerCase();
	}
}
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 27.02.2014, 11:43   #5  
b777 is offline
b777
Участник
 
46 / 10 (1) +
Регистрация: 11.07.2013
Да, действительно. Вот подробности ошибки:
X++:
    Microsoft Dynamics CRM

<CrmScriptErrorReport>
  <ReportVersion>1.0</ReportVersion>
  <ScriptErrorDetails>
   <Message>    "length" ,       NULL</Message>
   <Line>5</Line>
   <URL>/_common/global.ashx?ver=114157548</URL>
   <PageURL>/main.aspx?etc=1&extraqs=%3fetc%3d1&formid=9f5596c9-0d73-4398-b77b-39aa8acdd09f&pagemode=iframe&pagetype=entityrecord</PageURL>
   <Function>anonymous(a,b){a[a.length]=b}</Function>
   <CallStack>
    <Function>anonymous(a,b){a[a.length]=b}</Function>
   </CallStack>
  </ScriptErrorDetails>
  <ClientInformation>
   <BrowserUserAgent>Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C; .NET4.0E)</BrowserUserAgent>
   <BrowserLanguage>ru-RU</BrowserLanguage>
   <SystemLanguage>ru-RU</SystemLanguage>
   <UserLanguage>ru-RU</UserLanguage>
   <ScreenResolution>1920x1080</ScreenResolution>
   <ClientName>Web</ClientName>
   <ClientTime>2014-02-27T10:48:50</ClientTime>
  </ClientInformation>
  <ServerInformation>
    <OrgLanguage>1049</OrgLanguage>
    <OrgCulture>1049</OrgCulture>
    <UserLanguage>1049</UserLanguage>
    <UserCulture>1049</UserCulture>
    <OrgID>{2A2C6F6D-DDD3-4145-BB5D-13C5E8F399CA}</OrgID>
    <UserID>{87D6D0BC-0B67-E311-80BF-005056B01E77}</UserID>
    <CRMVersion>6.0.1.61</CRMVersion>
  </ServerInformation>
</CrmScriptErrorReport>
Попробовал переделать синтаксис, как у тебя, но item.navigate тоже не работает с той же ошибкой: по какой-то причине не navigate не может определить URL, на который надо переходить.
Старый 04.03.2014, 23:07   #6  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Мы с Андреем однажды пробовали внедрить подход о котором вы говорите, о чем я до сих пор жалею. В 2013 появились новые разновидности форм. Возможно вы имеете дело с какой-то разновидностью, где нет меню навигации?
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 04.03.2014, 23:15   #7  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от Артем Enot Грунин Посмотреть сообщение
пробовали внедрить подход
Чё пробовали? Внедрили и всё ещё работает )))
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Не работают Java скрипты в Internet Explorer 10 Gait Dynamics CRM: Функционал 7 30.10.2013 14:57
можно ли через MetaDataService получить/записать скрипты для соответствующих форм Shokker Dynamics CRM: Разработка 5 01.10.2008 12:55

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

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

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