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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.08.2010, 18:39   #1  
Dicora is offline
Dicora
Участник
 
109 / 15 (1) ++
Регистрация: 12.07.2010
Работа с полем типа PartyList в MS CRM 4.0
Здравствуйте, такая задача:

Есть сущность "Встреча" (системная), на форме этой сущности есть поле Обязательные и Необзательные участники встречи. Рассмотрим поле Обязательные участники встречи.

Из карточки Организация создаю действие (тип Встреча), далее иду в Обязательные участники и на форме "Поиск в записях" слева вверху выбираю "поиск по контактам" нажимаю "лупку" и передо мной полный список контактов. А хотелось бы чтобы был только список контактов, которые закреплены за той организацией из которой я создаю встречу. Понятное дело если я создаю встречу из организации "Ромашка", то и на встрече будут присутствовать сотрудники "Ромашк"-и.

Но к сожалению не могу врубиться как это сделать:

На событие onLoad формы встречи вешаю такой скрипт:

PHP код:
if(crmForm.FormType==&& crmForm.all.accountid.DataValue!=null)
{
var 
field crmForm.all.requiredattendees;

var 
lookupParent = new Array;
lookupParent crmForm.all.accountid.DataValue;

if (
lookupParent == null)

    
field.DataValue=null;
    
field.ForceSubmittrue
    
field.Disabled true

else 

    
field.lookupbrowse 1
    
field.Disabled false;

    
field.AddParam("search"
     
"<fetch mapping='logical'><entity name='contact'>" 
    
"<filter><condition attribute='parentcustomerid' operator='eq' value='" 
    
lookupParent[0].id
    
"' /></filter></entity></fetch>");
}


По идее, при создании встречи из карточки контакта в карточку встречи переноситься GUID организации (crmForm.all.accountid) - но он не переносится, и поэтому в поле "requiredattendees" в значение "Контакты" левого поля не вписывается GUID организации за которой контакты закреплены и поэтому отображаются все контакты.

Убейте.. но не понимаю как это исправить.

Помогите пожалуйста..

Заранее огромное спасибо!
Старый 30.08.2010, 19:45   #2  
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
Цитата:
Сообщение от Dicora Посмотреть сообщение
Здравствуйте, такая задача:

Есть сущность "Встреча" (системная), на форме этой сущности есть поле Обязательные и Необзательные участники встречи. Рассмотрим поле Обязательные участники встречи.

Из карточки Организация создаю действие (тип Встреча), далее иду в Обязательные участники и на форме "Поиск в записях" слева вверху выбираю "поиск по контактам" нажимаю "лупку" и передо мной полный список контактов. А хотелось бы чтобы был только список контактов, которые закреплены за той организацией из которой я создаю встречу. Понятное дело если я создаю встречу из организации "Ромашка", то и на встрече будут присутствовать сотрудники "Ромашк"-и.

Но к сожалению не могу врубиться как это сделать:

На событие onLoad формы встречи вешаю такой скрипт:

PHP код:
if(crmForm.FormType==&& crmForm.all.accountid.DataValue!=null)
{
var 
field crmForm.all.requiredattendees;

var 
lookupParent = new Array;
lookupParent crmForm.all.accountid.DataValue;

if (
lookupParent == null)

    
field.DataValue=null;
    
field.ForceSubmittrue
    
field.Disabled true

else 

    
field.lookupbrowse 1
    
field.Disabled false;

    
field.AddParam("search"
     
"<fetch mapping='logical'><entity name='contact'>" 
    
"<filter><condition attribute='parentcustomerid' operator='eq' value='" 
    
lookupParent[0].id
    
"' /></filter></entity></fetch>");
}


По идее, при создании встречи из карточки контакта в карточку встречи переноситься GUID организации (crmForm.all.accountid) - но он не переносится, и поэтому в поле "requiredattendees" в значение "Контакты" левого поля не вписывается GUID организации за которой контакты закреплены и поэтому отображаются все контакты.

Убейте.. но не понимаю как это исправить.

Помогите пожалуйста..

