14.06.2012, 10:47 | #1 |
Участник
|
Доступ из CRM2011 в CRM4.0
Здравствуйте уважаемые!
Есть две задачки в одной организации. У них разные подразделения пользуются разными системами, одно использует CRM4.0, второе использует новую CRM2011. 4-ка сильно перелопачена и менять в ней ничего не хотят, а хотят из новой системы получать доступ к данным из старой. Все пользователи в одной сети и в обоих системах заведены. "Хотелки" заказчика весьма экзотичны. Собственно проблемы, может кто сталкивался и подскажет как решить: 1. Нужно по нажатию кнопки на рибоне в карточке CRM2011 проверить в ней несколько полей, совершить ряд действий в CRM4 и по результату создать письмо снова в 2011. Получается что нужно запустить с кнопки JScript, который проверит нужные поля и по результату видимо запустит ASPX приложение на сервере 4-ки с соответствующими параметрами. Дальше нужно отследить выполнение этого ASPX и в итоге создать письмо в 2011. Собственно все это по-отдельности сделать не проблема, а вот вместе наверняка вылезут сложности с авторизацией и обменом между серверами. 2. Хотят в iframe на карточке в CRM2011 разместить отчет Reporting Service CRM4.0, созданный в отношении объекта, чей GUID размещен в поле на карточке в CRM2011. То-есть надо из 2011 запустить отчет в 4-ке, передав параметры и результат разместить в iframe на карточке в 2011. Такое вообще возможно? Заранее благодарен за любые советы. |
|
14.06.2012, 12:13 | #2 |
Участник
|
Что касается первого вопроса, то наверное проще было бы сделать веб-сервис, который будет делать все что нужно в обоих системах, а сам этот сервис будет вызываться из JS-скрипта, вызываемого по нажатию кнопки на риббоне.
|
|
14.06.2012, 12:33 | #3 |
Участник
|
Цитата:
Конечно было-бы здорово сделать именно так, но не уверен что реально получится. |
|
14.06.2012, 14:13 | #4 |
Участник
|
Получится. Главное, чтобы он запускался от имени пользователя, который админ и который есть в обоих системах. Мы делали сервисы для различных версий систем, правда не связывали между собой 2 CRM, но это возможно. И сильной сложности нет. Если пользователя общего нет, но в веб-сервисе необходимо прописать от какого пользователя присоединяться к СРМ4. А если Вам просто данные нужно получить, то можно вообще просто к БД срм4 обратиться. Все это вполне реально.
|
|
19.06.2012, 12:46 | #5 |
Участник
|
Что-то я совсем запутался. Под веб-сервисом подразумевается ASPX приложение?
В SDK категорически не советуют это делать и вообще непонятно куда и как его размещать, как подключаться к конечным точкам CRM2011 и т.д. Все примеры в SDK исключительно касаются плагинов и консольных приложений, гугленье тоже ничего не дает кроме ответов типа "не используйте ASPX, используйте веб-ресурсы". Есть какие-нибудь примеры чтобы быстрее разобраться? |
|
19.06.2012, 13:57 | #6 |
Консультант-джедай
|
В отдельный веб-сайт, специально для него созданный
__________________
Крокодил, крокожу и буду крокодить. Человек человеку - волк , а зомби зомби - зомби. Экстремал и буду экстремать! Блога |
|
22.06.2012, 12:23 | #7 |
Участник
|
Совершенно верно, делаете отдельный сайта, в который будите складывать расширения для CRM (в основном это будут веб-сервисы) и кладете сервис туда.
Насчет того что MS не советует... Они много чего не советуют, только с их советами задачи эффективно решать не получается. В любой ситуации нужно искать компромиссное решение, оглядываясь на рекомендации MS но уж не строго им соответствуя. |
|
28.06.2012, 09:58 | #8 |
Участник
|
Можно сделать страничку и в виде веб-приложения внутри сайта CRM. Только нужно кучу сборок скопировать из каталога bin сервера в каталог bin ASPX странички. Иначе не запускается. Ну и при вызове использовать абсолютный путь. Причем цепляться к разным системам нужно разными способами - к 2011 используя методы из xrm.sdk, а к 4-ке используя методы вебсервиса, причем подключая их через алиас иначе возникает конфликт из-за одинаковых методов там и там.
|
|
|
|