13.12.2005, 21:18 | #1 |
Участник
|
Необходимо чтобы хранимая информация в таблицах имела перевод на другом языке. То есть, пользователи работающие в России, видят информацию в таблицах на русском, в америке на английском. Как решить проблему не создавая новых полей?!
Ничего подобного в интернете не нашёл, задаю вопрос местным спецам. Есть ли какие-нибудь решения данной задачи? Не интерфейс многоязычный, а хранение данных в таблицах на разных языках. |
|
14.12.2005, 12:22 | #2 |
Участник
|
Как решить проблему разобрался. А интересно, кто-нибудь делал нечто подобное?
|
|
14.12.2005, 12:23 | #3 |
Участник
|
Цитата:
Сообщение от Ivan
Необходимо чтобы хранимая информация в таблицах имела перевод на другом языке. То есть, пользователи работающие в России, видят информацию в таблицах на русском, в америке на английском. Как решить проблему не создавая новых полей?!
Ничего подобного в интернете не нашёл, задаю вопрос местным спецам. Есть ли какие-нибудь решения данной задачи? Не интерфейс многоязычный, а хранение данных в таблицах на разных языках. В свое время был у меня похожий проект(двухязычная база, проект не на Навижене, но под SQL Server) где необходимо было поддерживать довольно таки большую базу оборудования на двух языках (русский и украинский). В таблицах было введно поле Язык, которое пришлось протягивать в качестве фильтра практически во всех формах. |
|
14.12.2005, 12:35 | #4 |
Участник
|
|
|
14.12.2005, 12:44 | #5 |
Участник
|
Я бы создал табличку. Туда прописывал бы ID таблицы, ID поля, Язык и поле с Описанием. В формочках со стандартными таблицами сделал бы дрилдауны для просмотра значений. Или флоуфилд с флоуфильтром по языку.
__________________
Want to believe... |
|
14.12.2005, 13:09 | #6 |
Участник
|
1. Создать таблицу (как описал DA_NEAL) - ID таблицы, ID поля,язык, первичный ключ таблицы (recordref.getposition).
2. На aftergetrecord (если не получиться - то на onfind и onnext) во всех языкозависимых формах подставлять значения языковисимых полей из данных из этой таблички. 3. На onmodify формы (или таблиц) - заполнять значения языкозависимых полей в таблице. |
|
14.12.2005, 13:20 | #7 |
Участник
|
DA_NEAL, rmv, а как будет работать поиск в предложенных вами вариантах?
|
|
14.12.2005, 13:36 | #8 |
Участник
|
mazzy - поскольку событие поиска перехватить невозможно, в моем случае работать не будет, фильтрацию теоритечески можно обмануть на find и next формы.
в варианте c флоу полями, предложенном DA_NEAL поиск и фильтрация будут работать как обычно . К сожалению идельного решения прооблемы не существует . |
|
14.12.2005, 13:39 | #9 |
Участник
|
кол-во языков заранее известно?
|
|
14.12.2005, 14:05 | #10 |
Участник
|
Спасибо. Жаль.
Серебрянной пули нет. |
|
14.12.2005, 14:57 | #11 |
Участник
|
Проблему решил как вами описано выше.
А по задаче, кол-во языков не должно ограниченваться какими-то избранными, то есть произвольные. Офис центральный переводиться зарубеж, поэтому решено всю информацию, во всех справочных таблицах перевести на английский, а потом обновить данные в учетных таблицах. Сделать в каждой талице FlowFilelds, на табличку с переводами полей. Тем более что в типовом функционале есть Переводы для Товаров, работающие в Документах покупки и продажи. Название интерфейса определять по Языку. Ну и с репликацией в будущем не должно возникнуть проблем. Зато пусть хоть в Зимбабвею поставят Нави, работать будет. Если возникнут трудности в ходе реализации напишу здесь. |
|
14.12.2005, 15:31 | #12 |
Участник
|
в любом случаи есть свои плюсы и минусы
например, а как же отчеты? их тоже переделывать? |
|
14.12.2005, 15:42 | #13 |
Участник
|
Для этого есть таблица Translate Report - это для наименования репортов. А для данных в репорте, ну сделать одну функцию в КодеЮните и использовать её потом везде где необходимо.
Может и неудобно, зато решение, и не такое уж и корявое. |
|
14.12.2005, 15:49 | #14 |
Moderator
|
А как решается проблема с вводом тех символов, которых нет в латинице (например, буковка o или u c двумя точками наверху)? и как они отображются в отчетах.
|
|