Difference between revisions of "GIFF - Facture de situation 2022"
Eric.seigne (talk | contribs) |
(→Outils de travail :: Mise à jour des dépots) |
||
Line 59: | Line 59: | ||
*Forum : https://www.dolibarr.fr/forum/t/gif-facture-de-situation/41868 | *Forum : https://www.dolibarr.fr/forum/t/gif-facture-de-situation/41868 | ||
− | *Wiki : | + | *Wiki : [[GIF - Facture de situation 2022]] |
*Plateforme de financement : à remplir | *Plateforme de financement : à remplir | ||
− | *Intervenants et rôles : | + | *Intervenants et rôles : Anthony, Sylvain, Laurent, Olivier, Alexandre, Aurelien, Eric, Julien, |
*Choix du porteur de projet pour les outils : [https://github.com/users/progiseize/projects/1 Projet Github] | *Choix du porteur de projet pour les outils : [https://github.com/users/progiseize/projects/1 Projet Github] | ||
+ | *Facture_situation_migration : https://github.com/progiseize/facture_situation_migration | ||
+ | *Dolibarr_situations : https://github.com/progiseize/dolibarr-situations | ||
*Channel sur Discord : à remplir | *Channel sur Discord : à remplir | ||
Revision as of 14:29, 28 February 2023
Présentation du sujet pour ce GIF :
Amélioration des factures de situation
Détail du problème actuel des factures de situations.
Problème 1 - La TVA
Exemple d'une prestation de service proposée (devis) à 2500€ HT. Cette prestation sera faite en 3 fois, chaque étape donne lieux à une facture de situation notées S1, S2 et S3.
- S1 : 25% réalisé, facture de 625€ HT, TVA collectée 125€
- S2 : progression totale de 50%, donc facture de 625€ HT, TVA collectée 125€
- S3 : progression totale de 100%, donc facture de 1250€ HT, TVA collectée 250€
- Total de la TVA collectée = 500€
L'implémentation actuelle (version dolibarr 16.0.3) se présente comme ceci:
- Affichage OK dans le détail des factures (voir capture "Situation S3")
- Affichage OK sur les listes des factures et affichage des totaux corrects
- Mais erreur lors du calcul de la TVA (voir les 2 captures suivantes) : Total TVA collectée : 875€
Problème 2 - Les boites "objets référents"
Nouvelle simulation, avec des produits ou services de la base article de dolibarr. Le pb se pose lorsque vous allez consulter la fiche d'un article qui se trouve sur des factures de situations.
Vous pouvez voir sur la dernière capture d'écran que les stats liées au service MOA sont fausses: elles font croire que ce produit a généré 10k€ de CA.
Ce qui marche bien :)
Car pour celles / ceux qui utilisent les factures de situations l'implémentation actuelle permet tout de même de faire de grandes choses ! Il est donc important de noter ce qui marche - ça permet aussi de confronter éventuellement des croyances ("chez moi ça marche") avec la réalité ...
- L'export de données en passant par l'assistant export (utilisé pour générer des tableaux de bords par la consolidation de données avec des outils externes)
- Lot de données à exporter: Factures clients et règlements
- Champs à exporter: Code client, Réf. facture, Total HT, Date facturation
- -> le fichier exporté permet de faire un total des factures qui correspond à la réalité
- La liste des factures, le total indiqué en bas de page est correct
- .../...
Outils de travail :
- Forum : https://www.dolibarr.fr/forum/t/gif-facture-de-situation/41868
- Wiki : GIF - Facture de situation 2022
- Plateforme de financement : à remplir
- Intervenants et rôles : Anthony, Sylvain, Laurent, Olivier, Alexandre, Aurelien, Eric, Julien,
- Choix du porteur de projet pour les outils : Projet Github
- Facture_situation_migration : https://github.com/progiseize/facture_situation_migration
- Dolibarr_situations : https://github.com/progiseize/dolibarr-situations
- Channel sur Discord : à remplir
Etapes prévues pour ce POC
Etape -1 - Documentation technique de la solution actuelle
Quelques informations histoire de savoir de quoi nous parlons ...
- dans la table table llx_facture
- situation_cycle_ref : le numéro global de cycle des factures de situations, si 100 séries de factures de situations ont déjà été gérés alors le cycle en cours sera 101
- situation_counter : le numéro dans le cycle en cours (1 pour S1, 2 pour S2, 3 pour S3...)
- dans la table llx_facturedet
- situation_percent: stocke le % de progression global de la ligne
- fk_prev_id: est une clé étrangère vers llx_facturedet.rowid de la même "ligne de facture" sur la facture précédente (c'est ainsi qu'on peut calculer la "progression" entre deux factures)
Etape 0 - Définition du modèle de données
-Ajout des données dans la table des factures et/ou des lignes. Validation de ces modifications par soumissions d'une PR avec les changements sur la base de données si il y en a.
Etape 1 - Fonction migration des données dans le nouveau modèle de données
-Migration des données (si possible)
-Génération du pdf sur la base des nouvelles données
Consignes
Le nouveau code devra être conditionné par getDolGlobalInt('INVOICE_USE_SITUATION') == 2 (on conserve la valeur 1 utilisé pour l'ancien mode de fonctionnement).