Добрый день. Делаем перевод разделов Контакты и Контрагенты на английский и хорватский. Хорватский язык добавили в системных настройках. Английский используется по умолчанию. Перевод делали в объектах в конфигурации.

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

Такое происходит не со всеми заголовками полей, вкладок, деталей. Для некоторых перевод добавился и не затирается. 

Так же удаляется перевод локализуемых строк.

А еще не можем понять, почему не меняется название раздела на хорватский, когда меняем язык пользователя (скрин 4), хотя перевод мы добавили.

Почему это происходит? И как решить эту проблему?

Прикрепленные файлы

Нравится

1 комментарий

Добрый день!

В основной таблице SysModule лежат данные, которые Вы вносили при создании раздела. Если Вы переходите в другую локализацию, то при переименовании раздела Ваши изменения записываются в локализируемую таблицу SysModuleLcz.

Проверьте наличие перевода в таблице SysModuleLcz, там должны быть созданы правильные записи. После их заполнения и очистки кеша заголовок должен отображаться корректно.

 

Также существует раздел "Переводы", но там нужно искать по ключу.

Более детально описано в статье: 

https://academy.terrasoft.ua/docs/user/kastomizacija_no_code/polzovatel…

 

 

Показать все комментарии

Добрый день. Вопрос по привязке отображения реестра в справочнике на разных культурах

Пользователь при открытии записи заходит в справочник и видит значения - названия контрагентов/компаний. Они в системе есть в карточках контрагентов на русском языке - поле Название(Name) и поле Название ENG (Name eng)

В поле Название занесено русское название, в поле Название ENG занесено английское - для отображения пользователю зашедшему под английской культурой. 

В справочнике (скрин) реестр настроен так, что можно видеть поле Название либо Название ENG либо оба

Но вопрос в том, возможно ли осуществить настройку реестра справочника так, чтобы открывая его на рус культуре я видел поле Название, а на английской Название ENG? То есть привязать настройку реестра к культуре?

Нравится

1 комментарий

если речь о реестре, то нужно переопределить метод openlookup и для конкретного справочника задать конфиг как тут

var config = {

              entitySchemaName: "UsrTest",

              multiSelect: false,

              columns: ["Name","Description"],

              hideActions: false}

 

Показать все комментарии

Есть карточка контрагента и наименование контрагента.

С карточкой работают сотрудники разных стран.

Кому-то нужно название на русском, кому-то на англ.



Как с точки зрения работы с мультиязычностью сделать так, чтобы при поиске по полю наименование в России искало по русскому названию, а в иноязычных странах – по английскому? (скрин во вложении) Изображение удалено.

Или как сюда для англоязычных пользователей автоматически подставить поле название Eng

Изображение удалено.

Что тоже могло бы помочь в решении проблемы

В рамках базового функционала, нет возможности вывести отображаемое значения объекта в зависимости от локализации. Возможно ли настроить поиск таким образом и каким способом?

Нравится

1 комментарий

Добрый день, 

К сожалению, не отображаются скриншоты в сообщении. 

 

Если рассматривать проблему в рамках необходимости отображать одно поле для поиска в разделе, по умолчанию, для пользователя с одной локализацией и другое поле для поиска для пользователя с другой локализацией, то необходимо разработать новую логику поиска в разделе. 

 

Показать все комментарии

Добрый день! Поставили sales 7.17.3 1377 релиз. Проблема с кнопками видна на скрине,  в системе язык русский и у пользователя то жеИзображение удалено.

Нравится

2 комментария

Проверьте доступы на папку Terrasoft.WebApp\ClientApp\assets\i18n

Полозюков Евгений Петрович,Да права полные разданы в т.ч. и пользователю iis

Показать все комментарии

как правильно включить переводы названий полей, разделов в пакет? 

Производится перевод на среде разработки, его можно выполнить через инструмент "Переводы", актуализировать, обновить реестр. 

Как можно правильно включить эти переводы в пакет дабы перенести на продуктивную среду?

Нравится

3 комментария
Лучший ответ

Здравствуйте! По идее переводы должны перенестись вместе с ресурсами объекта. Если же не переносится, то переводы можно привязать к пакету в виде данных.

