AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Blogs
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.12.2011, 20:14   #1  
Blog bot is offline
Blog bot
Участник
 
25,631 / 848 (80) +++++++
Регистрация: 28.10.2006
axforum blogs: Смена языка в Процессах CRM 2011
Источник: http://axforum.info/forums/blog.php?b=296
==============

Одна из проблем с которой вы можете столкнуться в мультиязычных инсталляциях CRM - это привязка к languagecode различных системных объектов. Если перевести метки трансляции относительно просто, то, например, отчеты, процессы и диалоги могут оказаться настоящей проблемой! Дело в том, что настраивать систему, например, создавать и импортировать Решения можно только в базовом языке. Это приводит к тому, что созданный в таком виде отчет или диалог, может не появиться в решении после смены языка интерфейса!
В случае с отчетом дела обстоят относительно просто - его языковую привязку можно сменить через интерфейс системы, или отменить вовсе. С диалогами и процессами дела обстоят немного хуже. У этих объектов поле languagecode не вынесено на форму. Простым решением кажется выгрузить Решение как неуправляемое и сменить языковую привязку процесса.

Никогда так не делайте!

Уже загруженные в систему процессы, которые имеют идентификатор и инстанции застревают в ней навечно! Скорее всего данное поведение связано с тем, что процессы изначально версионны. Каждая публикация создает отдельную ветку эволюции процесса, при этом уже созданные инстанции продолжают жить своей жизнью. Смена языковой привязки не была учтена разработчиками, так что на эволюции всего процесса не скажется никак. Он уже имеет идентификатор в системе и этот идентификатор связан с первоначальной привязкой к languagecode.

Для того, чтобы все же не переделывать сложный процесс с нуля, создайте новый пустой процесс на нужном вам языке, после чего смените язык на базовый и добавьте его в решение без публикации!
Теперь импортируйте решение, распакуйте его и откройте в XML редакторе файл решения. Найдите в нем узел нужного вам процесса и посмотрите как называется соответсвующий ему файл ресурса. Там же найдите как называется файл "кривого" процесса, который был создан в неправильном языке.

Далее откройте эти XSML файлы в XML редакторе (для того, чтобы сделать это в Visual Studio придется сменить у этих файлов расширение, иначе студия будет пытаться открыть их в редакторе процессов). Теперь остается только скопировать разметку процесса из одного файла в другой и заменить все вхождения идентификатора "неправильного" процесса, идентификатором "правильного". Если вы не публиковали второй процесс, его идентификатор должен быть представлен нулями.

Теперь запакуйте и импортируйте измененное решение обратно в систему. Процессы должны стать доступны на обоих языках.
В свое время мне пришлось проделать подобную операцию раз двадцать, пока не нашелся правильный рецепт. Удаление процесса, исправление его идентификатора на новый и прочие манипуляции не помогали. Кажется это работает с процессами типа Рабочего процесса, но отчего-то не получается с Диалогами.

Еще один путь для манипуляции с языковыми настройками - опубликовать процесс как шаблон и на его основе создать новый с изначально правильным языком.

Надеюсь какой-то из этих советов позволит вам сэкономить те нервы, которые потерял я.


Источник: http://axforum.info/forums/blog.php?b=296
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 4 Blog bot Dynamics CRM: Blogs 0 24.09.2011 01:16
Microsoft Dynamics CRM Team Blog: Microsoft Dynamics CRM 2011 ~ Online Test Drive Guide Blog bot Dynamics CRM: Blogs 0 05.08.2011 20:13
crminthefield: How to Create a Silverlight Web Resource that Interacts with CRM 2011 Forms Blog bot Dynamics CRM: Blogs 0 24.06.2011 04:17
crminthefield: Microsoft Dynamics CRM 2011 Custom Contact Entry Website using Early-Bound entity Classes. Blog bot Dynamics CRM: Blogs 0 04.06.2011 08:16
crminthefield: How to Create a Simple Webpage Leveraging The CRM 2011 IOrganizationService Web Service Blog bot Dynamics CRM: Blogs 0 19.05.2011 02:11
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 06:17.