04.02.2010, 12:16 | #1 |
Участник
|
Изменение ownerid
Нужно реализовать документооборот для конкретной сущности. При сохранении записи она должна появлятся у другого человека(ну как понимаю нужно изменить Ownerid). Как по событию OnSave изменить владельца данной записи? Поле Ownerid заданно только для чтения.
Также нужно каким-то образом задать человека, которому будет передаваться запись, это должна быть константа, нужно сделать что-нибудь типа "Параметры финансового года", чтобы один раз задать значение и потом оттуда брать при надобности. И еще вопрос. Есть поле new_demand_state типа lookup, по умолчанию пустое. Как сделать чтобы при сохранении устанавливалось значение с заданным ID? Последний раз редактировалось Skyway; 04.02.2010 в 12:23. |
|
04.02.2010, 12:21 | #2 |
Moderator
|
Изменить владельца лучше не через 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 |
Участник
|
Спасибо, лукап получилось заполнить
Цитата:
Изменить владельца лучше не через Workflow
|
|
04.02.2010, 12:39 | #4 |
Moderator
|
Я думаю что проще всего использовать для вашей задачи WorkFlow и, может быть, немного плагинов. Будет понятнее, если вы чуть более подробно опишите ваш "документооборот".
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
04.02.2010, 12:49 | #5 |
Участник
|
Хорошо. Пользователь заполняет заявку о командировке, сохраняет ее, и после этого она пропадает у него из списка активных, и появляется у пользователя, который проверяет заявку. После этого он может поставить статус "Согласованно" или "Не согласованно", в первом случае она передается третьему пользователю, который должен оформить заявку на билеты и т.д., во втором же она возвращается обратно.
А еще, по поводу ownerid/ если оно доступно не только для чтения, то появляется возможность назначить запись другому пользователю. Можно ли в этом случае использовать тот же механизм, что и для другого лукапа? |
|
04.02.2010, 13:49 | #6 |
Консультант-джедай
|
Цитата:
Сообщение от Skyway
Хорошо. Пользователь заполняет заявку о командировке, сохраняет ее, и после этого она пропадает у него из списка активных, и появляется у пользователя, который проверяет заявку. После этого он может поставить статус "Согласованно" или "Не согласованно", в первом случае она передается третьему пользователю, который должен оформить заявку на билеты и т.д., во втором же она возвращается обратно.
2 БП: при изменение поля Статус выполнять проверку: - Согласованно: назначать третьему юзверу - Не согласованно: возвращаем создателю заявки Цитата:
А еще, по поводу ownerid/ если оно доступно не только для чтения, то появляется возможность назначить запись другому пользователю. Можно ли в этом случае использовать тот же механизм, что и для другого лукапа?
__________________
Крокодил, крокожу и буду крокодить. Человек человеку - волк , а зомби зомби - зомби. Экстремал и буду экстремать! Блога |
|
|
За это сообщение автора поблагодарили: Skyway (1). |
04.02.2010, 14:10 | #7 |
Moderator
|
Я бы сделал это одним бизнес-процессом. Первый шаг - назначение. Второй - ожидание смены состояния. Третий - проверка условия и дальнейшие операции.
По поводу лукапа я тоже вас не понял.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
04.02.2010, 14:15 | #8 |
Участник
|
В данном случае поле "Владелец" (ownerid) также является лукапом... Но, хотя поле заполненно, alert(crmForm.all.ownerid.DateValue) возвращает Undefined, следовательно, можно предположить что используется какой-то другой способ сохранения....
|
|
04.02.2010, 14:29 | #9 |
Чайный пьяница
|
Цитата:
Лукап - и не сомневайтесь. Через простое обновление поля и сохранение - ничего не получится. В 4-ке появилось сообщение Assign, которое собственно и позволяет изменить ответственного записи. По поводу выполнения этого при помощи JavaScript - посмотрите тут. Ну и поменяйте под свои условия ествественно.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: Skyway (1). |
05.02.2010, 15:40 | #10 |
Участник
|
Цитата:
А если так попробовать - crmForm.all.ownerid.DateValue[0].name.
Нет, так не получается. Видимо существует какой-то другой механизм получения значения этого поля... |
|
05.02.2010, 15:47 | #11 |
Чайный пьяница
|
Да получается всё! Поле вынесено на форму и содержит данные?
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
05.02.2010, 16:56 | #12 |
Участник
|
|
|
05.02.2010, 18:04 | #13 |
Чайный пьяница
|
Цитата:
В момент когда срабатывает данный скрипт - заполнено ли поле владельца? Если вы это проверяете в Preview, то поле Владельца не заполняется... Таков механизм. Советую проверить на готовой карточке.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
Теги |
crm4, javascript, lookup, owner |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|