Переводы хранятся в таблице SysTranslation, привязка данных осуществляется в разделе конфигурация -https://prnt.sc/w18hsw

https://prnt.sc/w18jq7

Хотя через привязку данных не очень хорошая идея, т.к. слишком большой объем данных.

Так же переводы можно выгрузить в Excel и потом залить на нужной среде в вышеуказанную таблицу.

 

 

Здравствуйте! По идее переводы должны перенестись вместе с ресурсами объекта. Если же не переносится, то переводы можно привязать к пакету в виде данных.

Переводы хранятся в таблице SysTranslation, привязка данных осуществляется в разделе конфигурация -https://prnt.sc/w18hsw

https://prnt.sc/w18jq7

Хотя через привязку данных не очень хорошая идея, т.к. слишком большой объем данных.

Так же переводы можно выгрузить в Excel и потом залить на нужной среде в вышеуказанную таблицу.

 

 

Насколько я понимаю, если переводы были сделаны не во время разработки, а в разделе "Переводы", то в ресурсы объекта они не попадут?

Владимир Соколов,

Переводы которые были добавлены в разделе "переводы" попадут в ресурсы пакета. В ресурсы самого объекта они не попадут.

Показать все комментарии

Здравствуйте!

 

Подскажите есть ли возможность сохранять реестр для нескольких культур разом?

Изображение удалено.

Нравится

2 комментария
Лучший ответ

Роман, к сожалению, в базовой версии системы при настройке колонок для всех пользователей необходимо выполнять настройки для каждого языка. 

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



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

 

при сохранении настройки колонки идёт обращение к сервису /0/DataService/json/SyncReply/UserProfile, там передаётся в поле profileCultureId ссылка на Id конкретной культуры:

