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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.11.2015, 15:11   #1  
Eugene.Ostroukhov is offline
Eugene.Ostroukhov
Участник
 
149 / 11 (1) +
Регистрация: 22.02.2013
CRM2011: опросники (диалоговые окна, вручную)
всем привет.

интересуют 2 небольших вопроса:
1) есть шаг "приглашение и ответ" (к сожалению нет нормальной СРМ под рукой, и как называется по-человечески (т.е. по-английски) не могу сказать)
у него несколько вариантов ответа, сделанных радиобаттонами
вроде бы видел, что как-то настраивается рандомизатор порядка отображения вариантов ответа (типа "чтоб не списывали").
можно ли это сделать и, если да, то как ? что-то уже не могу найти

2) планируется несколько тестов, разбитых на секции вопросов, с различным количеством этих самых вопросов.
сущность для записи правильных ответов будет использоваться одна.
как на каждый диалог (тест, типа "урок 1") узнать кол-во вопросов в этом диалоге ?

заранее благодарю!
Старый 24.11.2015, 15:18   #2  
Eugene.Ostroukhov is offline
Eugene.Ostroukhov
Участник
 
149 / 11 (1) +
Регистрация: 22.02.2013
про п.2:
кажется в ParentWorkflow есть xaml с описанием. попробую его поковырять.
другие варианты будут? если мне память не изменяет, этот xaml никак нельзя редактировать, кроме как через интерфейс СРМа (создания диалога), и мол руки прочь от сов.власти
Старый 24.11.2015, 15:43   #3  
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
Не получится. Хотите рандомизатор - придётся писать руками.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 24.11.2015, 16:17   #4  
Eugene.Ostroukhov is offline
Eugene.Ostroukhov
Участник
 
149 / 11 (1) +
Регистрация: 22.02.2013
он вообще не предусмотрен, или это только к варианту с радиобаттонами относится?
Старый 24.11.2015, 16:25   #5  
Eugene.Ostroukhov is offline
Eugene.Ostroukhov
Участник
 
149 / 11 (1) +
Регистрация: 22.02.2013
про п.2: примерно так:

select cast(wf.xaml as xml).value('count(//*[@DisplayName="PromptExpression"])', N'int') as Questions
....
from ProcessSession ps
join Workflow wf on wf.WorkflowId = ps.ProcessId

(может кому пригодится)
Старый 26.11.2015, 17:05   #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
Цитата:
Сообщение от Eugene.Ostroukhov Посмотреть сообщение
он вообще не предусмотрен, или это только к варианту с радиобаттонами относится?
Он вообще не предусмотрен, так как функционал для этого не предназначен. Это система поддержки пользователей, а не их запутывания

В 2016 обещали некоторый функционал тестов/опросов (survey). Возможно это будет там. Опять же, функционал, скорее всего, будет направлен на клиента, а не пользователя.
Цитата:
Сообщение от Eugene.Ostroukhov Посмотреть сообщение
про п.2: примерно так:

select cast(wf.xaml as xml).value('count(//*[@DisplayName="PromptExpression"])', N'int') as Questions
....
from ProcessSession ps
join Workflow wf on wf.WorkflowId = ps.ProcessId

(может кому пригодится)
Вам удалось это реализовать?
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 26.11.2015, 17:42   #7  
Eugene.Ostroukhov is offline
Eugene.Ostroukhov
Участник
 
149 / 11 (1) +
Регистрация: 22.02.2013
Цитата:
Сообщение от Артем Enot Грунин Посмотреть сообщение

Вам удалось это реализовать?
да, работает.
мой случай: диалог состоит из 20 шагов на "вопрос-ответ" и 20 обновлений записи (проверка ответов и проставление "верно ответил или нет")
вот кол-во тегов вопрос-ответ в XAMLe воркфлоу я выбираю так как указано в XQuery

итоговый вариант (опуская сумму корректных - это будет переписано согласно кол-ву вопросов в воркфлоу) получился таким:
Код:
select  t.new_name as TestName
	, wf.Name as LessonName, wf.WorkflowId, wf.ParentWorkflowId, wf.ParentWorkflowIdName
	, cast(isnull(t.new_answer1, 0) as int) + 
	  cast(isnull(t.new_answer2, 0) as int) + 
	  cast(isnull(t.new_answer2, 0) as int) as [CorrectAnswers]

	  , cast(wf.xaml as xml).value('count(//*[@DisplayName="PromptExpression"])', N'int')  as QuestionsCount
	  , ps.OwnerIdName
	  , ps.OwnerId
	  , ps.CreatedOn

from ProcessSession ps
join new_testing t on t.new_testingId = ps.RegardingObjectId
join Workflow wf on wf.WorkflowId = ps.ProcessId
where ps.RegardingObjectTypeCode = 10353 -- new_testing entity
and wf.ParentWorkflowId = '9C1EC4E9-D2F9-4887-B2CD-2611AD2838B9' -- lesson 1
order by ps.createdon desc
ParentWorkflowId = '9C1EC4E9-D2F9-4887-B2CD-2611AD2838B9' - это айдишник самого диалога, а не результатов его

Последний раз редактировалось Eugene.Ostroukhov; 26.11.2015 в 17:45.
Старый 26.11.2015, 17:44   #8  
Eugene.Ostroukhov is offline
Eugene.Ostroukhov
Участник
 
149 / 11 (1) +
Регистрация: 22.02.2013
а есть идеи как прикрутить собственный рандомизатор порядка вариантов ответов к стандартному УИ?
Старый 27.11.2015, 11:00   #9  
Артем 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
Цитата:
Сообщение от Eugene.Ostroukhov Посмотреть сообщение
а есть идеи как прикрутить собственный рандомизатор порядка вариантов ответов к стандартному УИ?
Вот это и был вопрос. Написать запрос к XML данным, уверен, может половина форума. Я уж подумал, что вы это как-то вставили в XAML диалога.

Если это как-то и можно прикрутить - то только через выгрузку процесса в XAML с последующей правкой. В любом случае, в разметке вы сможете получить только ветвление процесса, но никак не случайную генерацию разметки. Единственный выход, который я вижу - генерировать копию процесса (диалога) для каждого пользователя. Это может сработать, но, на мой взгляд, короткая дорога в ад администратора.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
East Ocean - Technical: CRM2011 Dashboard: You do not have enough privileges to access CRM object or perform requested operation Blog bot Dynamics CRM: Blogs 1 29.08.2013 15:25
East Ocean - Technical: CRM2011 Plugin Registration Tool Throw Generic SQL error Blog bot Dynamics CRM: Blogs 0 30.05.2013 13:11
East Ocean - Technical: Do not apply Rollup 12 in CRM2011 Blog bot Dynamics CRM: Blogs 0 18.01.2013 00:11
East Ocean - Technical: CRM2011 UR 11 is available! Blog bot Dynamics CRM: Blogs 0 11.10.2012 15:11
Доступ из CRM2011 в CRM4.0 Borisvil Dynamics CRM: Разработка 7 28.06.2012 09:58

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

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

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