Заранее огромное спасибо!
По фильтрации мультилукапа в голову приходит только одно решение - http://jianwang.blogspot.com/2009/08...kup-multi.html
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 31.08.2010, 01:03   #3  
Bondonello is offline
Bondonello
Kostya Afendikov
Аватар для Bondonello
MCBMSS
Лучший по профессии 2009
 
510 / 106 (5) +++++
Регистрация: 06.06.2008
Адрес: Украина
Для фильтрации лукапа в 4ке необходимо немного подправить системный файл. Вы так делали?
Посмотрите пример и попробуйте
http://ms-dynamics-crm.com.ua/2009/0...okup-fetchxml/
Старый 31.08.2010, 02:11   #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
Цитата:
Сообщение от Bondonello Посмотреть сообщение
Для фильтрации лукапа в 4ке необходимо немного подправить системный файл. Вы так делали?
Посмотрите пример и попробуйте
http://ms-dynamics-crm.com.ua/2009/0...okup-fetchxml/
Не путай человека. Данный код приведён для сингл лукапа (хотя если честно мне гораздо больше нравится решение Моти Менделовича - http://mscrmfilteredlookup.codeplex.com/). При вызове лукапа из партилист поля - открывается мультилукап.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 02.02.2011, 14:20   #5  
Буденый is offline
Буденый
Участник
 
70 / 15 (1) ++
Регистрация: 07.06.2010
Адрес: Донецк
вопрос
Интересно было бы узнать каким образом можно скрыть(или удалить) при выборе в мультилукапе некоторые связи, например:

При выборе Обязательного участника встречи, возможность добавлять только контакты и интересы, а остальные варианты(как Организация) скрыть. А то как то не очень на встрече обязательный участник Организация(как будто все предприятие прийдет на встречу)
Старый 02.02.2011, 14:34   #6  
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
Цитата:
Сообщение от Буденый Посмотреть сообщение
Интересно было бы узнать каким образом можно скрыть(или удалить) при выборе в мультилукапе некоторые связи, например:

При выборе Обязательного участника встречи, возможность добавлять только контакты и интересы, а остальные варианты(как Организация) скрыть. А то как то не очень на встрече обязательный участник Организация(как будто все предприятие прийдет на встречу)
По аналогии с приведённой ссылкой - http://www.stunnware.com/crm2/topic.aspx?id=JS34
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 02.02.2011, 19:43   #7  
Konstantin Katsovich is offline
Konstantin Katsovich
Участник
Аватар для Konstantin Katsovich
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
243 / 57 (2) ++++
Регистрация: 22.10.2008
Адрес: Israel
Цитата:
Сообщение от Буденый Посмотреть сообщение
Интересно было бы узнать каким образом можно скрыть(или удалить) при выборе в мультилукапе некоторые связи, например:

При выборе Обязательного участника встречи, возможность добавлять только контакты и интересы, а остальные варианты(как Организация) скрыть. А то как то не очень на встрече обязательный участник Организация(как будто все предприятие прийдет на встречу)
Попробуйте вот так
On Load Form
crmForm.all.requiredattendees.lookuptypes = "1,4";
crmForm.all.requiredattendees.lookuptypenames = "account:1,lead:4";
crmForm.all.requiredattendees.className = "ms-crm-Lookup";

On Save Form
crmForm.all.requiredattendees.className = "ms-crm-Lookup-Party"; ;

мне помогло
__________________
Читайте SDK!!!
За это сообщение автора поблагодарили: Буденый (1).
Теги
разработка, dynamics crm

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ошибка открытия приложения ms crm Camena Dynamics CRM: Администрирование 3 04.06.2010 18:57
CRMScape: RFC822 Import to MS CRM email activity utility Blog bot Dynamics CRM: Blogs 0 13.08.2009 15:05
Microsoft Dynamics CRM Team Blog: CRM Online: Reporting Options Blog bot Dynamics CRM: Blogs 0 18.06.2009 06:14
Microsoft Dynamics CRM Team Blog: Building a Self-Contained Virtual CRM Development Server Blog bot Dynamics CRM: Blogs 0 05.05.2009 10:05
Microsoft Dynamics CRM Team Blog: Microsoft Dynamics CRM 4.0 Bookshelf Blog bot Dynamics CRM: Blogs 1 22.01.2009 04:46

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

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

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