AXForum  
Zurück   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Kennwort vergessen?
Registrieren Forum Rules Hilfe Benutzerliste Heutige Beiträge Suchen Alle Foren als gelesen markieren

 
 
Themen-Optionen Thema durchsuchen Ansicht
Alt 26.06.2011, 13:51   #1  
Савран Роман ist offline
Савран Роман
Участник
 
58 / 17 (1) ++
Registriert seit: 19.02.2009
Ort: Киев, Украина
Configuration Management For Microsoft CRM
Коллеги, добрый день

Занимаюсь поддержкой и разработкой Майкрософт ЦРМ для нескольких клиентов + есть небольшая команда разработчиков/кастомизаторов.

Сейчас передо мной стоит задача ускорить и оптимизировать их процесс работы. На данный момент уже почти дописал плагин к Visual Studio, который позволяет:
1. Регистрировать в CRM плагины открытого в студии проекта по хмл файлу конфигурации
2. Копировать pdb файлы в папку CRM, делать iisreset, подключаться к w3p (включая режим удаленной отладки), чтобы отлаживать плагин по одной кнопке.
3. После ребилда проекта автоматически обновлять плагин в CRM
Если кто хочет - пишите, я после того как закончу над ним работу (ориентировочно 30 июня), могу дать погонять. Может у кого-то есть еще какие-то пожелания насчет его работы?

Сейчас еще зародилась идея проекта по отслеживанию настроек, которые делаются в системе для простого их переноса. Идея достаточно простая. Есть какое-то требование заказчика, например номер 1275. Мы фиксируем это требование и логируем все изменения метаданных и данных, которые делает программист Петя когда разрабатывает это требование (при помощи плагинов). Потом при необходимости переноса воспроизводим эти изменения в нужном CRM.

Это правда будет работать только в том идеальном случае, когда среда разработки изначально совпадает с тестовой средой и продакшн .

В общем суть этой темы в следующем - как повысить производительность разработок и настроек для Mircosoft CRM, какие для этого есть утилиты и подходы, или идеи.
Alt 27.06.2011, 09:35   #2  
Савран Роман ist offline
Савран Роман
Участник
 