{
   "key":"AccountSectionV2GridSettingsGridDataView",
   "data":"{\"tiledColumnsConfig\":\"{}\",\"listedColumnsConfig\":\"{}\",\"DataGrid\":{\"tiledConfig\":\"{\\\"grid\\\":{\\\"rows\\\":2,\\\"columns\\\":24},\\\"items\\\":[{\\\"column\\\":0,\\\"caption\\\":\\\"Название\\\",\\\"metaPath\\\":\\\"Name\\\",\\\"isTitleText\\\":true,\\\"width\\\":8,\\\"dataValueType\\\":1,\\\"bindTo\\\":\\\"Name\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":8,\\\"row\\\":1},\\\"isCaptionHidden\\\":true,\\\"isURLType\\\":false,\\\"columnType\\\":\\\"title\\\",\\\"captionConfig\\\":{\\\"visible\\\":false},\\\"type\\\":\\\"title\\\"},{\\\"column\\\":8,\\\"caption\\\":\\\"Web\\\",\\\"metaPath\\\":\\\"Web\\\",\\\"isTitleText\\\":false,\\\"width\\\":6,\\\"bindTo\\\":\\\"Web\\\",\\\"position\\\":{\\\"column\\\":8,\\\"colSpan\\\":6,\\\"row\\\":1},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"column\\\":14,\\\"caption\\\":\\\"Основной телефон\\\",\\\"metaPath\\\":\\\"Phone\\\",\\\"isTitleText\\\":false,\\\"width\\\":5,\\\"bindTo\\\":\\\"Phone\\\",\\\"position\\\":{\\\"column\\\":14,\\\"colSpan\\\":5,\\\"row\\\":1},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"column\\\":19,\\\"caption\\\":\\\"Тип\\\",\\\"metaPath\\\":\\\"Type\\\",\\\"isTitleText\\\":false,\\\"width\\\":5,\\\"bindTo\\\":\\\"Type\\\",\\\"position\\\":{\\\"column\\\":19,\\\"colSpan\\\":5,\\\"row\\\":1},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"column\\\":0,\\\"caption\\\":\\\"Основной контакт\\\",\\\"metaPath\\\":\\\"PrimaryContact\\\",\\\"isTitleText\\\":false,\\\"width\\\":8,\\\"dataValueType\\\":10,\\\"bindTo\\\":\\\"PrimaryContact\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":8,\\\"row\\\":2},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"columnType\\\":\\\"text\\\",\\\"captionConfig\\\":{\\\"visible\\\":true},\\\"type\\\":\\\"text\\\"},{\\\"column\\\":8,\\\"caption\\\":\\\"Адрес\\\",\\\"metaPath\\\":\\\"Address\\\",\\\"isTitleText\\\":false,\\\"width\\\":6,\\\"dataValueType\\\":1,\\\"bindTo\\\":\\\"Address\\\",\\\"position\\\":{\\\"column\\\":8,\\\"colSpan\\\":6,\\\"row\\\":2},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"column\\\":14,\\\"caption\\\":\\\"Город\\\",\\\"metaPath\\\":\\\"City\\\",\\\"isTitleText\\\":false,\\\"width\\\":5,\\\"bindTo\\\":\\\"City\\\",\\\"position\\\":{\\\"column\\\":14,\\\"colSpan\\\":5,\\\"row\\\":2},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"column\\\":19,\\\"caption\\\":\\\"Страна\\\",\\\"metaPath\\\":\\\"Country\\\",\\\"isTitleText\\\":false,\\\"width\\\":5,\\\"bindTo\\\":\\\"Country\\\",\\\"position\\\":{\\\"column\\\":19,\\\"colSpan\\\":5,\\\"row\\\":2},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}}]}\",\"listedConfig\":\"{\\\"items\\\":[{\\\"column\\\":0,\\\"caption\\\":\\\"Название\\\",\\\"metaPath\\\":\\\"Name\\\",\\\"isTitleText\\\":false,\\\"width\\\":9,\\\"dataValueType\\\":1,\\\"bindTo\\\":\\\"Name\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":9,\\\"row\\\":1},\\\"columnType\\\":\\\"text\\\",\\\"isURLType\\\":false,\\\"type\\\":\\\"text\\\"},{\\\"column\\\":9,\\\"caption\\\":\\\"Тип\\\",\\\"metaPath\\\":\\\"Type\\\",\\\"width\\\":5,\\\"bindTo\\\":\\\"Type\\\",\\\"position\\\":{\\\"column\\\":9,\\\"colSpan\\\":5,\\\"row\\\":1}},{\\\"column\\\":14,\\\"caption\\\":\\\"Основной телефон\\\",\\\"metaPath\\\":\\\"Phone\\\",\\\"width\\\":5,\\\"bindTo\\\":\\\"Phone\\\",\\\"position\\\":{\\\"column\\\":14,\\\"colSpan\\\":5,\\\"row\\\":1}},{\\\"column\\\":19,\\\"caption\\\":\\\"Основной контакт\\\",\\\"metaPath\\\":\\\"PrimaryContact\\\",\\\"width\\\":5,\\\"bindTo\\\":\\\"PrimaryContact\\\",\\\"position\\\":{\\\"column\\\":19,\\\"colSpan\\\":5,\\\"row\\\":1}}]}\",\"isTiled\":true,\"type\":\"tiled\",\"key\":\"AccountSectionV2GridSettingsGridDataView\"},\"DataGridVerticalProfile\":{\"tiledConfig\":\"{\\\"grid\\\":{\\\"rows\\\":5,\\\"columns\\\":24},\\\"items\\\":[{\\\"bindTo\\\":\\\"Name\\\",\\\"caption\\\":\\\"Название\\\",\\\"type\\\":\\\"title\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":1},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"Name\\\",\\\"captionConfig\\\":{\\\"visible\\\":false}},{\\\"bindTo\\\":\\\"Type\\\",\\\"caption\\\":\\\"Тип\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":2},\\\"dataValueType\\\":10,\\\"metaPath\\\":\\\"Type\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"PrimaryContact\\\",\\\"caption\\\":\\\"Основной контакт\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":3},\\\"dataValueType\\\":10,\\\"metaPath\\\":\\\"PrimaryContact\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"Phone\\\",\\\"caption\\\":\\\"Основной телефон\\\",\\\"type\\\":\\\"text\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":4},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"Phone\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}}]}\",\"listedConfig\":\"{\\\"items\\\":[]}\",\"key\":\"AccountSectionV2GridSettingsGridDataView\",\"isTiled\":true,\"type\":\"tiled\"},\"key\":\"AccountSectionV2GridSettingsGridDataView\",\"Filters\":{},\"isTiled\":true,\"MobileDataGrid\":{\"tiledConfig\":\"{\\\"grid\\\":{\\\"rows\\\":7,\\\"columns\\\":24},\\\"items\\\":[{\\\"bindTo\\\":\\\"City\\\",\\\"caption\\\":\\\"Город\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":1},\\\"dataValueType\\\":10,\\\"metaPath\\\":\\\"City\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"Web\\\",\\\"caption\\\":\\\"Web\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":2},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"Web\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"Address\\\",\\\"caption\\\":\\\"Адрес\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":3},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"Address\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"ModifiedBy\\\",\\\"caption\\\":\\\"Изменил\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":4},\\\"dataValueType\\\":10,\\\"metaPath\\\":\\\"ModifiedBy\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"AlternativeName\\\",\\\"caption\\\":\\\"Альтернативные названия\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":5},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"AlternativeName\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"AdditionalPhone\\\",\\\"caption\\\":\\\"Дополнительный телефон\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":6},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"AdditionalPhone\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"City\\\",\\\"caption\\\":\\\"Город\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":7},\\\"dataValueType\\\":10,\\\"metaPath\\\":\\\"City\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}}]}\",\"listedConfig\":\"{\\\"items\\\":[]}\",\"isTiled\":true,\"type\":\"tiled\"},\"profileCultureId\":\"1a778e3f-0a8e-e111-84a3-00155d054c03\"}",
   "isDef":false
}

