View source | Discuss this page | Page history | Printable version   
Toolbox
Main Page
Upload file
What links here
Recent changes
Help

PDF Books
Add page
Show collection (0 pages)
Collections help

Search

Localization Process/zh cn


Contents

简介

Localizations are very important for Openbravo ERP project and our community is doing a great effort creating and maintaining them and giving suggestions to enhance Openbravo ERP product to better suite the needs of different regions around the word.

This document describes the localization process for Openbravo ERP. It involves several collaboration tools and people and it's very important that you follow it carefully.


基础本地化流程

  1. Check in the Current localization projects wiki page that there is no effort for your country or region. If there is an on-going effort, write the person listed as a contact and try to collaborate with her. If the person is not answering to your mails, send a message to the message thread for that effort explaining the situation and request to lead a new effort.
  2. If you are leading a new effort, you should follow these steps:
    1. Notify the localization coordinator at Openbravo of your effort sending an e-mail to Richard Morley <richard.morley AT openbravo.com>. Indicate also your schedule for your localization effort.
    2. A message thread for the localization effort should be created at the Localization forum.
    3. It is very important as a leader for an effort that you monitor the traffic for the message thread created for your effort. You can do so using the Monitor this forum option in the SourceForge forums. Note that the forums have been moved to Openbravo Forge.
    4. Send the details of your effort (indicating the address of the project forum to coordinate and your contact details) to Richard Morley <richard.morley AT openbravo.com>. He will register your effort in projects section of Current localization projects wiki page.
  3. The translations and chart of accounts are stored in the Openbravo Subversion Server. There is a page explaining how to use Subversion and you can also browse the translations and accounting directories. You should request an SVN account to Richard Morley <richard.morley AT openbravo.com> to be able to publish your work in our Subversion server. It is important to follow the repository structure in Subversion directories.
  4. Start the localization process.
    1. We request the localizers to upload their work to Subversion every two weeks in a pure open source approach, then people can follow your progress and give feedback to you.
    2. If you have any doubt or question, publish it in the forum created for your localization effort. Openbravo users and developers monitor that forum on a daily basis.
    3. If you think that your region has a functional or localization requirement that is not covered by Openbravo ERP, register it in our Localization Special Requirements page where we keep track of all of these.
  5. A translation is considered complete when all the user interface is translated. A chart of accounts should pass test1 and test2 to be published. We also strongly recommend to pass also test 3.
  6. Once your work is considered complete, a beta version can be published. Contact Richard Morley <richard.morley AT openbravo.com> to start this process. The process includes:
    1. Package the localization and make it available at Openbravo Forge where you can register a localization project.
    2. Prepare a note to announce it on the Openbravo Forge. See an example.
    3. Announce it in the localization forum.
  7. Keep the new versions of Openbravo up to date and repeat the process again.


完全本地化

  1. You should start by analyzing the most successful local solutions in your market. For example, for the US localization, a local solution such as Quickbook should be analyzed.
  2. Based on this analysis, you should define a list of localization gaps, which are features that need to be implemented in Openbravo in order to be competitive with that local solution. Please notice that you should focus on local capabilities only for this analysis and not on additional geography independent functionality; this is to a large degree a subjective assessment but it is important that your localization efforts do not get sidetracked by other potential functional gaps.
  3. Contact Openbravo localization team: collaborate AT openbravo.com
  4. Collaborate: join efforts from country community members.
    1. A message thread for the localization effort should be created at the Localization forum.
    2. It is very important as a leader for an effort that your monitor the traffic for the message thread created for your effort. You can do so using the Monitor this forum option in the SourceForge forums.
  5. Openbravo team will create a branch in our subversion repository for the project following the naming conventions and will give you the rights to develop there.
  6. Get a developer ID. Note: this is not needed starting with r2.50.
  7. Get rights to access the new branch (user and password)
  8. Write a functional and technical documentation for the project.
  9. Do continuous merges from trunk to your branch to keep updated and avoid future problems.
  10. Packaging:
    1. OB 2.40: Country OB version can be created from the branch.
    2. OB 2.50: A module for the specific country can be created from the branch.

Any particular development that makes sense to be included as part of the product core can be developed separately and contributed to the core. This means not taking care of that code any more. Openbravo team will help you doing the functional and technical specification but also will take care of that piece of code for future versions compatibility. See contributor guide.

本地化模块

The modularity features of Openbravo ERP 2.50 onwards enable localizers to create a discrete extension module which can be easily developed and shared with other users via the Openbravo central repository. It is strongly recommended that you use a module for any localization effort.

There are many different types of localization module. This document particularly explains how to create translations, charts of accounts and standard reference data modules, since these modules have a specific registration process.

You can also combine modules to create a localization pack.

In general, there are three stages to creating a module:

To learn how to work with modules, consult the video tutorials and the modularity developer's guide. Once you are confident with the concepts and techniques, use the guidelines that follow to specifically create localization modules.

Java包本地化的命名规范

In general all modules should follow the Java naming convention. If you are creating a localization module, there are additional conventions that you should observe. These conventions are based on your relationship with Openbravo S.L.U. If you are an internal Openbravo contributor or an official partner creating a proprietary module, you should use Openbravo as the company designation. If you are creating a module as an open source contribution, you should use the name of your own organization.

The following table contains a description of the best practices when naming modules.

Contributor type Domain Contributor Contribution type Content Locale 例子
The creator of the content Top level domain of the creator, for example: com, org or edu 创建者名字 Select from: module, accounts, translation 内容描述。If the contribution is a translation then identify the language using ISO639_1 所用本地化的 ISO 3166国家地区代码
三方贡献者 com mycompany accounts small_company MX com.mycompany.accounts.small_company.MX
3rd party contributing under a specific code contribution agreement org openbravo translation es ES org.openbravo.translation.es_ES
Openbravo org openbravo module taxes ES org.openbravo.module.taxes.ES

创建翻译模块

重要 The section that follows is the recommended way to install a translation for Openbravo ERP 2.50 onwards. It's still also available the previous methodology as described in this instructions.

To create a translation module follow the guidelines in the developer's guide and tutorials, but using the specific configuration described in this document. The process for creating a translation module is as follows:

  1. Register the translation module with the central repository.
  2. Export the database
  3. Translate the xml files
  4. Package the module
  5. Upload the module to the Openbravo Forge

注册翻译模块

When you register the module, fill in the fields as follows:

When you click Register Module you will be asked to supply your username and password for the Openbravo Forge

导出数据库

When you have registered the module, the next stage is to export the database to create the necessary module folders.

  1. 执行下列命令:
    ant export.database
    Exporting the database creates a new subfolder within the Modules folder. The new folder has the same name as the java package of the translation module, for example modules/org.openbravo.translation.es_ES.
  2. Within the Modules folder, manually create a subfolder called referencedata. You must use this exact name, note that it is all lower case and has no spaces.
  3. Within the referencedata folder, create another subfolder called translation.
  4. Within the 'translation folder create another folder for the translation, using the xx_YY language / country code naming convention. For example en_US for US English.
  5. Place the translated .xml files within the folder for its respective language.

翻译.xml文件

You can now translate the .xml files using your preferred editor. When you have finished translating, copy them into the translation subfolder you have already created.

把模块打包成.obx文件

To package the module, 执行下列命令 ant package.module -Dmodule=modulename, where modulename is the Java package name of the module.

在OpenBravo Forge发布模块

现在你可以在Openbravo Forge上发布模块了

Creating a chart of accounts module

The chart of accounts describes the accounting structure that Openbravo ERP uses. You can create a chart of accounts for a specific locale, for example to accomodate local accountancy practice or regulation. The chart of accounts consists of a .csv file that can be applied to a Client during the initial client setup process.

Before version 2.50, charts of accounts were downloaded from sourceforge and you can still use the Openbravo forge to upload and download charts of accounts. However, it is recommended that you create a module for charts of accounts and distribute it via the central repository because:

Creating a chart of accounts module comprises the following steps:

  1. Register the chart of accounts module with the central repository.
  2. Create the folder structure to hold the chart of accounts file.
  3. Create the chart of accounts file and save it in the folder structure.
  4. Package the chart of accounts module.
  5. Publish the module to the Openbravo forge.

Registering a chart of accounts module

When you register the module, fill in the fields as follows:

When you click Register Module you will be asked to supply your username and password for the Openbravo Forge.

Creating the chart of accounts file

Once you have registered the module, create the chart of accounts, using whichever package you prefer to create the .csv file.

导出数据库

When you the chart of accounts file is ready, the next stage is to export the database to create the necessary module folders.

  1. 执行下列命令:
    ant export.database
    Exporting the database creates a new subfolder within the Modules folder. The new folder has the same name as the java package of the translation module, for example modules/org.openbravo.referencedata.coa.ES_es.
  2. Within the Modules folder, manually create a subfolder called referencedata. You must use this exact name, note that it is all lower case and has no spaces.
  3. Within the referencedata folder, create another subfolder called accounts.
  4. Place the chart of accounts .csv file within the accounts folder.

把模块打包成.obx文件

To package the module, 执行下列命令 ant package.module -Dmodule=modulename, where modulename is the Java package name of the module.

在OpenBravo Forge发布模块

You are now ready to publish the module to the Openbravo forge

创建标准参考数据模型

Standard reference data is data from Openbravo ERP's application tables, for example taxes and alerts. If you have set up Openbravo ERP in a particular way to meet local requirements, you can export this data and convert it to a module, so that you can share it with other users via the central repository.

