Localization Guide To Delete
Welcome to the Openbravo localization guide!
This guide contains a wealth of information on how to properly localize Openbravo from the very basic localization tasks, like translation, to more advanced topics, like creating official tax report to submit to the Tax Authorities.
This document provides step by step guidelines on how developers and consultants can localize Openbravo.
If you want to learn more about what can be included in an Openbravo localization for your country, visit this article Overall content of an Openbravo localization
If you want to learn more about how to localize Openbravo, visit this article Openbravo Localization Process
Openbravo: a platform ready to be localized
Localization and internationalization are two important features in any software. In the ERP world these two features become critical for the success of an ERP.
From the very beginning Openbravo is ready to be localized for any country; however, since the introduction of Modularity in Openbravo 2,50, the process of developing and distributing a localization has been greatly improved and simplified.
Any user can create a localization module/pack and publish it in the Central Repository through the Openbravo Forge to make it immediately available to the rest of the world. Once done, Openbravo automatically manages the process of installation/update/uninstall with just a few clicks! Do you know any faster way to promote your work? we don't think so...
Who can create a localization for Openbravo?
Openbravo is a free software, so anyone with the required skills and knowledge can contribute in the localization process.
In Openbravo we encourage our wide network of partners and our Community to contribute in the localization process.
To learn more about who can localized Openbravo, visit the first articles of the Openbravo Localization Best Practices document.
Skills required to localize Openbravo
The skills requires for "Developers" to localize Openbravo are:
The skills requires for "Consultants" to localize Openbravo are:
Overall estimated effort
Structure of this guide
Localizing an ERP is a wide task which is usually done by people having different skills.
This guide is mainly divided into two big sections: Concepts and HowTos.
Besides, there is also a FAQ page which will grow while answering common localization related questions.
- The Concepts section provides the previous knowledge required by any localizer to work in a localization project.
It basically points to the relevant articles -from a localizer point of view- of the Developer's guide and the User Guide.
- The How To articles section is clearly the most important one for the localizers.
It has been designed to provide a set of articles with all the important aspects for any localization project.
These articles are written from a practical perspective, i.e. they have a list of consecutive steps that must be executed to complete a concrete task.
They have plenty of screenshots and examples for a better understanding.
Although the How To articles should be read from the beginning to the end, they can also be used as a reference guides to be consulted later on.
- Finally there is also a FAQ page with the answer to common localization questions.
The Localization Concepts section gives a detailed description of all relevant concepts required for localizing Openbravo. The articles inside this section try to describe from a theoretical point of view all the Openbravo parts related to the localization, like for example the way translations are managed in Openbravo, the concept of dataset, etc.
Depending on your focus you will find some articles more relevant for you, for instance:
- if you just want to work on translations, you don't need to know anything about development concepts
- however, if you want to develop a fiscal report, you must understand all the concepts behind the development process in Openbravo (apart from having a good functional knowledge).
Finally remember that, in each article of the Localization How-tos, there are links to the relevant concepts required for working on the concrete task.
The main source of information related to development is the Developer's guide , which provide all the information needed to become an Openbravo developer expert. As you can see this guide is very extensive, but hopefully you don't need to read it from the beginning to the end to create a full localization (although it is recommended). Here you have the list of articles that are important from a localizer point of view.
All Openbravo developments take place within modules; in fact the way to distribute a localization for Openbravo is under the form of a packs containing all the modules and packs for a specific country. That's why it is critical to understand the Modularity Concepts.
A great percentage of the modules included in a localization pack contain datasets, which is the way Openbravo has to import data into an instance. For example, if we want to create a module which contains the regions of a country, our module will require a dataset that stores all this information.
Apart from translations and modules containing datasets, a complete localization for a country usually includes modules implementing code that cover a certain functionality. This is the case of complex modules that, for example, creates official fiscal reports to be sent to the tax authorities or modules that are in charge of validating data. To help the developer, Openbravo provides its own framework that facilitates the creation and integration of any extension module. Based on the Model Driven Development (MDD) approach, Openbravo includes an Application Dictionary to define the data model (database tables, columns, validations, etc.), and, on top of that, the system is able to automatically create all the user interface artifacts. This is an amazing tool that increases productivity allowing the developer to focus only in the development code. To know more about all these topics, it is highly recommended to read the Openbravo Main Development Concepts.
Finally, for this kind of modules that implement code, it is a great advantage to work with the Eclipse IDE, which will increase the developers productivity thanks to its user interface and tools that help during the code development. Please refer to the How to setup Eclipse IDE article if you haven't done it yet.
Functional concepts are very important for creating a localization. The User Guide is the main source of knowledge for understanding the wide set of functional features already available in Openbravo and how they work. As in the case of the Developer's guide, the User Guide is a very detailed document that you don't need to fully read it (although it is recommended). Here you have the list of articles that are important from a localizer point of view.
To create a localization pack it is not necessary to be a functional expert, but you should have a clear understanding about the Financial Management module. For example, this area is the place where we define taxes, tax categories and business partner tax categories that the user will use later on for creating transactions (orders, invoices, etc.). As you know a taxes module is a perfect candidate for a localization pack, that's why it's important to understand its behavior inside the ERP.
A dataset module with the list of common payment methods for a country is another good candidate for a localization. The way payment methods work is described in the Payment Method article of the User Guide.
Supporting official tax reports is a way to have a localization for a country that makes a difference. Openbravo released an extension module called Tax Report Launcher that creates the infrastructure and includes a set of developer's utilities for generating official tax reports. The Tax Report Launcher wiki is the place to understand the utility of this module for a localization.
Managing remittances is a feature that Openbravo supports through the Remittances module. Apart from creating remittances of payments and/or collections, this module provides the framework for implementing specific file formats to be sent to the bank, which is something that could be localized according to the country standards. For more information about the remittances module, visit the Remittances project wiki page.
Openbravo's accounting engine allows user to override its behavior through the creation of Accounting Templates that can be distributed as modules. If necessary, these accounting templates give the possibility to modify the default accounting engine to adapt it to the particular needs of each country.
When we talk about a localization for any software, the first thing we are probably thinking of is the translation. In the Translation Engine Concepts article you will find the information for understanding the way Openbravo manages translations. Remember that there is a How to Create and Update Translation Modules that guides through the whole process from a practical point of view.
Chart of Accounts is other important topic in case of an ERP software with accounting engine. The chart of accounts is a CSV file containing the accounting tree for a particular locale that the Openbravo's accounting engine tracks. More information about this file is available at the Creating Accounting Files article.
Finally, another interesting concept for a localizer is the alerts support in Openbravo. Alerts warn the user about interesting information. For example, in a localization context we can create alerts that informs the user about the submission dates for official reports in a country, alerts that check data is correct (taxes properly used, document not posted...), and anything you can imagine.
The Localization How-tos section describes the Openbravo localization tasks from a practical point of view. Each article represents a specific localization task, guiding the localizer step by step through all the process. These how-tos can be read independently, although each one may include a section with recommended articles (usually in the Concepts section) that facilitate the understanding of the howto. In addition, each article has information about the difficulty level, the prior knowledge needed and the estimated time it may cost to perform each particular task.
Here is the list of the available localization how-tos:
- How to Create and Update Translation Modules
- How to create a Chart of Accounts Module
- How to validate the configuration of a Chart of Accounts
- How to create a Regions Module
- How to create a Taxes Module
- How to create a Payment Terms Module
- How to create a Payment Methods Module
- How to create a Module that Overrides Accounting
- How to create a Module that Adds an Accounting Process
- How to create a Remittance File Module
- How to create an Official Fiscal Report Based on the Tax Report Launcher
- How to change a community module into a commercial one
The final objective of any localization project is to create a localization pack. Please read the How to Create Localization Packs to understand the way to encapsulate your modules into packages.
The Localization Guide FAQ page contains a list of the commonly asked questions that can't be answered in a concrete article.
This list of questions will grow based on the feedback provided by our localizers.
Additional sources of information
If you have additional questions or can offer advice and support to other localizers, it would be to everyone's benefit to post them on the Translations & Localizations Forum on Openbravo's Forge (though we are also available at patricia.sanjuan AT openbravo.com).