Настройка задаётся для себя с isDef =  false или для всех с isDef =  true.

Стандартно для отправки настроек в другой культуре функции нет, нужно делать доработку: либо отправлять ещё один запрос к сервису с указанием другой культуры и того же значения key, либо менять (или добавлять, если нет) в базе значения в таблице SysProfileData, отфильтровав там по Key и SysCultureId.

Сами настройки хранятся в поле ObjectData, его значение можно увидеть, написав в SQL-запросе «cast(ObjectData as varchar(max))».

Обратите внимание, там тоже упомянуты key и profileCultureId. Также просто скопировать из одной культуры в другую будет недостаточно, заголовки каждой колонки на соответствующем языке хранятся прямо в этом поле в значении параметров caption, их нужно будет перевести и для нелатинских букв представить в нужной кодировке.

Роман, к сожалению, в базовой версии системы при настройке колонок для всех пользователей необходимо выполнять настройки для каждого языка. 

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



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

 

при сохранении настройки колонки идёт обращение к сервису /0/DataService/json/SyncReply/UserProfile, там передаётся в поле profileCultureId ссылка на Id конкретной культуры:

{
   "key":"AccountSectionV2GridSettingsGridDataView",
   "data":"{\"tiledColumnsConfig\":\"{}\",\"listedColumnsConfig\":\"{}\",\"DataGrid\":{\"tiledConfig\":\"{\\\"grid\\\":{\\\"rows\\\":2,\\\"columns\\\":24},\\\"items\\\":[{\\\"column\\\":0,\\\"caption\\\":\\\"Название\\\",\\\"metaPath\\\":\\\"Name\\\",\\\"isTitleText\\\":true,\\\"width\\\":8,\\\"dataValueType\\\":1,\\\"bindTo\\\":\\\"Name\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":8,\\\"row\\\":1},\\\"isCaptionHidden\\\":true,\\\"isURLType\\\":false,\\\"columnType\\\":\\\"title\\\",\\\"captionConfig\\\":{\\\"visible\\\":false},\\\"type\\\":\\\"title\\\"},{\\\"column\\\":8,\\\"caption\\\":\\\"Web\\\",\\\"metaPath\\\":\\\"Web\\\",\\\"isTitleText\\\":false,\\\"width\\\":6,\\\"bindTo\\\":\\\"Web\\\",\\\"position\\\":{\\\"column\\\":8,\\\"colSpan\\\":6,\\\"row\\\":1},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"column\\\":14,\\\"caption\\\":\\\"Основной телефон\\\",\\\"metaPath\\\":\\\"Phone\\\",\\\"isTitleText\\\":false,\\\"width\\\":5,\\\"bindTo\\\":\\\"Phone\\\",\\\"position\\\":{\\\"column\\\":14,\\\"colSpan\\\":5,\\\"row\\\":1},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"column\\\":19,\\\"caption\\\":\\\"Тип\\\",\\\"metaPath\\\":\\\"Type\\\",\\\"isTitleText\\\":false,\\\"width\\\":5,\\\"bindTo\\\":\\\"Type\\\",\\\"position\\\":{\\\"column\\\":19,\\\"colSpan\\\":5,\\\"row\\\":1},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"column\\\":0,\\\"caption\\\":\\\"Основной контакт\\\",\\\"metaPath\\\":\\\"PrimaryContact\\\",\\\"isTitleText\\\":false,\\\"width\\\":8,\\\"dataValueType\\\":10,\\\"bindTo\\\":\\\"PrimaryContact\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":8,\\\"row\\\":2},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"columnType\\\":\\\"text\\\",\\\"captionConfig\\\":{\\\"visible\\\":true},\\\"type\\\":\\\"text\\\"},{\\\"column\\\":8,\\\"caption\\\":\\\"Адрес\\\",\\\"metaPath\\\":\\\"Address\\\",\\\"isTitleText\\\":false,\\\"width\\\":6,\\\"dataValueType\\\":1,\\\"bindTo\\\":\\\"Address\\\",\\\"position\\\":{\\\"column\\\":8,\\\"colSpan\\\":6,\\\"row\\\":2},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"column\\\":14,\\\"caption\\\":\\\"Город\\\",\\\"metaPath\\\":\\\"City\\\",\\\"isTitleText\\\":false,\\\"width\\\":5,\\\"bindTo\\\":\\\"City\\\",\\\"position\\\":{\\\"column\\\":14,\\\"colSpan\\\":5,\\\"row\\\":2},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"column\\\":19,\\\"caption\\\":\\\"Страна\\\",\\\"metaPath\\\":\\\"Country\\\",\\\"isTitleText\\\":false,\\\"width\\\":5,\\\"bindTo\\\":\\\"Country\\\",\\\"position\\\":{\\\"column\\\":19,\\\"colSpan\\\":5,\\\"row\\\":2},\\\"isCaptionHidden\\\":false,\\\"isURLType\\\":false,\\\"captionConfig\\\":{\\\"visible\\\":true}}]}\",\"listedConfig\":\"{\\\"items\\\":[{\\\"column\\\":0,\\\"caption\\\":\\\"Название\\\",\\\"metaPath\\\":\\\"Name\\\",\\\"isTitleText\\\":false,\\\"width\\\":9,\\\"dataValueType\\\":1,\\\"bindTo\\\":\\\"Name\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":9,\\\"row\\\":1},\\\"columnType\\\":\\\"text\\\",\\\"isURLType\\\":false,\\\"type\\\":\\\"text\\\"},{\\\"column\\\":9,\\\"caption\\\":\\\"Тип\\\",\\\"metaPath\\\":\\\"Type\\\",\\\"width\\\":5,\\\"bindTo\\\":\\\"Type\\\",\\\"position\\\":{\\\"column\\\":9,\\\"colSpan\\\":5,\\\"row\\\":1}},{\\\"column\\\":14,\\\"caption\\\":\\\"Основной телефон\\\",\\\"metaPath\\\":\\\"Phone\\\",\\\"width\\\":5,\\\"bindTo\\\":\\\"Phone\\\",\\\"position\\\":{\\\"column\\\":14,\\\"colSpan\\\":5,\\\"row\\\":1}},{\\\"column\\\":19,\\\"caption\\\":\\\"Основной контакт\\\",\\\"metaPath\\\":\\\"PrimaryContact\\\",\\\"width\\\":5,\\\"bindTo\\\":\\\"PrimaryContact\\\",\\\"position\\\":{\\\"column\\\":19,\\\"colSpan\\\":5,\\\"row\\\":1}}]}\",\"isTiled\":true,\"type\":\"tiled\",\"key\":\"AccountSectionV2GridSettingsGridDataView\"},\"DataGridVerticalProfile\":{\"tiledConfig\":\"{\\\"grid\\\":{\\\"rows\\\":5,\\\"columns\\\":24},\\\"items\\\":[{\\\"bindTo\\\":\\\"Name\\\",\\\"caption\\\":\\\"Название\\\",\\\"type\\\":\\\"title\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":1},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"Name\\\",\\\"captionConfig\\\":{\\\"visible\\\":false}},{\\\"bindTo\\\":\\\"Type\\\",\\\"caption\\\":\\\"Тип\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":2},\\\"dataValueType\\\":10,\\\"metaPath\\\":\\\"Type\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"PrimaryContact\\\",\\\"caption\\\":\\\"Основной контакт\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":3},\\\"dataValueType\\\":10,\\\"metaPath\\\":\\\"PrimaryContact\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"Phone\\\",\\\"caption\\\":\\\"Основной телефон\\\",\\\"type\\\":\\\"text\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":4},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"Phone\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}}]}\",\"listedConfig\":\"{\\\"items\\\":[]}\",\"key\":\"AccountSectionV2GridSettingsGridDataView\",\"isTiled\":true,\"type\":\"tiled\"},\"key\":\"AccountSectionV2GridSettingsGridDataView\",\"Filters\":{},\"isTiled\":true,\"MobileDataGrid\":{\"tiledConfig\":\"{\\\"grid\\\":{\\\"rows\\\":7,\\\"columns\\\":24},\\\"items\\\":[{\\\"bindTo\\\":\\\"City\\\",\\\"caption\\\":\\\"Город\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":1},\\\"dataValueType\\\":10,\\\"metaPath\\\":\\\"City\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"Web\\\",\\\"caption\\\":\\\"Web\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":2},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"Web\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"Address\\\",\\\"caption\\\":\\\"Адрес\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":3},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"Address\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"ModifiedBy\\\",\\\"caption\\\":\\\"Изменил\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":4},\\\"dataValueType\\\":10,\\\"metaPath\\\":\\\"ModifiedBy\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"AlternativeName\\\",\\\"caption\\\":\\\"Альтернативные названия\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":5},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"AlternativeName\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"AdditionalPhone\\\",\\\"caption\\\":\\\"Дополнительный телефон\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":6},\\\"dataValueType\\\":1,\\\"metaPath\\\":\\\"AdditionalPhone\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}},{\\\"bindTo\\\":\\\"City\\\",\\\"caption\\\":\\\"Город\\\",\\\"position\\\":{\\\"column\\\":0,\\\"colSpan\\\":24,\\\"row\\\":7},\\\"dataValueType\\\":10,\\\"metaPath\\\":\\\"City\\\",\\\"captionConfig\\\":{\\\"visible\\\":true}}]}\",\"listedConfig\":\"{\\\"items\\\":[]}\",\"isTiled\":true,\"type\":\"tiled\"},\"profileCultureId\":\"1a778e3f-0a8e-e111-84a3-00155d054c03\"}",
   "isDef":false
}

