08.06.2010, 17:10 | #1 |
Участник
|
Сохранение параметров расширенного поиска в БД
Подскажите как сохранить у себя в БД настроенные параметры расширенного поиска, так же как это делается в UserQuery. Мне необходимо сделать сущность (скажем ХХХ) в записях которой я буду хранить параметру расширенного поиска. Потом надо будет этот поиск еще и запускать ... Кто пробовал?
|
|
08.06.2010, 17:33 | #2 |
Moderator
|
Опишите задачу подробнее, пожалуйста. Хотелось бы услышать не что вам нужно, а для чего. А так реализовывалось подобное: http://www.axforum.info/forums/blog.php?b=40
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
08.06.2010, 17:59 | #3 |
Участник
|
Цитата:
Сообщение от Артем Enot Грунин
Опишите задачу подробнее, пожалуйста. Хотелось бы услышать не что вам нужно, а для чего. А так реализовывалось подобное: http://www.axforum.info/forums/blog.php?b=40
Решение такое обсусловлено тем, что опеределение OwnerID зависит от множества факторов, исвестны которые становятся только при внедрении системы после подготовки соответствующего ТЗ. |
|
08.06.2010, 23:21 | #4 |
Moderator
|
Прошу прощения, но это звучит как бред. Вы повторно строите то не знаю что. Для отработки на событие создание следует использовать либо воркфлоу, либо плагин. В вашем случае лучше подходит плагин.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
09.06.2010, 12:06 | #5 |
Участник
|
Цитата:
Прошу прощения, но бред это когда не понимая суть и причины бизнес-задачи начинают выносить некоторые оценки тем или иным действиям и желаниям своих колллег... Система у нас сложная, не плоская... поэтому и решения применяются сложные... |
|
09.06.2010, 12:44 | #6 |
Moderator
|
Прошу прощения, но я не новичок в разработке под эту систему и знаю ее возможности! Поверьте поддерживать какую-то охинею которая гранит в базе готовые fetch запросы (а вы, к примеру, знали что расширенный поиск использует именно этот механизм?) значительно сложнее чем поддерживать стандартный рабочий процесс. Кроме того, этот механизм можно расширять под свои нужды! В том числе для выполнения поиска: http://mscrm4ever.blogspot.com/2009/...ry-wizard.html
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
09.06.2010, 13:05 | #7 |
Участник
|
Цитата:
Сообщение от Артем Enot Грунин
Прошу прощения, но я не новичок в разработке под эту систему и знаю ее возможности! Поверьте поддерживать какую-то охинею которая гранит в базе готовые fetch запросы (а вы, к примеру, знали что расширенный поиск использует именно этот механизм?) значительно сложнее чем поддерживать стандартный рабочий процесс. Кроме того, этот механизм можно расширять под свои нужды! В том числе для выполнения поиска: http://mscrm4ever.blogspot.com/2009/...ry-wizard.html
|
|
09.06.2010, 15:40 | #8 |
Moderator
|
Не важно где хранить коды запросов: внутри кастомного объекта, или ссылаться на готовый UserQuery/SavedQuery. Речь шла о том что вам нужно разобраться как работают внутренние механизмы системы. Поясните все же для чего нужен поиск? Не на XXX, а на конкретных примерах и задачах. Есть ощущение, что вы хотите производить назначение объекта на основании того, попадает ли он под критерии поиска для конкретного пользователя.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
10.06.2010, 13:20 | #9 |
Участник
|
Цитата:
Сообщение от Артем Enot Грунин
Не важно где хранить коды запросов: внутри кастомного объекта, или ссылаться на готовый UserQuery/SavedQuery. Речь шла о том что вам нужно разобраться как работают внутренние механизмы системы. Поясните все же для чего нужен поиск? Не на XXX, а на конкретных примерах и задачах. Есть ощущение, что вы хотите производить назначение объекта на основании того, попадает ли он под критерии поиска для конкретного пользователя.
1. XXXID 2. CustomerID 3. Name 4. OwnerID 5. и др. то примером не умещающегося в стандартный функционал бизнес-процессов может быть случай, когда надо определить того или иного пользователя как владельца в зависимости от принадлежности пользователя к тому или иному подразделению и количества выполненных за последние 365 дней действий под объектом XXX, от результатов и этих дейтсвий и т.д. Пользователей, которые могут быть назначены в качестве владельцев может быть много и в случае ухода кого либо в отпуск или увольнения не хотелось бы перенастраивать бизнес-процесс. В общем видится что настройку определения владельцев надо вынести из бизнес-процессов, а вот в самом бизнес-процессе оставить только метод, который на основании этой настройки будет искать и присваивать ownerID... Вот такая механика... Соответственно хотел бы где либо почитать и посмотреть код в котором сохраняют, модифицируют и запускают сохранённый поиск... Ну или запускают сохранённый в UserQuery... |
|
10.06.2010, 17:30 | #10 |
Moderator
|
Цитата:
Если не хватит стандартных опций, например, проверка загруженности или отпуск пользователя - всегда можно дописать свои шаги для процесса. Вот бы только почитать в sdk как это делает, верно? Я думаю что уже очевидно, что всем лень писать для вас код который делает неведомую хреновину. Прислушайтесь уже к совету профессионала и идите в указанном мной направлении. p.s. Неправильный путь (ваш): запросом Retrive вычитать id нужной вам сущности UserQuery (понятия не имею как вы поймете какая вам нужна в конкретном случае) , после чего сообщением ExecuteByIdUserQuery выполнить его и обработать результат.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
10.06.2010, 17:41 | #11 |
Участник
|
Цитата:
Сообщение от Артем Enot Грунин
Может все-таки начнете изучать систему? Один и тот же БП легко может срабатывать и на событие создание записи и на событие смены состояния. Есть стандартный шаг проверки условий например "текущее состояние = состояние N" после которого можно выполнять дальнейшие проверки или запускать дочерний процесс - очень удобно для декомпозиции сложных правил.
Если не хватит стандартных опций, например, проверка загруженности или отпуск пользователя - всегда можно дописать свои шаги для процесса. Вот бы только почитать в sdk как это делает, верно? Я думаю что уже очевидно, что всем лень писать для вас код который делает неведомую хреновину. Прислушайтесь уже к совету профессионала и идите в указанном мной направлении. p.s. Неправильный путь (ваш): запросом Retrive вычитать id нужной вам сущности UserQuery (понятия не имею как вы поймете какая вам нужна в конкретном случае) , после чего сообщением ExecuteByIdUserQuery выполнить его и обработать результат. |
|