Erreur sur les dates d'activation de contrats

Bonjour,

Nous avons un petit souci avec notre installation Dolibarr depuis quelques temps (après une mise à jour il y’a quelques mois) et qui perdure malgré les mises à jour qui sont faites de façon régulière.

Nous avons un système de « contrats » qui nous permet de renouveler mensuellement les services que nous proposons à nos clients.

Depuis quelques mois, la date de début d’activation (le premier jour du mois) n’est pas prise en compte sur les factures que l’on édite, il prend obligatoirement la date de mise en service prévue (celle de la toute première création de la ligne du contrat donc), dans le code : date_ouverture_prevue au lieu de date_ouverture …

Cela est problématique car certains clients nous disent qu’ils ne comprennent pas nos factures car elles sont mensuelles mais il y’a une date parfois 3 ans en arrière en date de début …

A priori nous avons remarqué également que ce bug ne se produit pas pour tous les clients, pour certains c’est la date du jour qui se met automatiquement en date de début et nous n’avons qu’à saisir la date de fin, et là tout se passe bien …

Je n’ai qu’une erreur dans les logs (qui s’affiche quand on on lit le détail d’un contrat) :

2019-04-01 08:39:30 ERR IP_ADDRESS Functions.lib::dol_print_date function call with deprecated value of time in page /contrat/card.php

Je ne sais pas si quelqu’un peut m’aider sur ce souci mais ça me serait très utile !

Merci à vous

Je m’auto-réponds pour vous donner une solution que j’ai trouvé …

C’est un peu crade mais ça fonctionne :

J’ai remarqué dans la base que pour les lignes de contrat sur lesquelles nous n’avions pas de soucis le champ « date_ouverture_prevue » dans la base de données était à NULL.

J’ai donc fait sur la base de données un gros :

UPDATE `llx_contratdet` SET `date_ouverture_prevue` = NULL;

Du coup toutes les lignes sont passées à NULL et la date du jour de renouvellement est bien prise en compte partout.

Voilà, si ça peut aider d’autres personnes :wink:

A bientôt