Настройка задаётся для себя с isDef =  false или для всех с isDef =  true.

Стандартно для отправки настроек в другой культуре функции нет, нужно делать доработку: либо отправлять ещё один запрос к сервису с указанием другой культуры и того же значения key, либо менять (или добавлять, если нет) в базе значения в таблице SysProfileData, отфильтровав там по Key и SysCultureId.

Сами настройки хранятся в поле ObjectData, его значение можно увидеть, написав в SQL-запросе «cast(ObjectData as varchar(max))».

Обратите внимание, там тоже упомянуты key и profileCultureId. Также просто скопировать из одной культуры в другую будет недостаточно, заголовки каждой колонки на соответствующем языке хранятся прямо в этом поле в значении параметров caption, их нужно будет перевести и для нелатинских букв представить в нужной кодировке.

Зверев Александр,

Спасибо

Показать все комментарии

Добрый день!

 

Подскажите, как лучше реализовать работу ответственных за продукты, чтобы они могли наполнить мультиязычные данные в карточке продукта, не переключаясь между языками интерфейса?

Может, кто-то выполнял похожую настройку (если для этого нужна разработка)?

 

Аналогичный вопрос про ответственного за наполнение мультиязычных справочников - как ему облегчить работу по управлению данными на разных языках?

 

Нравится

3 комментария
Лучший ответ

Владимир Соколов,

 

Можно выгрузить в Excel значения, которые нужно перевести, а потом после обработки загрузить их обратно.

 

Ещё можно попробовать правами доступа предоставить права только на нужные записи.

Здравствуйте.

 

Вносить локализированные данные, не переключаясь между языками, можно через раздел [Переводы].

 

Посмотрите статьи на академии по описанию работы с этим разделом по ссылке.

Алла Савельева пишет:

Вносить локализированные данные, не переключаясь между языками, можно через раздел [Переводы].

Пускать ответственных за Продукты в [Переводы] совсем не хочется. Потому и спрашиваю, не реализовывал ли кто-то это в пользовательском интерфейсе 

Владимир Соколов,

 

Можно выгрузить в Excel значения, которые нужно перевести, а потом после обработки загрузить их обратно.

 

Ещё можно попробовать правами доступа предоставить права только на нужные записи.

Показать все комментарии

Добрый день.

Необходимо заменить по всей системе термин Контрагент на Компания.

Точечно понятно, что можно делать в замещающих схемах и Переводах. Проблема в том, что "точек перевода" очень много и в разных склонениях. На первый взгляд порядка тысячи, а может и больше.

Может есть готовые скрипты с массовым переводом?

Нравится