58 / 17 (1) ++
Registriert seit: 19.02.2009
Ort: Киев, Украина
С логгированием изменений настроек немного наломался. Оказывается в CRM нельзя зарегистрировать плагин на изменение метаданных (список событий метаданных http://msdn.microsoft.com/en-us/library/cc151148.aspx). У кого-то есть опыт написания утилит отслеживания изменений в метаданных ? Например, добавления атрибутов, сущностей и т.д.

Пока приходит в голову только вешать триггеры на таблицы метаданных CRM, но мне этот метод не очень нравится
Alt 27.06.2011, 10:04   #3  
Артем Enot Грунин ist offline
Артем Enot Грунин
Moderator
Benutzerbild von Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3.912 / 623 (28) +++++++
Registriert seit: 16.08.2007
Ort: Пермь!
Blog-Einträge: 151
Насколько я помню, плагином можно поймать события импорта-экспорта-публикации настроек. Мне кажется, что вы решаете проблему которой нет. То о чем вы говорите решается несложными дисциплинарными мерами. Не вижу проблем в том, чтобы подключить файл кастомизации CRM к проекту в студии. Так вы получите единую систему хранения и контроля версий для вашего решения.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Alt 27.06.2011, 18:42   #4  
slivka_83 ist offline
slivka_83
Консультант-джедай
Benutzerbild von slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1.683 / 374 (16) ++++++
Registriert seit: 18.12.2008
Ort: default city
Zitat:
Zitat von Савран Роман Beitrag anzeigen
С логгированием изменений настроек немного наломался. Оказывается в CRM нельзя зарегистрировать плагин на изменение метаданных (список событий метаданных http://msdn.microsoft.com/en-us/library/cc151148.aspx). У кого-то есть опыт написания утилит отслеживания изменений в метаданных ? Например, добавления атрибутов, сущностей и т.д.

Пока приходит в голову только вешать триггеры на таблицы метаданных CRM, но мне этот метод не очень нравится
Zitat:

SELECT
*FROMsys.objectsWHEREDATEDIFF(D,modify_date,GETDATE())< 10

__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога
Alt 27.06.2011, 19:40   #5  
Савран Роман ist offline
Савран Роман
Участник
 
58 / 17 (1) ++
Registriert seit: 19.02.2009
Ort: Киев, Украина
Спасибо за ответы, задача в принципе состоит из нескольких вещей:
1. Уменьшить время от озвучивания клиентом задачи, то воплощения ее в ЦРМ.
2. Уменьшить количество людских ошибок при переносе настроек.
3. Уменьшить трудозатраты на разработку требований.
4. Сохранить качество на высоком уровне.

В рамках разработки можно выгружать кастомизации и крепить их к проекту, ложить в свн. Это оправданно и нужно.

Но часто задачи по поддержке достаточно просты, например добавить поле на форму. Для этого выгружать настройки из црм, крепить к проекту и коммитить в свн достаточно долго. Накладные расходы по времени больше времени решения задачи, поэтому хотелось бы иметь автоматизированный тул, который сам бы отслеживал и версионировал изменения в ЦРМ в привязке к задаче клиента. В рамках проекта или поддержки.

Как это обычно выглядит у нас:
1. Клиент говорит "У меня поменялся бизнес-процесс. Вместо кнопки А должна быть кнопка Б и делать она должна не Г а Д".
2. Консультант формулирует и передает задачу разработчику.
3. Разработчик делает задачу
4. Консультант проверяет на тесте (если есть необходимость подключается еще кто-то протестировать полноценно, если задача сложная)
5. Разработчик переносит на продакт

У некоторых клиентов переносится несколько требований сразу, формируется т.к. называемый релиз. Зависит от размера клиента, некоторым нормальные процессы разработки и поддержки не под силу .

Самые узкие места процесса обычно в таком случае - качественное ведение списка задач и перенос настроек. Так, как, например разработчик мог сделать задачу и уже сесть за следующую, пока консультант протестирует. Потом ему надо возвращаться к задаче и вспоминать что же он там сделал и что ему надо перенести. А так, например, при подтверждении консультантом, разработку мог бы перенести и специалист поддержки, не обладающий, например, такой квалификацией как программист.

Кроме этого не хотелось бы, например, перекидывать все настройки, а только дельту и иметь возможность отката настроек - возврата системы в предидущее состояние до релиза.

У меня была также идея написать приложение в котором программист перед разработкой фиксировал какие объекты системы (сущности, плагины и т.д.) заденет разработка, они бекапились и после разработки формировался бы пакет для переноса на другой ЦРМ. Такая схема, правда, не исключает людских ошибок. Многое из этого уже есть в ЦРМ 2011, к сожалению далеко не все клиенты пока перешли, а если быть точнее - только 1 перешел, 1 планирует, остальные пока не собираются и может и не соберутся.

Вопрос следующий - кто какой процесс использует для разработки и как вы управляете средами (Разработки\Тестирования\Рабочая среда) и как и когда (по требованию клиента, после разработки и т.д.) переносите настройки между ними?

Geändert von Савран Роман (27.06.2011 um 19:44 Uhr)
Alt 27.06.2011, 19:44   #6  
Савран Роман ist offline
Савран Роман
Участник
 
58 / 17 (1) ++
Registriert seit: 19.02.2009
Ort: Киев, Украина
Zitat:
Zitat von slivka_83 Beitrag anzeigen


Я имел ввиду также изменение представлений, например, или кастомизаций форм. Оба эти изменения не меняют структуру таблиц базы CRM, а меняют данные таблиц метаданных CRM.
Alt 27.06.2011, 21:44   #7  
Konstantin Katsovich ist offline
Konstantin Katsovich
Участник
Benutzerbild von Konstantin Katsovich
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
243 / 57 (2) ++++
Registriert seit: 22.10.2008
Ort: Israel
Zitat:
Zitat von Савран Роман Beitrag anzeigen
Я имел ввиду также изменение представлений, например, или кастомизаций форм. Оба эти изменения не меняют структуру таблиц базы CRM, а меняют данные таблиц метаданных CRM.
А чем плох plugin message "Publish" либо "PublishAll"?
__________________
Читайте SDK!!!
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
CRM DE LA CREME! CRM 4.0 Disaster Recovery Blog bot Dynamics CRM: Blogs 2 26.02.2016 08:23
Все о Microsoft Dynamics CRM: Как установить Microsoft Dynamics CRM 2011 Beta Blog bot Dynamics CRM: Blogs 0 31.10.2010 15:08
CRM DE LA CREME! Configuring Microsoft Dynamics CRM 4.0 for Internet-facing deployment Blog bot Dynamics CRM: Blogs 0 18.08.2009 11:05
Microsoft Dynamics CRM Team Blog: Building Rich-Client Dashboards for Microsoft Dynamics CRM with Windows Presentation Foundation Blog bot Dynamics CRM: Blogs 1 31.03.2009 13:24
Microsoft Dynamics CRM Team Blog: List Web Part for Microsoft Dynamics CRM 4.0 Deployment Scenarios Blog bot Dynamics CRM: Blogs 0 30.01.2009 22:05
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Gehe zu

Рейтинг@Mail.ru
Alle Zeitangaben in WEZ +3. Es ist jetzt 08:20 Uhr.
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.