You are here

Русификация ReportPro 2.14

ReportProХотя по нынешним временам знание "аглицкого" языка не является чем-то особенным и необычным, но всё же, программы, интерфейс которых переведен на родной язык, более удобны и привычны. Специалисты по КаВо очень часто в своей работе используют ReportPro. Задавшись благородной целью решил попробовать русифицировать ReportPro 2.14 (RP214d1, версия .dll-файла: 2.14.4.1).
 
Русская языковая библиотека и тестовые приложения RP214.
 
Долго рассказывать, что и как я делал, но специалисты поймут. Есть известные проблемы с подбором наиболее удачных терминов в русском языке, учётом правил склонений, сокращений и пр. И как итог, на русский язык удалось перевести меню, дизайнер и run-time сообщения, а также 2 (два) стандартных тестовых приложения – RP2R_32.exe и RP2S_32.exe.
 

Особенности решения:

1. Поскольку нет доступа к исходникам RP, то для русификации самого приложения (а не только встраиваемого дизайнера) имена модулей оставлены прежними, т.е. EnglishMenu и т.п., хотя фактически они переведены. В результате нет нужды в использовании функции SetRpLangDLL(cDLL) и исполняемый файл RP2_32.exe читает русские строки, хотя и считает их английскими .

Посему и имя языковой библиотеки оставлено прежним – RP2Eng32.dll.

2. Поскольку мне не приходилось использовать диаграммы (графики) в RP, то часть сообщений, относящихся к построению графиков, осталась непереведенной в тех случаях, когда я не смог однозначно перевести сообщение.

3. Установка элементарна – скопировать файлы в каталог RP, сохранив, на всякий случай, прежние версии файлов.

 

Как известно, существуют версии RP2.16j и RP3, но у меня их нет. Если попробовать «подсунуть» эту русифицированную библиотеку в более поздние версии, то скорее всего, возникнет RT ошибка из-за отсутствия каких-нибудь констант.

 Файлы находятся здесь:
 
Для любознательных и желающих сделать перевод самостоятельно – дорога сюда.
См. пункт 8 (восемь). :)) 
 

Comments

Смотрю, что комментаторы задерживаются, поэтому решил написать свою тираду. Я считаю то, что сделал автор, очень полезным, т.к. производитель библиотеки ReportPro упорно продолжает игнорировать неанглоязычных пользователей. И это недопустимо. Но, «спасение утопающих в руках самих утопающих». Шаг (основной перевод) сделан – и это главное!
 
Работа кропотливая, долгая, важная. Естественно, что как и всякий перевод – это сопряжено с неизбежными попутчиками: грамматическими ошибками и некоторыми неточностями. Всё это можно найти, лишь начав пользоваться переведённой библиотекой.
 
Удивительно, как мало грамматических ошибок! Пока нашёл всего лишь одну в модуле «Strings (Design Time)»:
 
            // Sort Order Dialog Box
            IDS_ORDER_CAPTION                              "Порядок сотировки"
            IDS_ORDER_CAPTION                              "Порядок сортировки"
 
К моему сожалению, я начал пользоваться сделанным переводом лишь недавно. Поэтому ни на что не претендуя, стараясь не навязываться, могу предложить свои варианты перевода пока лишь отдельных строк:
 
В модуле «Strings (Design Time)»:
 
                        // ReportPro Properties
 
//          IDS_RPC_SETANSI             "Automatic OEM/ANSI conversion"
//          IDS_RPC_SETANSI             "Автопреобразование OEM/ANSI"
            IDS_RPC_SETANSI             "Автоматически преобразовывать OEM в ANSI"
 
//          IDS_RPC_SETDELETED      "Include deleted records"
//          IDS_RPC_SETDELETED      "Включить удаленные записи"
IDS_RPC_SETDELETED      "Учитывать удаленные записи"
 
//          IDS_RPC_SETCENTURY    "Include century when displaying dates"
//          IDS_RPC_SETCENTURY    "Показывать век в датах"
IDS_RPC_SETCENTURY    "Год выводить полностью"
 
//          IDS_RPC_METRIC               "Metric"
//          IDS_RPC_METRIC               "Метрическая система"
IDS_RPC_METRIC               "Использовать метрическую систему"
 
//          IDS_RPC_TEXT2                  "Database Path"
//          IDS_RPC_TEXT2                  "Путь к БД"
IDS_RPC_TEXT2                  "Каталог базы данных (БД)"
 
//          IDS_RPC_TEXT3                  "Temporary Files Path"
//          IDS_RPC_TEXT3                  "Путь к временному каталогу"
            IDS_RPC_TEXT3                  "Каталог временных файлов"
 
                        // RP 1.2 additions...
 
//          IDS_GROUP_EDIT               "&Edit"
//          IDS_GROUP_EDIT               "&Редактировать"
IDS_GROUP_EDIT               "&Править"
 
                        // ReportPro 2.5 Additions/Changes
 
//          IDS_RPC_WARNONEXIT               "Warn on Exit"
//          IDS_RPC_WARNONEXIT               "Предупреждать при выходе"
IDS_RPC_WARNONEXIT               "Подтверждение выхода"
=> Ещё варианты:
                        IDS_RPC_WARNONEXIT                          "Подтверждать выход"
                        IDS_RPC_WARNONEXIT                          "Подтверждать закрытие"
                        IDS_RPC_WARNONEXIT                          "Подтверждение закрытия"
 
                        // Draw Objects Dialog & Property Menu strings
 
//          IDS_POSEDIT_LEFT                        "Left:"
//          IDS_POSEDIT_LEFT                        "Лев.:"
            IDS_POSEDIT_LEFT                        "Слева:"
 
//          IDS_POSEDIT_TOP                         "Top:"
//          IDS_POSEDIT_TOP                         "Верх.:"
            IDS_POSEDIT_TOP                         "От верха:"
 
 
В модуле «Strings (Run Time)»:
 
//          IDL_BTN_CANCEL                         "&Cancel"
//          IDL_BTN_CANCEL                         "&Отказ"
            IDL_BTN_CANCEL                         "&Отмена"
 
Почему я предложил эти варианты переводов? Есть общеупотребительные фразы и слова (типа слова «Отмена»). И вариант «Отказ» встречается в программах уже редко. Другие же фразы – попытался сделать более информативными и читабельными. А некоторые фразы пришлось изменить (укоротить) для того, чтобы они не вылазили за пределы кнопок или окон.
 
Будут ещё предложения? Да, по мере использования перевода автора, буду уточнять его, и адаптировать под себя и моих пользователей. Чтобы он становился более гладким и приятным.
 
Без сомнения остался ещё один необозначенный открытый вопрос с «горячими» клавишами. Пока получается так, что в англоязычной версии они одни, а в русскоязычной – другие. Решения, конечно, есть, но мне бы хотелось "послушать других ораторов". :))

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer