dolibarr-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dolibarr-dev] Nouvelles du front. Dev passés et a venir.


From: Laurent Destailleur (Eldy)
Subject: [Dolibarr-dev] Nouvelles du front. Dev passés et a venir.
Date: Sat, 17 Sep 2005 21:19:11 +0200
User-agent: Mozilla Thunderbird 1.0.5 (Windows/20050711)


Etant qu'il y a pas mal de commit en ce moment, voici un aperçu des modifs faites récemment et des chantiers que je vais entammer ces jours ci :

Pensez à repasser le script de migration pour mettre à jour le modèle physique.


Ce qui a été fait :
*************

- Ajout d'un module bookmark .Ce module permet de recenser sur un écran d'administration les raccourcis Dolibarr (pour les editer, supprimer) mais permet de plus, d'ajouter des bookmarks sur des pages extérieures. Cela permet ainsi, grace à la box "amené" par ce module d'avoir sous la main, en home Dolibarr, des raccourcis vers des applis extérieurs par exemple.

- Déplacement du code d'interfacage webcalendar dans le trigger webcalendar. Le code qui était inclus dans Dolibarr pour que les actions Dolibarr soit recopiée dans le calendrier webcalendar a été déplacé dans le trigger triggers/interface_webcal.class.php. Ainsi, en cas de modification de webcal, il n'y a qu'un seul fichier à mettre à jour. Il est de plus ainsi possible de remplacer webcal par un autre systeme d'agenda (comme Notes), il suffit de créer son propre trigger. Et si on veut mettre a jour 2 base calendriers, pas de pb, il n'y a pas de limite sur le nombre de trigger. Le trigger webcal est le premier exemple fourni en standard de cette fonctionnalité permettant d'interfacer Dolibarr à une autre systeme. J'espère que cela va donner des idées à d'autres et que beaucoup de contributions serons faites sur ce modèle pour permettre à Dolibarr de piloter d'autres applis (dotproject ?, gnucah ?, etc...)

- Test PHP5. Quelques modifs mineurs pour passer correctement en PHP5 (a par le module adherent qui a requis une mise a jour de la libraire XML-RPC, pas de point bloquant). Dolibarr, dans sa version CVS actuel semble fonctionner pleinnement en PHP5.

- Mise a jour librairie embarquées MagpierRSS (pour le module externalrss) et PHPPlot (utilisé par les graphiques). J'ai inclus la possibilité de forcer le path des librairie (pour permettre d'utiliser d'autres versions que les librairies embarquées). Pour cela, il suffit de définir dans Dolibarr les constantes suivantes:
FPDF_PATH    pour FPDF
PEAR_PATH    pour PEAR
PHP_WRITEEXCEL_PATH pour PHP_WRITEEXCEL
PHPLOT_PATH            pour PHPLOT
MAGPIERSS_PATH        pour MAGPIERSS
JPGRAPH_PATH            pour    JPGRAPH

- Internationnalisation des caractéristiques des sociétés en fonction du pays. Une société n'a pas les meme identifiant selon sa nationalité. Au portugal, il y a le "NIPC", en France le "siret", "siren", "code naf", en Belgique le "numéro professionel", en Angleterre le "SIC" et "Registration Number". Ces caractéristiques dépendent du pays de la société et non de la langue de l'utilisateur. J'étais parti sur une option pour saisir les société "en 2 temps" mais finalement, j'ai supprimé cela (pas joli). Finalement, j'ai remis un systeme ou la société est crée en une page, mais le choix du pays apparait avant les caractéristiques dépendantes et les listes de choix ainsi que les libellés des champs sont mis a jour en fonction du pays alors choisi (liste des formes juridiques, libellé des id professionnel). Par contre, cela a nécessité l'ajout d'un petit bout de javascript mais cela offre vraiment une convivialité de saisie bien meilleur. Comme cela rond avec la norme de développement, je vais ajouter une option globale pour permettre la "désactivation du javascript". Reste à choisir si je met cette option a on ou true par défaut.

- Rapprochement des comptes bancaires.
Ayant un compte bancaire ou toute transaction est uniquement électronique, je ne fais pas de rapprochement sur ce compte. J'ai donc ajouté une caractéristique aux comptes financiers qui est "Désactiver les rapprochement pour ce compte". Par défaut, cette option n'est pas active mais si on la valide pour un compte particulier, les fonctions de rapprochement sont alors supprimées des écrans (comme si le compte était à l'état clos). De plus les indicateurs dolibarr n'inclus pas le compte dans le comptage des rapprochements en retard

- Une question avait été soulevé sur la regle de gestion du taux de tva d'une ligne pour un produit lors d'une ventre frontaliere. Je me suis renseigné, j'ai pas encore la régle complète (elle depend de pas mal de facteurs) mais la regle de gestion des premiers
éléments que j'ai semble etre celle déja fourni sur cette liste à savoir :

Si le (pays vendeur = pays client) OU (client n'a pas de numéro TVA Intacommunautaire) alors la TVA est celle du produit vendu, sinon la TVA est 0.

Il y a cependant de nombreuses exceptions dont l'ensemble m'amène à la conclusion, le taux de TVA doit rester libre à la saisie. La régle ci-dessus ne doit etre utilisée que pour définir le taux par défaut mais ne pas l'imposer. En effet, quand on tombre dans une de ces exceptions, l'utilisateur sait quel taux appliquer (propre à son cas qu'il connait) et peux ainsi le changer lui meme. Ainsi, j'ai mis la saisie du taux de tva en editable, y compris pour les lignes de produits prédéfinis.


- Gestion des contacts et types de contacts.
Une gestion des contacts génériques a été mise en place sur les contrats. On peut ainsi, pour un contrat donné, définir une liste de contacts internes (utilisateurs Dolibarr) et externes (contacts des sociétés). Le nombre de contacts n'est pas limité et chaque contact peut avoir un type (contact facturation, signature, suivi, contact expert technique, contact juridique, etccc.). La liste des types de contacts est éditable depuis le dictionnaire et n'est pas limité non plus. Cela, je pense remplace, avantageusement les notions figées existante et pas complètement gérées. Cela permet aussi d'offrir un niveau supplémentaire de gestion. Par exemple, on peut "désactiver" (sans supprimer afin de garder l'historique) un contact de facturation parcequ'il a été remplacé par quelqu'un d'autre chez votre client. Pour l'instant ce systeme n'est dispo que pour les contrats mais il a été fait pour etre générique et peux s'appliquer aux autres éléments de Dolibarr (commandes, factures, propals). Il suffit de recopier l'onglet "Contacts contrat" sur chaque élément pour avoir une gestion identique.

- La traduction de Dolibarr avance bien, je la considère même terminée. Les écrans mais aussi données du dictionnaires sont ainsi multilangues (pour les modules principaux). Si vous utilisez l'anglais et que vous voyez des zones ou fonctionnalitées non traduites, vous pouvez me le signaler. Pour les autres langues, les fichiers sont à traduire. Je prévois de faire un module Dolibarr offfrant un outil pour voir les chaines de traduction manquantes à traduire d'une langue donnée, afin de booster l'arrivée des traduction (il y a déjà un début de portugais, et hollandais).

- J'ai passé en revue les portions de code qui envoie des mails et je les ai modifié pour que toutes utilise la class CMailFile (cette dernière est plus abouti que DolibarrMail, a une meilleure gestion d'erreur et offre des fonctions en plus). Je laisse toutefois la classe DolibarrMail car elle est utilisée dans le module telephonie.


Ce qui est au programme :
********************

J'ai pas de priorité sur ces taches mais j'y pense :

- Option pour désactiver le code javascript (navigateurs texte)

- Autre point: La gestion de la tva "récupéré mais non facturé au client". La j'attend également des éléments de la part de relation qui doivent me dire comment ca se gère.

- Un module de traduction.

- Un gestionnaire d'accès de base qui utilise les fonctions mysqli (plus rapide) et des connexions persistences plutot que les fonctions mysql. Il faudrait choisir en tre ce module ou l'actuel (l'actuel doit etre conservé car les fonctions mysqli ne fonctionne pas avec tous les php/mysql).



Mes 2 chantiers d'avenir proche, qui eux sont dans mes priorités, sont les suivants :

- Je commence à en avoir fortement besoin de gérer un lien entre les contrats de services et les factures (sur le meme principe que les commandes). Cela me permettra de suivre les services expirés à refacturer pour renouvellement (cas classique dans mon activité d'hébergement) et de relancer les factures pour tous les services non facturés et désactiver ceux pour lesquels les factures ne sont pas payées malgrè les relances.

- J'ai commencé un outil générique d'export des données Dolibarr. L'idée est d'avoir un outil commun à Dolibarr et que chaque module "amène" avec lui les "vues" sur les données exportables mais aussi les permissions qui permettent de les exporter. Exemple: Le module adherent amène une vue sur la "liste des adhérents et leur carac", et une vue sur la "liste des cotisations".
Ainsi on développe un outils mais tout module en profite.


Mon chantier d'avenir lointain :

- Un module de comptabilité expert qui serait alimenté par les evenements Dolibarr et qui réaliserait de la vrai comptabilité générale et analytique et produisant les états réglementaires comptables (déclaration TVA, grand livre, bilans...). J'ai déjà commencé le chantier mais c'est du long terme. Je mise sur cette focntion pour faire de Dolibarr une "application killer" !


Voila, j'arrete la prose, si y a des remarques ou questions ou contre-indications à ces dev, je suis preneur...



PS 1: A partir de novembre, je change de boulot, aussi ne serait-plus aussi disponible pour avancer Dolibarr (on verra), mais je vais profiter des semaines qui viennent pour avancer au maximum.


PS 2: La question à 1 million:  A quand la release de la 2.0 ?

--
Laurent Destailleur.
---------------------------------------------------------------
EMail: address@hidden
Web: http://destailleur.fr
IM: IRC=Eldy, Jabber=Eldy

AWStats (Author) : http://awstats.sourceforge.net
Dolibarr (Contributor) : http//dolibarr.com
CVSChangeLogBuilder (Author) : http://cvschangelogb.sourceforge.net
AWBot (Author) : http://awbot.sourceforge.net





reply via email to

[Prev in Thread] Current Thread [Next in Thread]