20.04.2005, 11:35 | #1 |
Участник
|
Microsoft CRM разработка, интеграция: SDK, C#, SQL, Exchange, Crystal Reports – обзор для программиста
Андрей Карасев Alba Spectrum Technologies (095) 918-3314, (095) 918-3111, help@albaspectrum.com Microsoft CRM является относительно новым игроком на рынке CRM приложений для компаний всех размеров – от мелких до крупных. Техническая концепция этого продукта, однако весьма отлична от традиционной. В случае традиционных CRM систем, как Siebel, Oracle – архитектура предполагает многоплатформность и в лучшем случае независимость, реально же минимальную настройку на конкретную платформу (Windows, Unix, Linux, итд.). Microsoft CRM создана на Microsoft Windows платформе и использует целый спектр технологий Microsoft: Активную директорию Windows, Microsoft Exchange 2003/2000, SQL сервер, Crystal Reports Enterprise, Biztalk сервер, Microsoft Outlook, Internet Explorer, Microsoft Great Plains и в скором будущем Navision (что более актуально для нашего российского рынка) как интегрированую ERP систему. Это означает что MS CRM возможна только на платформе Микрософт и по мнению одних экспертов сужает ее возможности, особенно учитываю возрастающую конкуренцию среди операционных систем, а по мнению других наоборот расширяет – так как позволяет использовать все ресурсы операционной системы Windows и многочисленных технологий Microsoft. Если вы разработчик программного обеспечения, вэб дизайнер или администратор баз данных которого спросили - “как нам модифицировать нашу Microsoft CRM” – мы предлагаем вам общие направления в этой небольшой статье. 1. Microsoft CRM SDK – это описание классов в форме интерактивного хэлпа с образцами кода на C# и частично на VB.net – все что вы можете создать и создадите в рамках MS CRM SDK теоретически будет поддерживаться службой технической поддержки Microsoft Business Solutions. Он основан на вызовах вэб сервисов и если вы C# .NET программист – вы должны прекрасно справиться с кастомизацией этого типа. Микрософт обещает давать больше образцов кода на VB.Net в последующих версиях SDK. И как показывает наш опыт – лучше всего придерживаться SDK и не делать прямого SQL программирования для доступа к MS CRM базе, во всяком случае без предварительного глубокого анализа возможностей SDK 2. Интеграция SQL баз данных на гетерогенных платформах. Это тоже относительно просто и поддерживается MBS. Если у вас есть аппликация написанная для реляционной базы данных (MS SQL сервер, Oracle, DB2, Sybase, итд.) простейший путь – это обращение к ней напрямую через SQL запросы (SQL Server) или при помощи созданного в MS SQL Server Enterprise Manager связанного сервера (linked server) – все что вы делаете это создаете ASPX .Net аппликацию и интегрируете ее в CRM. Вы можете поместить кнопку вызова на навигационную панель или в меню – это делается в isv.config – обратитесь к MS CRM SDK для деталей 3. Интеграция ASP приложения – это несколько сложнее – хотя и с первого взгляда неясно почему. Дело в том что MS CRM основана на .Net и это в большей частью серверный скомпиллированный код с вкраплениями Javascript со стороны клиента. Подумайте над созданием HTTP хэндлера как посредника между CRM .Net и ASP, основаном на старом пути серверных скриптов в IIS. Дополнительная подсказка– вам скорее всего придется поместить установки секьюрити для выбранного пользователя в INI фай для проникновения в MS CRM систему секьюрити чтобы вызвать MS CRM web service из HTTP хэндлера. Все это позволит вам интегрировать старое ASP приложение и дасть ему возможность создавать объекты в CRM 4. Программирование Microsoft Exchange. Microsoft CRM имеет Exchange коннектор – который обеспечивает посылку и прием писем непосредственно в CRM – он основан на очень простом но независимом от почтового сервера другой стороны методе – добавления GUID идентификаторой в заголовок письма. Простота метода к сожалению приводит к необходимости его усовершенствования. Представьте себе – ваш адресат не отвечает на присланное вами из CRM писмо – а создает вам новое – нет GUID в заголовке, письмо игнорируется коннектором и не попадает в CRM (где оно должно бы быть присоединено к записи контакта). Это довольно трудная работа. Обратитесь к MS Exchange SDK onsyncsave событию и вам потребуется COM+ объект созданный в VB – или просто позвоните к нам – мы поставляем этот коннектор нашим клиентам. 5. Прямые SQL обновления в CRM базе – в пункте 4 мы описали сценарий улучшения работы CRM при помощи MS Exchange хэндлеров – хотя этот сценарий должен бы работать в идеальном мире - MS CRM SDK имеет некоторые пробелы. Вам скорее всего придется иметь с этим дело и править флаги в CRM базе в обход SDK – это сделает вашу кастомизацию проблематичной для апгрейдов – но все же позволит решить поставленную задачу 6. MS CRM Customization Tool – это скорее для пользователя нежели программиста – обратитесь к руководству пользователя. 7. Crystal Reports – используйте этот инструментарий – структура таблиц в CRM самоочевидна. Однаке попробуйте избегать искушения создавать ваши собственные SQL view или stored procedure в MS CRM базе, вместо этого – создайте новую базу и поместите ваши объекты туда. Также имейте в виду что MS CRM имеет интегрированный Crystal Enterprise с лицензией работающей только с MS CRM базами – так что при создании вашей ASPX аппликации с Crystal Report – поместите ее на другой сервер Удачи во внедрении, кастомизации, проектировании отчетов и мы конечно же всегда рады вам помочь Позвоните нам в Москве: (095) 918-3314, (095) 918-3111, в США: 1-866-528-0577! help@albaspectrum.com Андрей является MS CRM специалистом в компании партнере Microsoft Business Solutions Alba Spectrum Technologies ( http://www.albaspectrum.com ) – устанавливающей и внедряющей Navision, Great Plains, Microsoft CRM клиентам в Москве, Петербурге, Казани, Киеве, Смоленске, Нью Йорке, Чикаго, Мехико, Германии. |
|
20.04.2005, 11:37 | #2 |
Administrator
|
Ветка перенесена в раздел Новости пользователей, консультантов, MSBS, рынка
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|