4 комментария

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

Так что, лучше продать идею использовать термин "Контрагенты"

Здравствуйте!

В приложении нет подобного функционала. У нас зафиксирована пожелание на данную доработку. Аналитики продукта рассмотрят данную идею и по возможности реализуют в будущих версиях.

Как вариант Вы можете Вы можете написать сложный SQL запрос, который бы перебирал бы все упоминания по ключу и затем update на другое значение. Либо использовать "Переводы".

Здравствуйте. Спасибо за информацию. Не думал, что все так сложно (

Сталкивался с такой задачей на некоторых реальных проектах. Все места в системе установить действительно сложно, но можно попытаться.

1. Найти и переименовать соответствующие строки в схемах SysSchema, SysModule, QuickAddMenuItem, SysEntitySchemaReference. Тут обычно все без склонений. Нужно ориентироваться на название и заголовок (Контрагенты и Account соответственно).

2. Найти все нужные строки в схеме: SysLocalizableValue и заменить на новые. Тут есть ряд особенностей: нужно использовать регулярные выражения, чтобы охватить все склонения слов. Более того, иногда нужно учитывать исключительные случаи, когда окончания слов склоняются совсем по разному. Для этого мы расписывали склонения нового термина (привет 6 класс школы) и на основании этих данных составляли SQL скрипт с регулярными выражениями.

Удобно, если есть on-site песочница с доступом к БД. В случае с on-demand всё будет делаться "в слепую" и очень легко ошибиться.

Как все это накладывается на обновления системы я, к сожалению, не в курсе.

 

Показать все комментарии

В первой версии Terrasoft Webitel CallManager перевод звонка был реализован как Blind Transfer (Слепой Перевод) - отправили и забыли. Алгоритм прост в реализации, но не совсем удобный для пользователей: неизвестно состояние перевода, может ли абонент принят вызов или хочет ли он говорить...

В текущей версии мы изменили алгоритм, теперь у нас Attendant Transfer (Сопровождающий Перевод) – вначале абонент А переводит абонента В в режим ожидания, звонит абоненту С и потом принимает решение о переводе звонка. У Вас будет 2 карточки, Вы можете поставить и абонента В в режим ожидания, что бы вернуться к первому и что-то уточнить... Так же, мы переводим не только абонента, но и всю информацию в карточке звонка, а если Вы используете аппаратные SIP-телефоны - обновляем информацию на экране.

Как это работает можно увидеть на видео.

Нравится

Поделиться

0 комментариев
Показать все комментарии