09.05.2012, 14:49 | #1 |
Участник
|
Фильтрация представлений
Добрый день всем! С Праздником! Вопрос, как реализовать фильтрацию представления? Вот например есть 2 связанные сущности, поле лукап, в общем всё как надо. И при нажатии на лукап поле, надо чтобы выводились только определенные записи, а не все подряд допустим.
|
|
09.05.2012, 16:32 | #2 |
Чайный пьяница
|
Добрый день,
Указывайте, пожалуйста, какую версию систему вы используете. Телепатов на форуме нет. Для 2011 посмотрите это - http://crmconsultancy.wordpress.com/...s-in-crm-2011/ Для 4.0 - http://crm.georged.id.au/post/2008/0...-in-CRM-4.aspx http://mscrmfilteredlookup.codeplex.com/
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: Taker1796 (1). |
09.05.2012, 16:44 | #3 |
Участник
|
Спасибо!
CRM 4.0, фильтровать надо с использованием js |
|
09.05.2012, 17:53 | #4 |
Чайный пьяница
|
Чистым JS у вас ничего не получится. Поэтому посмотрите те статьи, что я указал.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
10.05.2012, 17:24 | #5 |
Участник
|
Я пробовал делать, так как рекомендует а33ik, это работает для представлений, но не для связанных сущностей. уж не знаю почему. Для них необходимо перехватывать событие RetrieveMultiple и фильтровать его аналогичным образом, но там не Fetch, а QueryExpression.
Вот примерно так X++: public class ContactFilterRel : IPlugin { public void Execute(IPluginExecutionContext context) { if (context.Depth > 1) return; if (context.InputParameters.Contains(ParameterName.Query)) { ICrmService service = context.CreateCrmService(true); if (Helper.IsEmpty(service, context.InitiatingUserId)) return; QueryExpression qe = context.InputParameters[ParameterName.Query] as QueryExpression; } } } |
|
14.05.2012, 01:19 | #6 |
Участник
|
Цитата:
Сообщение от g.Naukovych
Я пробовал делать, так как рекомендует а33ik, это работает для представлений, но не для связанных сущностей. уж не знаю почему. Для них необходимо перехватывать событие RetrieveMultiple и фильтровать его аналогичным образом, но там не Fetch, а QueryExpression.
Вот примерно так X++: public class ContactFilterRel : IPlugin { public void Execute(IPluginExecutionContext context) { if (context.Depth > 1) return; if (context.InputParameters.Contains(ParameterName.Query)) { ICrmService service = context.CreateCrmService(true); if (Helper.IsEmpty(service, context.InitiatingUserId)) return; QueryExpression qe = context.InputParameters[ParameterName.Query] as QueryExpression; } } } |
|
14.05.2012, 10:31 | #7 |
Участник
|
Может я чего не так делал, но если я заходил в сущность, то связанные сущности у меня не фильтровались. Я конечно не правил файл lookupsingle.aspx . А писал плагин на Execute.
Но он на получение связанных сущностей не срабатывал. Это было в CRM 4. |
|