Developer FAQ
This page contains some frequently asked questions related to Dolibarr development. For frequently asked questions on other topics, read page User FAQ.
Como ser um programador oficial
No projeto Dolibarr, que se situa numa galáxia própria, existem vários intervenientes com diferentes níveis/classificações. O número de programadores é significativo, pelo que as contribuições e alterações têm de ser controladas e validadas (tanto para necessidades funcionais como para codificação). Por esse motivo, o acesso de escrita ao código fonte (GIT) é limitado e gerido por uma organização descrita em seguida. Cada programador possui uma classificação consoante a sua antiguidade e desempenho anterior. O nível de autorização de uma pessoa no projeto aumenta à medida que progride na sua classificação.
A carreira de um programador Dolibarr segue estes passos, classificados por um título familiar aos fãs de ficção científica. Aqui estão as etapas. É importante compreender que esta organização tem o único propósito de melhorar a qualidade do Dolibarr e a sua utilização rigorosa é necessária.
As classificações dos contribuidores para o projeto Dolibarr, e o que fazer para as alcançar, estão definidas na página do Projeto Dolibarr no capítulo "Funções dos Desenvolvedores".
Current team
See page Dolibarr Project to know list of current people that work on Dolibarr, with their current grade.
Start a development
Read first completely the Developer documentation to know all rules a developer must respect. You can also read the following FAQs.
Get/update project sources
See page FAQ Get,update project sources.
How to create a new skin
For this, see page Skins
How to develop my own module
To develop your own numbering module, see Create numeration module.
To develop your own document model, PDF or other, see Create a PDF document template or Create an ODT document template.
To develop your own business module (screens, tables), see page Module development.
How to add/complete a translation
For this, see page Translator documentation
Change my numbering system after start
If the new numbering system does not conflict with the old one, to change the numbering rule, just go to menu Setup - Modules - Invoice setup and choose the new numbering rule in the list.
If the new rule can create conflicts with old one, it will be necessary to rename old existing references. This can be done by a SQL request. For example, to go from numbering module Jupiter (FYYYYMM99) to Terre (FAYYMM-999), you can run the following request:
update llx_facture set facnumber=concat('FA',substr(facnumber,4,4),'-',substr(facnumber,8))
where facnumber like 'F%' and facnumber not like 'FA%';
For example, to rename references from model FAYYMM999 to Terre (FAYYMM-999), you can run the following request:
update llx_facture set facnumber=concat('FA',substr(facnumber,3,4),'-',substr(CONCAT('0000',substr(facnumber,7)),-4))
where facnumber like 'FA%' and facnumber not like '%-%';
Submit a patch, work and help on Dolibarr development
If you want to know what you can do to start or help Dolibarr development, read instead chapter Developer_FAQ#How_to_be_an_official_developer. If you already read it and want to distribute a patch, this chapter is for you.
- If you have Yoda grade (See Dolibarr_Project#Developers_roles for information on different grade), you have a direct GIT write access. So just use it to commit your changes.
- Because you probably don't have this role (your grade is Jedi or Admiral or Soldier), it is necessary to use the "Fork" feature of GitHub. Then you can make a "Pull Request" from GitHub to ask to have your patch merged into develop branch. More information on FAQ_Get,update_GIT_project_sources and https://github.com/Dolibarr/dolibarr/blob/develop/.github/CONTRIBUTING.md
How to package and deploy a module
See page Module development.
This process works also to generate a package to submit it on the https://www.dolistore.com market place.
How to be informed on news and what happens on Dolibarr project ?
See page FAQ How to be informed on news about Dolibarr project ?
Migrate my Mysql database to PostgreSQL
See page FAQ Migrate my Mysql database to PostgreSQL
What and how is the release process
See page FAQ Release process