The process for creating a standard reference data module is:

  1. 在Openbravo ERP定义并注册模块。
  2. Define and export the tables you require as a dataset.
  3. 把相应模块打包成.obx文件
  4. 在Openbravo Forge创建项目。
  5. 在Openbravo Forge发布模块。

Registering a standard reference data module

定义和输出数据集

  1. 登录到Openbravo ERP
  2. 从应用程序菜单,选择Application Dictionary > Dataset
  3. 点击New.
  4. 模块(Module)列表,选取包含标准参考数据的模块。
  5. 定义查询键,名字和描述。
  6. Data Access Level list, select the Data access level from the following options:
    • System only
    • System/client
    • Client/organization
    • Organization
  7. 选取Export allowed option.
  8. 选取 Table Tab
  9. From the Table list, select the table whose content you want to include in the module.
  10. SQL where clause field, specify the SQL "WHERE" statement that will identify the set of rows to be exported, in DAL notation. For example, client.id='1000001'
  11. To export all columns, select the Include All Columns option. To include only the columns you specify, select the Columns tab and create a new record for each column you want to export.
  12. To include the security audit columns (created, createdby, updated and updatedby) in the export, clear the Exclude Audit Info checkbox.
  13. Clear the Is Business Object option.
  14. 点击Save
  15. 点击the Export Reference Data button to export the reference data to an .xml file that you can include in the module.

导出数据库

The next stage is to export the database to create the necessary module folders.

  1. 执行下列命令:
    ant export.database
    Exporting the database creates a new subfolder within the Modules folder. The new folder has the same name as the java package of the translation module, 例如 modules/org.openbravo.referencedata.coa.ES_es.

把模块打包成.obx文件

模块打包, 执行下列命令: ant package.module -Dmodule=modulename, where modulename is the Java package name of the module.

在OpenBravo Forge发布模块

You are now ready to publish the module to the Openbravo forge

在OpenBravo Forge发布模块

一旦创建好.obx文件,可以把它通过openbravo forge给社区共享:

  1. 在浏览器里,转到Openbravo Forge页面
  2. Toolbox栏,点击Register Project.
  3. Complete the details of your module.
  4. 点击Next.
  5. On the Services page, select the services you want to be avaiable for your project, for example a discussion forum.
  6. 点击Finish.
  7. Toolbox,选My Profile.
  8. My Modules area you will see that the module you registered in Openbravo ERP is listed. 点击the module.
  9. To associate the module with the project you have created, select the project from the list.
  10. 点击Associate Project. The Publish Version page appears.
  11. 点击Browse. Navigate to the location of your module's .obx file.
  12. 点击Publish OBX File.

Combining localization modules into packs

Creating localization packs offers a convenient way for users to implement localization modules. Packs are a particular type of module which consist of other modules, and creating a pack has a specific registration process. Once you have created the localization modules you require, follow these steps to combine them as a pack.

  1. Log into Openbravo with the system administrator role.
  2. From the Application menu, select Application Dictionary > Module.
  3. 点击 New. A new module record appears.
  4. In the Name field, give the package a name using the correct naming conventions.
  5. Module Type列表,选Package.
  6. Complete the Description and Help fields using natural language and supplying as much information about the package as possible.
  7. Complete the rest of the module information as appropriate.
  8. 点击 Save
  9. 选择Include 页.
  10. 点击 New.
  11. From the Included module list, select the module you want to add to the pack.
  12. 点击Save.
  13. 重复10-12步,把更多模块加到包里。
  14. Package the module using the command ant command: ant package.module -Dmodule. The parameter of the commmand is the java package name of the translation module. For example if the localization pack is called org.openbravo.package.czechlocalizationpack.CZ_cs,
    完整的ant命令如下:
    ant package.module -Dmodule=org.openbravo.package.czechlocalizationpack.CZ_cs

Once you have created the pack, you can publish it to the Openbravo Forge in the normal way.

头脑风暴

New branches are created for particular developments when needed for a localization and also when contributing code to the core. Openbravo ERP follows particular naming conventions to easily identify the purpose of those branches:

A localization branch can easily be updated from trunk doing a merge. We encourage localizers to do continuous merges from trunk to their branches so that changes can be easily applied.

本地化分支:
点击见大图

When our model has both localization and core contribution, two branches are created as follows:

混合模式分支:
点击见大图

This way core contributions can easily merged back to the trunk once it has been tested but also can be easily merged to localization branch.


如果你还有问题,千万不要犹豫,直接在本地化论坛上发出问题或使用实时 IRC通道.

Retrieved from "http://wiki.openbravo.com/wiki/Localization_Process/zh_cn"

This page has been accessed 11,914 times. This page was last modified on 12 March 2010, at 21:29. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.