16.07.2013, 11:35 | #1 |
Участник
|
Запрет на сохрание со статусом "Выигрыш" для возможной сделки
Добрый день.
Стоит задача, запретить пользователю закрывать сделку как заключенную если не заполнено определенное поле, т.к. по этому полю создается запись в другой сущности и идет синхронизация с 1С. Подскажите по решению. Спасибо CRM 2011 RU13 |
|
16.07.2013, 12:01 | #2 |
Еда - топливо, Одежда - н
|
Ну тут как бы может быть несколько вариантов. Все зависит от того, кто отвечает за закрытие сделки.
Если к примеру это только одна бизнес роль (менеджер по продажам), то можно для них сделать отдельную форму. В которой сделать это поле обязательным (при условии, что они могут его заполнить в самом начале процесса).... Если же нет, то писать скрипт на блокировку кнопки квалификации, до тех пор, пока поле не будет заполнено. Расскажите подробней о действиях и условиях. И возможно подскажут что сделать и как. Пока не понятны условия. |
|
16.07.2013, 12:15 | #3 |
Участник
|
Бизнес так устроен, что закрыть может каждый, у кого есть доступ.
Поэтому формой не решить. Поле должно быть заполнено обязательно при закрытии, так как его значение критично при создании новой записи в другой сущности. При закрытии с любым другим статусом, его заполнение не обязательна. |
|
16.07.2013, 12:21 | #4 |
Еда - топливо, Одежда - н
|
Так вот я и спрашиваю. Сколько ролей, может это делать?
Цитата:
Поле должно быть заполнено обязательно при закрытии, так как его значение критично при создании новой записи в другой сущности.
Вопрос №2 - данные для этого поля уже есть в системе где-то? Вопрос №3 - какого характера должна быть информация в этом поле? Вопрос№4 - какого типа поле нужно заполнить? (текст, лукам и т.д.) |
|
16.07.2013, 13:10 | #5 |
Чайный пьяница
|
Тут без разработки, боюсь, никак. Я бы сделал JavaScript + Plugin для подстраховки.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
16.07.2013, 14:16 | #6 |
Участник
|
Все роли могут это делать.
После нажатия. Данные пользователь в ручную заносит после получения их из другого отдела. Текстовая информация, в данном случае, номер сделки\проекта Текст |
|
16.07.2013, 14:30 | #7 |
Участник
|
Для решения задачи необходимо понимать следующее.
1 Здесь нужна разработка. 2. Можно решить 2 способами JS и плагин. 3. обратите внимание, что кнопка закрыть у Вас есть и в основном гриде возможных сделок. Я бы решил так. Обязательно бы сделала плагин на событие PreSetState и PreSetStateDynamic Entity. С шагом 10. В нем бы проверял, если поле не заполнено, то выбрасывал бы исключение. Минусы этого решения только одно. Это не красиво. С точки зрения интерфейса. Тогда к нему добавляется еще одно. Перед нажатием кнопки на форме проверять, заполнено поле или нет. и если заполнено, то проходить дальше. Это возможно сделать для штатной кнопки. То есть при нажатии на нее вызывается некая JS ф-ия. Вы должны написать свою ф-ию, которая будет выполнять проверку и вызывать штатную ф-ию. Еще вариант. запрещать нажимать на эту кнопку если поле не заполнено. Это тоже делается поддерживаемым способом. Это все рюшечки и обвесы. За правильность ввод данных в любом случае ответит плагин и не пропустит действие, не из интеграции не из внешнего приложения, что тоже может быть. |
|
16.07.2013, 14:38 | #8 |
Еда - топливо, Одежда - н
|
Цитата:
В свою очередь, это поле должно быть доступно для редактирования только определенным рабочим группам (вот тот вот отдел). Пускай они его заполняют. Пока не заполнят, сделку не квалифицируют. Так можно будет 2-х зайцев убить. Тут можно почитать. http://crm-biz.com/o-profile-bezopas...mics-crm-2011/ |
|
16.07.2013, 15:56 | #9 |
Чайный пьяница
|
Цитата:
Если я не ошибаюсь, то всё таки тут надо обрабатывать Win сообщение.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: g.Naukovych (3). |
16.07.2013, 16:17 | #10 |
Участник
|
Win да.
А точно изменение статуса не сработает? |
|
16.07.2013, 16:26 | #11 |
Чайный пьяница
|
В случае Opportunity - SetState/SetStateDynamicEntity стреляет только в случае если переоткрывают. Эксперименты над этими сущностями проводил ещё во времена каждодневной работы с 4.0, так что на протокол не возьму , но вроде нет.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
|