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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.02.2010, 12:16   #1  
Skyway is offline
Skyway
Участник
 
78 / 10 (1) +
Регистрация: 07.08.2009
Изменение ownerid
Нужно реализовать документооборот для конкретной сущности. При сохранении записи она должна появлятся у другого человека(ну как понимаю нужно изменить Ownerid). Как по событию OnSave изменить владельца данной записи? Поле Ownerid заданно только для чтения.
Также нужно каким-то образом задать человека, которому будет передаваться запись, это должна быть константа, нужно сделать что-нибудь типа "Параметры финансового года", чтобы один раз задать значение и потом оттуда брать при надобности.
И еще вопрос. Есть поле new_demand_state типа lookup, по умолчанию пустое. Как сделать чтобы при сохранении устанавливалось значение с заданным ID?

Последний раз редактировалось Skyway; 04.02.2010 в 12:23.
Старый 04.02.2010, 12:21   #2  
Артем 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
Изменить владельца лучше не через Workflow. Лукап можно заполнить скриптом: читайте SDK:
Код:
//Create an array to set as the DataValue for the lookup control.
var lookupData = new Array();
//Create an Object add to the array.
   var lookupItem= new Object();
//Set the id, typename, and name properties to the object.
   lookupItem.id = '{1AAC1363-01A1-DB11-8432-0003FF9CE217}';
   lookupItem.typename = 'account';
   lookupItem.name = 'A Bike Store';
// Add the object to the array.
   lookupData[0] = lookupItem;
// Set the value of the lookup field to the value of the array.
   crmForm.all.parentaccountid.DataValue = lookupData;
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
За это сообщение автора поблагодарили: Skyway (1).
Старый 04.02.2010, 12:32   #3  
Skyway is offline
Skyway
Участник
 
78 / 10 (1) +
Регистрация: 07.08.2009
Спасибо, лукап получилось заполнить
Цитата:
Изменить владельца лучше не через Workflow
А можно поподробнее об этом?
Старый 04.02.2010, 12:39   #4  
Артем 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
Я думаю что проще всего использовать для вашей задачи WorkFlow и, может быть, немного плагинов. Будет понятнее, если вы чуть более подробно опишите ваш "документооборот".
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 04.02.2010, 12:49   #5  
Skyway is offline
Skyway
Участник
 
78 / 10 (1) +
Регистрация: 07.08.2009
Хорошо. Пользователь заполняет заявку о командировке, сохраняет ее, и после этого она пропадает у него из списка активных, и появляется у пользователя, который проверяет заявку. После этого он может поставить статус "Согласованно" или "Не согласованно", в первом случае она передается третьему пользователю, который должен оформить заявку на билеты и т.д., во втором же она возвращается обратно.

А еще, по поводу ownerid/ если оно доступно не только для чтения, то появляется возможность назначить запись другому пользователю. Можно ли в этом случае использовать тот же механизм, что и для другого лукапа?
Старый 04.02.2010, 13:49   #6  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
Цитата:
Сообщение от Skyway Посмотреть сообщение
Хорошо. Пользователь заполняет заявку о командировке, сохраняет ее, и после этого она пропадает у него из списка активных, и появляется у пользователя, который проверяет заявку. После этого он может поставить статус "Согласованно" или "Не согласованно", в первом случае она передается третьему пользователю, который должен оформить заявку на билеты и т.д., во втором же она возвращается обратно.
1 БП: при создании заявки назначать ее на проверяющего юзера
2 БП: при изменение поля Статус выполнять проверку:
- Согласованно: назначать третьему юзверу
- Не согласованно: возвращаем создателю заявки
Цитата:
А еще, по поводу ownerid/ если оно доступно не только для чтения, то появляется возможность назначить запись другому пользователю. Можно ли в этом случае использовать тот же механизм, что и для другого лукапа?
Если Вы спрашиваете, можно ли использовать способ задания лукапа, описанный выше, для любого другого лука, то ответ да.
__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога
За это сообщение автора поблагодарили: Skyway (1).
Старый 04.02.2010, 14:10   #7  
Артем 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
Я бы сделал это одним бизнес-процессом. Первый шаг - назначение. Второй - ожидание смены состояния. Третий - проверка условия и дальнейшие операции.
По поводу лукапа я тоже вас не понял.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 04.02.2010, 14:15   #8  
Skyway is offline
Skyway
Участник
 
