В этом посте будем изменять названия пунктов в Навигационной панели MS Dynamics CRM. Такие изменения проводятся через редактирование файла Sitemap.xml.

вот что мы получим в результате
В этом посте будем изменять названия пунктов в Навигационной панели MS Dynamics CRM. Такие изменения проводятся через редактирование файла Sitemap.xml.

вот что мы получим в результате
Допустим Вы написали проект, который берет что-то (например, ObjectId )из формы CRM, а дальше вытаскивает нужные поля из базы или создает какой-то объект,не суть важно. Остановимся на таком примере:
Есть объект сущности Обращение. По нажатию на кнопку «Получить и вернуть» будет вызываться aspx-страница, которая получит GUID текущего Обращения, найдет всю Электронную почту, у которой «В отношении» прописано данное Обращение и вернет в поле «new_Email» сущности ОБращение GUID первой найденной Электронной почты.
Описывать как делать проект и как получать GUID электронной почты я пока что не буду, остановлюсь на том, как вернуть этот самый GUID в crm форму.
Очень простой код, для того, чтобы установить фокус на определенную закладку на форме MS CRM 4.0 . Для этого достаточно вставить в событие, например OnLoad() следующий код:
crmForm.all.tab1Tab.click();
Это код позволяет нам установить активный фокус на вкладку.
Иногда пользователям могут просто мешать лишние кнопки или лишние пункты меню в области переходов(NavBar). Очень простым кодом можно их либо скрыть, либо переименовать, чтобы пользователи не путались.
В CRM 3.0 и в CRM 4.0 есть отличие в реализации данной задачи, поэтому я расскажу отдельно и про тройку,и про четверку. Начнем с CRM 4.0. У меня сейчас стоит англ интерфейс в CRM, так что названия кнопок и менюшек будет английское
Изменять будем вот что: в сущности Коммерческое предложение (Quote) на панели переходов переименуем пункт «Exisitng Products» в «CHANGED», а пункты «Write-in Products» и «Other Contacts» вовсе уберем.

рис. 1 До и после
Знаю два простых решения. Я давно уже пишу все в Visual Studio, но нередко появляется необходимость наваять что-то на javascript. И тогда сталкиваешься с проблемой, что ужасно неудобно писать в том маленьком окошке, которое предложили майкрософт нам, разработчикам.
Первый способ подходит и для тестирования, и для того, чтобы после тестирования все оставить так, как и при тестировании. Он заключается во вставке в событие Onload формы вот этого кода: