Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, DarkSid, Вы писали:
DS>>Вопрос, а как планируется заполнение данной БД. При поступлении новой детали кто будет ее вводить и на скольких языках. Не убьют ли тебя пользователи при необходимости заполнять названия новой детали на всех существующих языках?
А>Конечно, не убьют! Я буду далеко от них
А>В системе будет столько локализованных названий, сколько переводчики успеют сделать.
А>При добавлении нового наименования совсем необязательно надо заполнять на всех языках. Если пользователь включил в интерфейсе английский язык, то названия (деталей, отделов, должностей, описания, комментарии к ...) из базы данных должны браться только локализованные для английского пользователя, а если какой-либо ресурс не переведен например на английский, то система должна выдать текст в той локализации, которая по умолчанию в системе. Таким образом, если забыли что-то перевести, то хоть на русском, но по умолчанию пользователь что-то на экране увидит
А>Приходит в голову идея сделать для каждой таблицы TABLE_XXX ее "локализованный" двойник LOCALIZED_TABLE_XXX, у которого будет составной PRIMARY KEY из мигрировавшего ключа из TABLE_XXX.Id и мигрировавшего ключа из таблицы LOCALIZATION.Id
А>Таблица LOCALIZATION будет хранить список доступных локализаций.
локализация имеет смысл только когда с одной базой будут работать пользователи с разной локализацией. Имеет смысл только для справочников. Например,резолюцию руководства "Казнить нельзя помиловать" руководитель писать на 3-4 языках не будет.Так что лучше оставить 1 локализацию — принятую в рамках компании. З
Твой вариант сложен разработкой и временем выборки. Программа должна поддерживать еще и уровни локализации. Немецкий. Немецский — австрийский. Немецкий — швейцарский. и т.п. Если нет локализации на украинском, то посмотреть на русском, если и его нет то английский как пример.
Стоит ли овчинка выделки?
Ведь после внедрения программы, когда ты будешь далеко, данные будут вводить в нее в 99% случаев только на 1 языке.
Подумай про поиск. Тебе надо найти все детали в названиях которых присутвует некое слово сочетание. Если она будет просматривать всю локализацию, то может вывести лишнее или наооброот не взять.
Еще раз подумай а стоит ли овчинка выделки?