78 / 10 (1) +
Регистрация: 07.08.2009
В данном случае поле "Владелец" (ownerid) также является лукапом... Но, хотя поле заполненно, alert(crmForm.all.ownerid.DateValue) возвращает Undefined, следовательно, можно предположить что используется какой-то другой способ сохранения....
Старый 04.02.2010, 14:29   #9  
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
Цитата:
Сообщение от Skyway Посмотреть сообщение
В данном случае поле "Владелец" (ownerid) также является лукапом... Но, хотя поле заполненно, alert(crmForm.all.ownerid.DateValue) возвращает Undefined, следовательно, можно предположить что используется какой-то другой способ сохранения....
А если так попробовать - crmForm.all.ownerid.DateValue[0].name.

Лукап - и не сомневайтесь. Через простое обновление поля и сохранение - ничего не получится. В 4-ке появилось сообщение Assign, которое собственно и позволяет изменить ответственного записи. По поводу выполнения этого при помощи JavaScript - посмотрите тут. Ну и поменяйте под свои условия ествественно.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
За это сообщение автора поблагодарили: Skyway (1).
Старый 05.02.2010, 15:40   #10  
Skyway is offline
Skyway
Участник
 
78 / 10 (1) +
Регистрация: 07.08.2009
Цитата:
А если так попробовать - crmForm.all.ownerid.DateValue[0].name.
Ошибка:'crmForm.all.ownerid.DateValue.0' - есть null или не является объектом
Нет, так не получается. Видимо существует какой-то другой механизм получения значения этого поля...
Старый 05.02.2010, 15:47   #11  
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
Цитата:
Сообщение от Skyway Посмотреть сообщение
Ошибка:'crmForm.all.ownerid.DateValue.0' - есть null или не является объектом
Нет, так не получается. Видимо существует какой-то другой механизм получения значения этого поля...
Да получается всё! Поле вынесено на форму и содержит данные?
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 05.02.2010, 16:56   #12  
datfi is offline
datfi
Участник
 
240 / 15 (1) ++
Регистрация: 20.08.2009
Адрес: Россия, Сыктывкар
Цитата:
Сообщение от Skyway Посмотреть сообщение
Ошибка:'crmForm.all.ownerid.DateValue.0' - есть null или не является объектом
Нет, так не получается. Видимо существует какой-то другой механизм получения значения этого поля...
crmForm.all.ownerid.DateValue[0].name.
crmForm.all.ownerid.DateValue.0

Разницу замечаете?
Старый 05.02.2010, 18:04   #13  
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
Цитата:
Сообщение от datfi Посмотреть сообщение
crmForm.all.ownerid.DateValue[0].name.
crmForm.all.ownerid.DateValue.0

Разницу замечаете?
Дело не в том. CRM именно так и показывает ошибку.

В момент когда срабатывает данный скрипт - заполнено ли поле владельца? Если вы это проверяете в Preview, то поле Владельца не заполняется... Таков механизм. Советую проверить на готовой карточке.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

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

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Странности бизнес-процесса на изменение атрибутов записи SLK Dynamics CRM: Функционал 6 19.05.2009 08:14
Проблема: Изменение роли Ametmail Dynamics CRM: Администрирование 3 19.06.2008 17:32
Изменение Атрибутов в "объектах" ms crm 3 stillwind Dynamics CRM: Администрирование 3 29.06.2007 10:30
Изменение системного объекта amg Dynamics CRM: Разработка 4 20.11.2006 14:30
Почему недоступно изменение параметров? Faina Dynamics CRM: Администрирование 2 09.06.2006 09:45

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

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

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