FAQ Desarrolladores: Difference between revisions

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
mNo edit summary
Tag: 2017 source edit
 
(115 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<!-- BEGIN interlang links -->
<!-- Do NOT edit this section
    Links below are automatically managed by PolyglotBot
    You can edit links on the English source page : Developer_FAQ -->
[[en:Developer_FAQ]]
[[fr:FAQ_Développeur]]
[[de:Entwickler_FAQ]]
[[zh:开发者常见问题解答]]
<!-- END interlang links -->
[[Category:FAQ ES]]
{{TemplateDocDesarrollo}}
{{TemplateDocDesarrollo}}
{{ToTranslate}}


== Recuperar/actualizar una versión CVS de desarrollo ==
Esta página contiene algunas preguntas-respuestas en relación al desarrollo de Dolibarr. Para preguntas-respuestas sobre su uso, consulte la página [[FAQ Usuarios]].
'''Realizar un guardado de sus datos y su configuración'''


Si ya dispone de una instalación en marcha, guarde su fichero htdocs/conf/conf.php.
= Cómo convertirse en desarrollador oficial =
En la galaxia del proyecto Dolibarr, hay varias partes interesadas distribuidas en diferentes niveles o grados. El número de desarrolladores y las contribuciones son importantes y, cualquier proyecto que desee tener cierto nivel de calidad, debe de estar bajo una gestión controlada y de unas modificaciones validadas para su evolución, tanto en las necesidades funcionales como en su código. Por esta razón, el acceso en escritura a los fuentes (Servidor GIT) está limitado y regido por una organización que se describe en las líneas siguientes. Cada desarrollador tiene un '''grado''' que depende de su antigüedad y de sus contribuciones. El nivel de autorización de una persona en el proyecto aumenta con las etapas de promoción de grado.


'''Recuperación última versión de los fuentes por descarga'''
El curso de un desarrollador Dolibarr pasa a través de estas etapas, que hemos clasificado como un título familiar para los adeptos a la ciencia ficción. Estas son las etapas. Es importante comprender que esta organización tiene el único propósito de mejorar la calidad de Dolibarr y que es necesario que se respete estrictamente a fin de lograrlo. Así que no se ofenda si, como desarrollador, no dispone de un acceso GIT en escritura, antes de un cierto plazo.


Este método permite recuperar la versión CVS de la rama principal de desarrollo (llamada HEAD). La operación consiste en recuperar la última versión de los ficheros de Dolibarr que són reagrupados cada noche en un zip.
<span id="Soldado">'''* Soldado'''</span>
Para ello, vaya a [http://www.dolibarr.org/index.php?option=com_docman&task=cat_view&gid=64&&Itemid=36 versión CVS del día].
Los nuevos archivos sobrescribirán a los antiguos.


'''Recuperación última versión de los fuentos por CVS'''
La primera cosa que una persona dispuesta a ayudar debe realizar es familiarizase con las reglas y normas de desarrollo.


Para recuperar la última versión en fase de desarrollo, puede utilizar directamente [http://savannah.nongnu.org/cvs/?group=dolibarr el servidor CVS en modo anónimo], si dispone de un cliente CVS (comandos CVS en Linux, ó TortoiseCVS en Windows, por ejemplo).
Leyendo toda la [[Documentación Desarrolladores]], demostrará tener voluntad suficiente para convertirse automáticamente en '''Soldado''' de la alianza Dolibarr (Su grado será un nivel de '''Soldado'''). La mayoría de los desarrolladores interesados en el desarrollo de Dolibarr se clasifican en esta categoría.


El comando que permite recuperar una instantánea integral (sin seguimiento cvs) en la carpeta actual es:
El grado siguiente consiste en enviar parches, empezando por los simples, a la Lista de Correo de desarrollo (ver [[FAQ_Desarrolladores#Enviar un parche, mejora o participar en el desarrollo |FAQ Desarrolladores]] para el procedimiento), preferiblemente al foro (Lista de Correo preferida).  
''
CVSROOT=:pserver:anonymous@cvs.savannah.nongnu.org:/sources/dolibarr
export CVSROOT
cvs -q checkout -r HEAD -d ./ dolibarr/
''
HEAD significa que queremos la última versión en fase de desarrollo.


El comando que permite actualizar localmente una copia de trabajo CVS que ya ha sido recuperado:
Puede encontrar las tareas en espera de parche en el gestor de tareas a realizar: {{TemplateURLTasks}}


''En Linux (script shell):
Las tareas disponibles son las tareas que tienen la propiedad "Task opened to external developers" a "si". Si el valor es "no", olvídela, ya que será tratada por un desarrollador de grado Jedi.  
CVSROOT=:pserver:anonymous@cvs.savannah.nongnu.org:/sources/dolibarr
export CVSROOT
cvs -q update -P -d
En windows con Tortoise cvs
"C:\Program Files\CVSNT\cvs.exe" -q update -P -d
CVSROOT=:pserver:anonymous@cvs.savannah.nongnu.org:/sources/dolibarr''
Y para dejar su copia local anulando sus modificaciones con los ficheros integrados en cvs:
"C:\Program Files\CVSNT\cvs.exe" -q update -P -C -d
CVSROOT=:pserver:anonymous@cvs.savannah.nongnu.org:/sources/dolibarr


Si es necesario, modifique los derechos de propiead de los dosiers, para que el servidor tenga acceso.
El número de soldado no está limitado. Además, cuantos más tengamos, más fuertes seremos.
Los soldados son la principal fuerza de la alianza Dolibarr.


'''Recuperación de otra rama en el CVS'''
Dada la naturaleza de este grado, no es posible establecer una lista de todos los interesados en el proyecto Dolibarr con este grado (lista en continua evolución y muy larga).


Si desea una versión particular (con sus patchs), debe seguir el mismo procedimiento que el anterior pero sustituyendo HEAD con el nombre de la rama.
<span id="Z-6PO">'''* Z-6PO'''</span>
Por ejemplo DOLIBARR_2_2_BRANCH para la rama 2.2 ó DOLIBARR_2_4_BRANCH para la rama 2.4.


'''Restaurar su configuración'''
Si habla correctamente un idioma que no está presente o está mal traducido en Dolibarr y conoce GIT, use el sistema de push para publicar sus correcciones y ajustes.
El equipo seguramente le añadirá a la página oficial de traductores ([[:Category:Z-6PO]]) después de varios push


Restaure el fichero de configuración (./htdocs/conf/conf.php) de su copia de seguridad si lo ha desconfigurado
Si no conoce el sistema GIT, envíe sus correcciones sobre la última versión por e-mail a la lista de correo '''dolibarr-dev''' (Inscripción desde la página {{TemplateURLMLDev}}). Sin embargo, es preferible la primera solución basada en los push de GIT.


'''Actualización de la base de datos'''
<span id="Almirante">'''* Almirante'''</span>


El segundo paso es migrar la base de datos. Para ello, simplemente vaya a  
Sólamente después de un tiempo variable (que puede ser muy largo) en la categoría de Cazador, y si la calidad de los parches envíados son satisfactorios, un Yoda le ofrecerá acceso directo a GIT. Se habrá convertido en un '''Almirante''' de la alianza Dolibarr.
http://maracinedolibarr/install/
y escoja la opción "Mise à jour".


Este procedimiento de migración/actualización está diseñado para funcionar independientemente del estado de inicio y puede ser realizado varias veces sin riesgo.
Este título no se pide, se obtiene por decisión o proposición de un '''Jedi''' ó '''Yoda''' que ha estimado que ha enviado suficientes parches como para ser un '''Almirante''' serio. El acceso a GIT de un '''Almirante''' debe de ser utilizado para confirmar traducciones, correcciones de bugs declarados (BUG Tracker {{TemplateURLBugs}})
o en el foro (tanto correcciones personales como parches enviados por un '''Cazador'''). Toda confirmación GIT debe incluir obligatoriamente en la descripción (el campo log de la confirmación), el número de bug de corregido o el título del mensaje del foro que indica el problema. Sólo una traducción escapa a esta limitación (no hay restricciones para las traducciones). El incumplimiento de esta limitación, puede dar lugar a la degradación a la categoría de '''Soldado'''.
la obtención del grado de Almirante es rara porque está limitada. La calidad de Dolibarr solamente puede ser mantenida con un número de Almirantes controlado, ello no implica el tener un número de desarrolladores (Cazadores) importante (gracias al sistema de parches)


== Iniciar el desarrollo ==
Una lista de los colaboradores de Dolibarr con este grado se encuentra disponible en la página [[:Category:Admiral]]


Consulte '''totalmente''' la [[Documentación Desarrolladores]] para asimilar todas las normas y principios impusetos a los desarrolladores.
<span id="Jedi">'''* Jedi'''</span>
También puede consular los siguientes FAQ.


== Cómo crear un nuevo Tema ==
Después de un tiempo variable (probablemente el más largo de todos) como Almirante, y si la calidad de los parches enviados es satisfactoria, un Yoda le dirá que está autorizado para realizar confirmaciones de funcionalidades sin restricciones, a condición de la aprobación de un maestro Yoda al que explicará la funcionalidad a confirmar. Puede haber una restricción temporal definida por un Yoda debido a una próxima release cercana. Usted se convertirá en un '''Jedi'''.
Para ello consulte la página [[Temas]]


== Cómo desarrollar mi própio sistema de menús ==
Ese título no se pide, se obtiene de otro Jedi o de un Yoda.
Para ello consulte la página [[Sistema_de_menus]]


== Cómo desarrollar mi própio módulo ==
Este privilegio, sin embargo, es excepcional. La calidad de Dolibarr solamente puede ser mantenida con un número de Jedis controlado, ello no implica el tener un número de desarrolladores (Cazadores) importante (gracias al sistema de parches)
Para ello consulte la página [[Desarrollo_de_un_módulo]]


== Cómo añadir o completar una traducción ==
Una lista de los colaboradores de Dolibarr con este grado se encuentra disponible en la página [[:Category:Jedi]]
Para ello consulte la página [[Documentación Traductores]]


== Cambiar mi sistema de numeración de las facturas en curso ==
<span id="Yoda">'''* Yoda'''</span>
Si el nuevo sistema de numeración no entra en conflicto con el antiguo, será suficiente con ir al menú Configuración - Módulos - Configuración facturas y escojer un nuevo modelo de la lista.
Si el nuevo sistema entra en conflicto, será necesario renumerar las referencias existentes. Esto se puede realizar mediante una consulta SQL.
Por ejemplo, para pasar de Jupiter (FYYYYMM99) a Terre (FAYYMM-999), puede ejecutar la siguiente consulta:
<pre>
update llx_facture set facnumber=concat('FA',substr(facnumber,4,4),'-',substr(facnumber,8))
where facnumber like 'F%' and facnumber not like 'FA%';
</pre>


Por ejemplo, para pasar de un modelo FAYYMM999 a Terre (FAYYMM-999), puede ejecutar la siguiente consulta:
En un número de 1 a 5, los '''Yoda''' gestionan globalmente el desarrollo del proyecto. Este rango se obtiene por sucesión, a raíz de la salida de un Yoda que se retire por nominación directa o votación de los Yoda existentes
<pre>
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 '%-%';
</pre>


== Soumettre un patch, amélioration ou participer au développement ==
Una lista de los colaboradores de Dolibarr con este grado se encuentra disponible en la página [[:Category:Yoda]]


* '''Avec accès CVS en écriture '''
'''* ¿ Y Darth Vader ?'''
A ce jour, les accès en écriture au CVS sont restreints (le nombre de commit étant déjà suffisamment dynamique). Si vous bénéficiez à l'heure actuelle d'un accès CVS en écriture, utilisez-le et à condition que ce qui est commité corresponde bien à votre grade de développeur Dolibarr (Voir [[FAQ_D%C3%A9veloppeur#Comment_devenir_d.C3.A9veloppeur_officiel|FAQ Développeur - Devenir développeur officiel]] pour les différents grades).
Si, vous n'avez pas accès au CVS (vous êtes donc au grade de membre ou chasseur de l'alliance Dolibarr), il est nécessaire de suivre la procédure qui suit...


* '''Sans accès CVS en écriture'''
Existe. Siempre habrán parásitos que contaminen el foro o lista de correo con mensajes o críticas no constructivas, que frenan el desarrollo de Dolibarr en lugar de ofrecer una crítica constructiva para ayudar a avanzar. Algunos son con bastante mala intención y mal tono. Son los que llamamos Darth Vader
Sans accès CVS en écriture (sans compte développeur savannah), il est nécessaire de fournir par mail, votre fichier patch.  
Afortunadamente, estadísticamente sólo hay constancia de la aparición y muerte de uno o dos Darth Vader por año...


Sous tout OS:
= El equipo actual =
Ver la página [[Proyecto Dolibarr]] para obtener una lista actualizada de las personas que trabajan en cada categoría.


Voici la ''méthode Pro'' selon laquelle travailler pour pouvoir générer un tel fichier patch:
= Iniciar el desarrollo =
Consulte '''totalmente''' la [[Documentación Desarrolladores]] para asimilar todas las normas y principios exigidos a los desarrolladores.
También puede consular los siguientes FAQ.


- Avoir un répertoire qui contient la version de Dolibarr de référence (résultat de la mise à jour CVS ou bien tout simplement l'arborescence résultant de la décompression d'un snapshot tgz de Dolibarr). On appellera ce répertoire '''ancien_rep'''. Vous pouvez récupérer le snapshot de la version de dev en cours sur le  [http://www.dolibarr.org/component/option,com_docman/task,cat_view/gid,50/Itemid,36/lang,en/ site officiel de Dolibarr].
= Recuperar/actualizar una versión de desarrollo =
Ve la pagina [[Recuperar, actualizar GIT fuentes del proyecto]].


- Avoir un autre répertoire qui contient l'arborescence de Dolibarr mais dans laquelle vous faites ou avez fait vos modifications. On appellera ce répertoire '''nouveau_rep'''.
= Cómo crear un nuevo Tema =
Para ello consulte la página [[Temas]]


Pour générer le fichier patch, il suffit alors de lancer la commande '''diff''' (en standard sous Linux, fourni dans [http://www.cygwin.org cygwin] sous Windows) de la manière suivante:
= Cómo desarrollar mi propio módulo =
<pre>
Para desarrollar su propio módulo de numeración, consulte [[Crear un módulo de numeración]].
diff -Naur --exclude=CVS --exclude=".#*" --exclude="*~" --exclude='*.rej' --exclude='*.orig'
--exclude="*.bak" --exclude=conf.php --exclude=documents  ancien_rep  nouveau_rep  > fichier.patch
</pre>
Envoyer votre patch sur la ML.
L'intégration de votre patch n'est toutefois pas garantie, pas plus que le délai, mais si le patch est réalisé en suivant rigoureusement cette procédure, il a de forte chance d'être au moins testé (dans le cas contraire les chances sont proches de 0).


Sous Windows:
Para desarrollar su propio modelo de documento, PDF o otro, consulte [[Crear un modelo de documento PDF]] o [[Crear un modelo de documento ODT]].


Si vous êtes sous Windows, une ''méthode moins Pro'' mais qui donne le même résultat est la suivante. Installer l'excellent outil open source de comparaison Winmerge qui sait fabriquer des patchs au format ''diff -Naur''. Pour cela, comparer avec Winmerge le fichier référence et le fichier modifié et choisir dans le menu ''"Tools - Generate patch"'' (''Générer des retouches'' en version française). Saisir un nom de fichier comme ''"resultat.patch"'', cocher la case ''"Append"'' et choisir l'option ''"Format Unified"'' (''Style : unifié'' en version française). Cliquer sur ''"Ok"''.
Para desarrollar un módulo funcional completo (pantallas, tablas), consulte [[Desarrollo de un módulo]].
Éventuellement recommencer pour chaque fichier modifié.
Au final, on obtient un beau fichier ''resultat.patch'' qui contient toutes les modifications au bon format.


Au lieu de rechercher manuellement vos fichiers, si vous avez installé conjointement ''TortoiseCVS'' et ''Winmerge'', vous pouvez vous contenter de votre version modifiée sur votre ordinateur, et de la version CVS en ligne. Sous l'explorateur Windows, faites un clic droit sur le fichier qui doit être patché, et choisissez "CVS comparer" (pas WinMerge qui se trouve quelques lignes plus bas). Tortoise va lui-même lancer WinMerge. Puis reprenez la procédure décrite ci-dessus.
= Cómo añadir o completar una traducción =
Para ello consulte la página [[Documentación traductores]]


'''Appliquer un patch'''
= Cambiar mi sistema de numeración de las facturas en curso =
Si votre patch n'a pas encore été appliqué, mais que vous souhaitez de votre coté l'appliquer sur votre serveur linux fraichement mis à jour depuis la CVS, cela est possible grace à l'utilitaire patch.
Si el nuevo sistema de numeración no entra en conflicto con el antiguo, será suficiente con ir al menú Configuración - Módulos - Configuración facturas y escojer un nuevo modelo de la lista.
En admettant que vous avez créé votre patch à partir du répertoire htdocs de votre copie locale du cvs modifiée par vos soins, et que vous avez envoyé votre patch (monfichier.patch) sur le serveur dans le dossier patchs situé au meme niveau que votre dossier htdocs distant, la commande suivante devrait faire l'affaire (executée depuis le dossier patchs):
Si el nuevo sistema entra en conflicto, será necesario renumerar las referencias existentes. Esto se puede realizar mediante una consulta SQL.
patch -u -p0 -d ../htdocs < monfichier.patch
Por ejemplo, para pasar de Jupiter (FYYYYMM99) a Terre (FAYYMM-999), puede ejecutar la siguiente consulta:
<nowiki>Pour information: -p0 permet d'utiliser le chemin entier tel que mentionné dans le fichier de patch (-pn en retire les n premiers niveau de l'arborescence)
<source lang="sql">
-d permet de préciser le chemin relatif vers le dossier htdocs à patcher.
update llx_facture set facnumber=concat('FA',substr(facnumber,4,4),'-',substr(facnumber,8))
< permet de donner le chemin vers le fichier source à utiliser (le patch en mode unifié)
where facnumber like 'F%' and facnumber not like 'FA%';
-u permet de préciser que le patch est en mode unifié</nowiki>
</source>
 
== Comment packager/livrer un module pour utilisation ==
Voir la page [[Developpement_module#Cr.C3.A9er_un_package_pour_livrer_et_installer_votre_module|Developpement moduel - Créer un package pour livrer et installer votre module]]
 
== Comment devenir développeur officiel ==
 
Dans la galaxie du projet Dolibarr, il existe plusieurs intervenants de différents niveaux/grades.
Le nombre de développeurs et contributions est important, hors tout projet qui veut atteindre un certains niveau de qualité se doit d'avoir une gestion contrôlée et des modifications validées des évolutions, aussi bien au niveau des besoins fonctionnels que du code.
Pour cette raison, les accès en écriture sur les sources (serveur CVS) sont limités et régies par une organisation qui est décrite dans les lignes qui suivent.
Chaque développeur a un '''grade''' qui dépend de son ancienneté et de ces contributions passées. Le niveau d'habilitations d'une personne sur le projet augmente avec les étapes de promotion de grade.
 
Le cursus d'un développeur Dolibarr passe donc par ces étapes, que l'on classe par un titre familié aux adeptes de sciences fictions. Voici ces étapes.
Il est important de comprendre que cette organisation a pour seul but d'améliorer la qualité de Dolibarr et qu'il est nécessaire qu'elle soit rigoureusement respectée afin d'attendre ce but. Ne soyez donc pas offensé si, en tant que développeur, vous ne pouvez disposer d'un accès CVS en écriture avant un certain délai.
 
 
* '''Membre de l'alliance'''
 
La première chose qu'une personne désireuse d'aide doit faire et d'abord se familiariser avec les règles et normes de développements.
En lisant toute la [[Documentation Développeur]], vous faites preuve de volonté suffisante pour devenir automatiquement '''Membre''' de l'alliance Dolibarr (Votre grade est au niveau '''Membre'''). Et tout lire, c'est pas le plus facile...
 
Ce grade s'obtient sans validation supérieure.
 
 
* '''Chasseur de l'alliance'''
 
L'étape suivante consiste à soumettre des patch, en commençant par des simples, soit sur la Mailing List dev (voir [[FAQ_D%C3%A9veloppeur#Soumettre_un_patch.2C_am.C3.A9lioration_ou_participer_au_d.C3.A9veloppement|FAQ Développeur]] pour la procédure), soit sur le forum (Mailing List préférée).
 
A votre première soumission acceptée (incluse dans le CVS par un Amiral ou Jedi), vous entrez alors automatiquement dans la famille des '''Chasseurs''' de l'alliance Dolibarr.
 
Le nombre de chasseurs n'est pas limité. Plus, il y en aura, plus on sera fort.
Les chasseurs représentent la force vive principale de l'alliance Dolibarr.


Por ejemplo, para pasar de un modelo FAYYMM999 a Terre (FAYYMM-999), puede ejecutar la siguiente consulta:
<source lang="sql">
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 '%-%';
</source>


* '''Amiral de l'alliance'''
= Enviar un parche, mejora o participar en el desarrollo =


Ce n'est qu'au bout d'un temps variable (qui peut être très long) au rang de Chasseur, et si la qualité des patch qui ont été envoyée est satisfaisante, qu'un Yoda en place vous offrira un accès CVS direct.
Si busca como comenzar o ayudar en los desarrollos de Dolibarr, lea el capítulo [[FAQ_Desarrolladores#Cómo convertirse en desarrollador oficial|FAQ Desarrolladores -
Vous êtes devenu un '''Amiral''' de l'alliance Dolibarr.
Convertirse en desarrollador oficial]]. Si su parche ya está listo y desea distribuirlo, este capítulo es el indicado.


Ce titre ne se demande pas, il s'obtient par décision ou proposition d'un '''Jedi''' ou '''Yoda''' qui estime que vous avez soumis suffisamment de patch pour être un sérieux '''Amiral'''.
== Con acceso GIT ==
L'accès CVS d'un '''Amiral''' doit cependant n'être utilisé que pour commiter soit des traductions, soit des corrections de bugs déclarées sur Savannah ou le forum (que ces corrections soit personnelles ou issues d'un patch soumis par un '''Chasseur''').
A día de hoy, los accesos en escritura a GIT están restringidas (el número de confirmaciones és bastante dinámico). Si usted posee en la actualidad de un acceso en escritura GIT, utilícelo con la condición de que sus confirmaciones corresponden a su grado de desarrollador Dolibarr (Ver [[FAQ_Desarrolladores#Cómo convertirse en desarrollador oficial|FAQ Desarrolladores -
Tout commit CVS doit ainsi obligatoirement inclure, dans la description (le champ log de commit), le numéro du bug Savannah corrigé OU le titre du message du forum signalant le problème. Seul une traduction échappe à cette contrainte (pas de restrictions pour les traductions). Le non respect de cette contrainte, peut provoquer une rétrogradation au rang de '''Chasseur'''.
Convertirse en desarrollador oficial]] para los diferentes grados).
Pour la soumission de nouvelles fonctionnalités, il faut donc obligatoirement continuer sur le principe de patchs envoyés sur la ML.
Si no dispone de acceso a GIT (usted está en el grado de miembro o cazador de la alianza Dolibarr), deberá seguir el procedimento que sigue a continuación..


L'obtention du grade d'Amiral est toutefois rare car limité. La qualité de Dolibarr ne pouvant être atteinte que par un nombre d'Amiraux contrôlé, ce qui n'empêche pas d'avoir un nombre de
== Sin acceso GIT ==
développeurs (Chasseurs) très important (grâce au système de patch).
Sin acceso GIT en escritura, será necesario generar y enviar un parche a la Lista de Correo (Mailing List dolibarr-dev {{TemplateURLMLDev}}). A continuación le explicamos como generar un parche:


''En todos los SO'': [[Image:Logo_windows.png|20px]] [[Image:Logo_ubuntu.png|20px]] [[Image:Logo_apple.png|20px]]


* '''Jedi'''
He aquí el ''método Pro'' de como trabajar para poder generar un fichero patch:


C'est encore au bout d'un temps variable (surement le plus long de tous) au rang d'Amiral, et si la qualité des patch qui ont été envoyée est satisfaisante, qu'un Yoda vous signalera que vous êtes autorisé à réaliser des commits sans restrictions de fonctionnalités, à condition d'avoir cependant l'aval de principe d'un Maitre Yoda à qui vous aurez expliquer la fonctionnalité.
- Tener un directorio con la versión de referencia Dolibarr (resultante de la actualización desde GIT o bien el resultante de la descompresión de un snapshot tgz de Dolibarr). Llamaremos a este directorio '''viejo_rep'''. Puede recuperar el snapshot de la versión de desarrollo en curso en  [https://www.dolibarr.org/downloads/ web ofical de Dolibarr].
Il peut toutefois y avoir une restriction temporaire définie par un Yoda pour raison de release proche.
Vous êtes alors devenu un '''Jedi'''.


Ce titre ne se demande pas, il s'obtient par proposition d'un autre Jedi ou d'un Yoda.
- Tener otro directorio que contiene Dolibarr pero en la que realiza o ha realizado sus modificaciones. Llamará a este directorio '''nuevo_rep'''.


Ce privilège est toutefois exceptionnel. La qualité de Dolibarr ne pouvant être atteinte
para generar el fichero patch, deberá ejecutar el comando '''diff''' (estándard de Linux, en windows [https://www.cygwin.org/cygwin cygwin]) de la siguiente manera:
que par un nombre de Jedi contrôlé, ce qui n'empêche pas d'avoir un nombre de
<source lang="bash">
développeurs (Chasseurs) très important (grâce au système de patch).
diff -BNaur --exclude=CVS --exclude="*.patch" --exclude=".#*" --exclude="*~" --exclude="*.rej"
    --exclude="*.orig" --exclude="*.bak" --exclude=conf.php --exclude=documents 
    viejo_rep nuevo_rep  > mypatch.patch
</source>
En el directorio '''build/patch''' se encuentra disponible un script ksh que realiza este comando.
Envíe su parche a la Lista de Correo.
la integración de su parche no está garantizada, pero si el parche ha sido realizado siguiendo rigurosamente este procedimiento, tiene muchas posibilidades de que sea testeado (de otro modo las posibilidades estarán cercanas a 0).


''Bajo Windows:'' [[Image:Logo_windows.png|20px]]


* '''Yoda'''
Si trabaja bajo Windows, un ''método menos Pro'' pero que dá el mismo resultado es el siguiente: Instale la excelente utilidad open source de comparación Winmerge, que puede realizar parches en formato ''diff -Naur''. Para ello, compare con Winmerge el fichero de referencia y el modificado y escoja en el menú ''"Herramientas - Crear correción"'' (''Générer des retouches'' en la versión francesa). Indicar un nombre de fichero como ''"resultat.patch"'', Marcar la casilla ''"Añadir"'' y escojer la opción de estilo ''"Unificado"'' (''Style : unifié'' en la versión francesa). Haga clic en ''"Aceptar"''.
Repetir el proceso para cada fichero modificado.
Finalmente, obtendremos un bonito fichero que contiene todas las modificaciones en el formato correcto.


Au nombre de 1 à 5, être un '''Yoda''', c'est assurer la gestion globale du développement du projet. Ce rang s'obtient par succession, suite au départ d'un Yoda qui se retire, par nomination directe ou vote organisé par le Yoda partant.
''Testear/Aplicar un patch''
Para aplicar un archivo patch en una versión no modificada, con el fin de integrar las modificaciones contenidas en el archivo patch, puede usar la herramienta '''patch'''.
Imaginemos que tiene un directorio de fuentes de una versión no modificada de Dolibarr en un servidor. Para aplicar el patch, colóquelo en el direcotrio raíz de Dolibarr y lance el comando
<source lang="bash">
patch -u -p0 -d . < monfichier.patch
</source>
<nowiki>Información: -p0 permite utilizar la ruta completa tal como se indica dentro en el parche para encontrar los archivos a modificar (-pn retirando los n primeros niveles del árbol de directorios)
-d permite precisar la ruta relativa de la carpeta htdocs a parchear.
< permite indicar la ruta hacia el fichero fuente a utilizar (el patch en modo unificado)
-u permite precisar que el parche está en modo unificado</nowiki>


''Enviar un patch por mail''


Una vez el archivo del parche se ha creado y testeado correctamente, debe enviar el archivo a la lista de correo '''dolibarr-dev''' (Mire aquí para ello {{TemplateURLMLDev}}).


...Et Dark Vador alors ?
Esta lista de correo es leída por la mayoría de los desarrolladores de Dolibarr, sin embargo no podemos decir si el parche será procesado ni si se incluirá. Depende de la calidad del parche y las prioridades del momento.


Il existe. Dans la galaxie Dolibarr, on qualifie de Dark Vador, le parasite qui pollue le forum ou la mailing-list de messages ou critiques non constructives, qui ralentissent le développement de Dolibarr plutôt que d'offrir des critiques constructives qui aident à progresser. La mauvaise foie ou le mauvais ton est souvent de rigueur chez les Dark Vador...
= Cómo empaquetar/liberar un módulo =
Heureusement, statistiquement, on ne constate l'apparition et la mort que d'un seul Dark Vador par an environ...
Para ello consulte la página [[Desarrollo_de_un_módulo#Crear_un_paquete_para_liberar_e_instalar_tu_m.C3.B3dulo|Crear un paquete para liberar e instalar su módulo ]]


El proceso es igualmente válido para generar un fichero para www.dolistore.com.


Voir la page [[Le projet Dolibarr]] pour connaitre la liste des personnes à chaque grade actuellement.
=¿ Cómo estar informado de lo que sucede en Dolibarr ?=
Ver la página [[FAQ Cómo puedo estar informado de lo que sucede en Dolibarr ?]]
= Migrar mi base de datos de MySQL a PostgreSQL =
Vea la página [[FAQ_Migrar_mi_base_de_datos_MySQL_hacia_PostgreSQL]]

Latest revision as of 14:48, 19 January 2025

Esta página contiene algunas preguntas-respuestas en relación al desarrollo de Dolibarr. Para preguntas-respuestas sobre su uso, consulte la página FAQ Usuarios.

Cómo convertirse en desarrollador oficial

En la galaxia del proyecto Dolibarr, hay varias partes interesadas distribuidas en diferentes niveles o grados. El número de desarrolladores y las contribuciones son importantes y, cualquier proyecto que desee tener cierto nivel de calidad, debe de estar bajo una gestión controlada y de unas modificaciones validadas para su evolución, tanto en las necesidades funcionales como en su código. Por esta razón, el acceso en escritura a los fuentes (Servidor GIT) está limitado y regido por una organización que se describe en las líneas siguientes. Cada desarrollador tiene un grado que depende de su antigüedad y de sus contribuciones. El nivel de autorización de una persona en el proyecto aumenta con las etapas de promoción de grado.

El curso de un desarrollador Dolibarr pasa a través de estas etapas, que hemos clasificado como un título familiar para los adeptos a la ciencia ficción. Estas son las etapas. Es importante comprender que esta organización tiene el único propósito de mejorar la calidad de Dolibarr y que es necesario que se respete estrictamente a fin de lograrlo. Así que no se ofenda si, como desarrollador, no dispone de un acceso GIT en escritura, antes de un cierto plazo.

* Soldado

La primera cosa que una persona dispuesta a ayudar debe realizar es familiarizase con las reglas y normas de desarrollo.

Leyendo toda la Documentación Desarrolladores, demostrará tener voluntad suficiente para convertirse automáticamente en Soldado de la alianza Dolibarr (Su grado será un nivel de Soldado). La mayoría de los desarrolladores interesados en el desarrollo de Dolibarr se clasifican en esta categoría.

El grado siguiente consiste en enviar parches, empezando por los simples, a la Lista de Correo de desarrollo (ver FAQ Desarrolladores para el procedimiento), preferiblemente al foro (Lista de Correo preferida).

Puede encontrar las tareas en espera de parche en el gestor de tareas a realizar: https://github.com/Dolibarr/dolibarr/issues

Las tareas disponibles son las tareas que tienen la propiedad "Task opened to external developers" a "si". Si el valor es "no", olvídela, ya que será tratada por un desarrollador de grado Jedi.

El número de soldado no está limitado. Además, cuantos más tengamos, más fuertes seremos. Los soldados son la principal fuerza de la alianza Dolibarr.

Dada la naturaleza de este grado, no es posible establecer una lista de todos los interesados en el proyecto Dolibarr con este grado (lista en continua evolución y muy larga).

* Z-6PO

Si habla correctamente un idioma que no está presente o está mal traducido en Dolibarr y conoce GIT, use el sistema de push para publicar sus correcciones y ajustes. El equipo seguramente le añadirá a la página oficial de traductores (Category:Z-6PO) después de varios push

Si no conoce el sistema GIT, envíe sus correcciones sobre la última versión por e-mail a la lista de correo dolibarr-dev (Inscripción desde la página https://savannah.nongnu.org/mail/?group=dolibarr). Sin embargo, es preferible la primera solución basada en los push de GIT.

* Almirante

Sólamente después de un tiempo variable (que puede ser muy largo) en la categoría de Cazador, y si la calidad de los parches envíados son satisfactorios, un Yoda le ofrecerá acceso directo a GIT. Se habrá convertido en un Almirante de la alianza Dolibarr.

Este título no se pide, se obtiene por decisión o proposición de un Jedi ó Yoda que ha estimado que ha enviado suficientes parches como para ser un Almirante serio. El acceso a GIT de un Almirante debe de ser utilizado para confirmar traducciones, correcciones de bugs declarados (BUG Tracker https://github.com/Dolibarr/dolibarr/issues) o en el foro (tanto correcciones personales como parches enviados por un Cazador). Toda confirmación GIT debe incluir obligatoriamente en la descripción (el campo log de la confirmación), el número de bug de corregido o el título del mensaje del foro que indica el problema. Sólo una traducción escapa a esta limitación (no hay restricciones para las traducciones). El incumplimiento de esta limitación, puede dar lugar a la degradación a la categoría de Soldado.

la obtención del grado de Almirante es rara porque está limitada. La calidad de Dolibarr solamente puede ser mantenida con un número de Almirantes controlado, ello no implica el tener un número de desarrolladores (Cazadores) importante (gracias al sistema de parches)

Una lista de los colaboradores de Dolibarr con este grado se encuentra disponible en la página Category:Admiral

* Jedi

Después de un tiempo variable (probablemente el más largo de todos) como Almirante, y si la calidad de los parches enviados es satisfactoria, un Yoda le dirá que está autorizado para realizar confirmaciones de funcionalidades sin restricciones, a condición de la aprobación de un maestro Yoda al que explicará la funcionalidad a confirmar. Puede haber una restricción temporal definida por un Yoda debido a una próxima release cercana. Usted se convertirá en un Jedi.

Ese título no se pide, se obtiene de otro Jedi o de un Yoda.

Este privilegio, sin embargo, es excepcional. La calidad de Dolibarr solamente puede ser mantenida con un número de Jedis controlado, ello no implica el tener un número de desarrolladores (Cazadores) importante (gracias al sistema de parches)

Una lista de los colaboradores de Dolibarr con este grado se encuentra disponible en la página Category:Jedi

* Yoda

En un número de 1 a 5, los Yoda gestionan globalmente el desarrollo del proyecto. Este rango se obtiene por sucesión, a raíz de la salida de un Yoda que se retire por nominación directa o votación de los Yoda existentes

Una lista de los colaboradores de Dolibarr con este grado se encuentra disponible en la página Category:Yoda

* ¿ Y Darth Vader ?

Existe. Siempre habrán parásitos que contaminen el foro o lista de correo con mensajes o críticas no constructivas, que frenan el desarrollo de Dolibarr en lugar de ofrecer una crítica constructiva para ayudar a avanzar. Algunos son con bastante mala intención y mal tono. Son los que llamamos Darth Vader Afortunadamente, estadísticamente sólo hay constancia de la aparición y muerte de uno o dos Darth Vader por año...

El equipo actual

Ver la página Proyecto Dolibarr para obtener una lista actualizada de las personas que trabajan en cada categoría.

Iniciar el desarrollo

Consulte totalmente la Documentación Desarrolladores para asimilar todas las normas y principios exigidos a los desarrolladores. También puede consular los siguientes FAQ.

Recuperar/actualizar una versión de desarrollo

Ve la pagina Recuperar, actualizar GIT fuentes del proyecto.

Cómo crear un nuevo Tema

Para ello consulte la página Temas

Cómo desarrollar mi propio módulo

Para desarrollar su propio módulo de numeración, consulte Crear un módulo de numeración.

Para desarrollar su propio modelo de documento, PDF o otro, consulte Crear un modelo de documento PDF o Crear un modelo de documento ODT.

Para desarrollar un módulo funcional completo (pantallas, tablas), consulte Desarrollo de un módulo.

Cómo añadir o completar una traducción

Para ello consulte la página Documentación traductores

Cambiar mi sistema de numeración de las facturas en curso

Si el nuevo sistema de numeración no entra en conflicto con el antiguo, será suficiente con ir al menú Configuración - Módulos - Configuración facturas y escojer un nuevo modelo de la lista. Si el nuevo sistema entra en conflicto, será necesario renumerar las referencias existentes. Esto se puede realizar mediante una consulta SQL. Por ejemplo, para pasar de Jupiter (FYYYYMM99) a Terre (FAYYMM-999), puede ejecutar la siguiente consulta:

update llx_facture set facnumber=concat('FA',substr(facnumber,4,4),'-',substr(facnumber,8))
where facnumber like 'F%' and facnumber not like 'FA%';

Por ejemplo, para pasar de un modelo FAYYMM999 a Terre (FAYYMM-999), puede ejecutar la siguiente consulta:

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 '%-%';

Enviar un parche, mejora o participar en el desarrollo

Si busca como comenzar o ayudar en los desarrollos de Dolibarr, lea el capítulo FAQ Desarrolladores - Convertirse en desarrollador oficial. Si su parche ya está listo y desea distribuirlo, este capítulo es el indicado.

Con acceso GIT

A día de hoy, los accesos en escritura a GIT están restringidas (el número de confirmaciones és bastante dinámico). Si usted posee en la actualidad de un acceso en escritura GIT, utilícelo con la condición de que sus confirmaciones corresponden a su grado de desarrollador Dolibarr (Ver FAQ Desarrolladores - Convertirse en desarrollador oficial para los diferentes grados). Si no dispone de acceso a GIT (usted está en el grado de miembro o cazador de la alianza Dolibarr), deberá seguir el procedimento que sigue a continuación..

Sin acceso GIT

Sin acceso GIT en escritura, será necesario generar y enviar un parche a la Lista de Correo (Mailing List dolibarr-dev https://savannah.nongnu.org/mail/?group=dolibarr). A continuación le explicamos como generar un parche:

En todos los SO: Logo windows.png Logo ubuntu.png Logo apple.png

He aquí el método Pro de como trabajar para poder generar un fichero patch:

- Tener un directorio con la versión de referencia Dolibarr (resultante de la actualización desde GIT o bien el resultante de la descompresión de un snapshot tgz de Dolibarr). Llamaremos a este directorio viejo_rep. Puede recuperar el snapshot de la versión de desarrollo en curso en web ofical de Dolibarr.

- Tener otro directorio que contiene Dolibarr pero en la que realiza o ha realizado sus modificaciones. Llamará a este directorio nuevo_rep.

para generar el fichero patch, deberá ejecutar el comando diff (estándard de Linux, en windows cygwin) de la siguiente manera:

diff -BNaur --exclude=CVS --exclude="*.patch" --exclude=".#*" --exclude="*~" --exclude="*.rej"
     --exclude="*.orig" --exclude="*.bak" --exclude=conf.php --exclude=documents  
     viejo_rep nuevo_rep  > mypatch.patch

En el directorio build/patch se encuentra disponible un script ksh que realiza este comando. Envíe su parche a la Lista de Correo. la integración de su parche no está garantizada, pero si el parche ha sido realizado siguiendo rigurosamente este procedimiento, tiene muchas posibilidades de que sea testeado (de otro modo las posibilidades estarán cercanas a 0).

Bajo Windows: Logo windows.png

Si trabaja bajo Windows, un método menos Pro pero que dá el mismo resultado es el siguiente: Instale la excelente utilidad open source de comparación Winmerge, que puede realizar parches en formato diff -Naur. Para ello, compare con Winmerge el fichero de referencia y el modificado y escoja en el menú "Herramientas - Crear correción" (Générer des retouches en la versión francesa). Indicar un nombre de fichero como "resultat.patch", Marcar la casilla "Añadir" y escojer la opción de estilo "Unificado" (Style : unifié en la versión francesa). Haga clic en "Aceptar". Repetir el proceso para cada fichero modificado. Finalmente, obtendremos un bonito fichero que contiene todas las modificaciones en el formato correcto.

Testear/Aplicar un patch Para aplicar un archivo patch en una versión no modificada, con el fin de integrar las modificaciones contenidas en el archivo patch, puede usar la herramienta patch. Imaginemos que tiene un directorio de fuentes de una versión no modificada de Dolibarr en un servidor. Para aplicar el patch, colóquelo en el direcotrio raíz de Dolibarr y lance el comando

patch -u -p0 -d . < monfichier.patch

Información: -p0 permite utilizar la ruta completa tal como se indica dentro en el parche para encontrar los archivos a modificar (-pn retirando los n primeros niveles del árbol de directorios) -d permite precisar la ruta relativa de la carpeta htdocs a parchear. < permite indicar la ruta hacia el fichero fuente a utilizar (el patch en modo unificado) -u permite precisar que el parche está en modo unificado

Enviar un patch por mail

Una vez el archivo del parche se ha creado y testeado correctamente, debe enviar el archivo a la lista de correo dolibarr-dev (Mire aquí para ello https://savannah.nongnu.org/mail/?group=dolibarr).

Esta lista de correo es leída por la mayoría de los desarrolladores de Dolibarr, sin embargo no podemos decir si el parche será procesado ni si se incluirá. Depende de la calidad del parche y las prioridades del momento.

Cómo empaquetar/liberar un módulo

Para ello consulte la página Crear un paquete para liberar e instalar su módulo

El proceso es igualmente válido para generar un fichero para www.dolistore.com.

¿ Cómo estar informado de lo que sucede en Dolibarr ?

Ver la página FAQ Cómo puedo estar informado de lo que sucede en Dolibarr ?

Migrar mi base de datos de MySQL a PostgreSQL

Vea la página FAQ_Migrar_mi_base_de_datos_MySQL_hacia_PostgreSQL