Markdown |
---|
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
This project uses [*towncrier*](https://towncrier.readthedocs.io/) and the changes for the upcoming release can be found in <https://github.com/twisted/my-project/tree/main/changelog.d/>.
<!-- towncrier release notes start -->
## [1.0.0](https://github.com/twisted/my-project/tree/1.0.0) - 2022-09-28
### Security
- Fixed a security issue! ([#6](https://github.com/twisted/my-project/issues/6), [#7](https://github.com/twisted/my-project/issues/7))
### Removed
- Removed a square feature! ([#4](https://github.com/twisted/my-project/issues/4))
### Deprecated
- Deprecated a module! ([#3](https://github.com/twisted/my-project/issues/3))
### Added
- Added a cool feature! ([#1](https://github.com/twisted/my-project/issues/1))
### Changed
- Changed a behavior! ([#2](https://github.com/twisted/my-project/issues/2))
### Fixed
- Fixed a bug! ([#5](https://github.com/twisted/my-project/issues/5))
- A fix without an issue number! |
Master
...
Changelog
...
Numéro de ticket
...
Intitulé
...
Valeur id de groupe manquante lors de la création d'un flashMessage ayant plusieurs destinations.
...
...
FO : Messages flash multi-destinataire - champ de groupement non renseigné
...
Suppression des gammes d'opérations lors de la suppression d'un équipement.
...
7914
...
Suppression des gammes d'opérations lors de la suppression d'un équipement (Helpdesk 4390)
...
Volumétrie : 575000
Temps avant : timeout (> 30s)
Temps actuel : 1 sec
Optimisations :
Nouvel index : baseuserSpeedIdx5 (teamtype_ID)
Nouvel index : planningSpeedIdx7 (resource_ID)
Modification index : interventionSpeedIdx2 (generictype_ID_status, startDate, endDate)
FuncServer_UpdateInterventionsStatus :
Ajout de gStatus.dataType = 'INTERVENTION_STATUS' dans le LEFT JOIN gStatus interne (et conversion en INNER JOIN)
Ajout de (gStatus.tag IS NULL OR (gStatus.tag != 'CLOSED' AND NOT gStatus.tag LIKE 'CLOSED|%')) dans le WHERE interne
FuncServer_SendInterventionsReport :
Précalcul de minDate pour économiser la jointure sur basevariable
...
4370
...
Optimisations du script serveur de gestion du status d'intervention
Backoffice
Changelog
Numéro de ticket
Intitulé
Lors de la création de la demande d'intervention, certains champs n'étaient pas remplis automatiquement.
4807
Soucis de pré-chargement des infos du contact lors de la création d'une demande
Modification du type de retour false qui provoquait une l'erreur
Problème de type de retour de fonction (Helpdesk 1976)
Lors d'une planification, le collaborateur n'était pas été désigné comme technicien réfèrent.
Il n'était plus possible de modifier une planification depuis la popup
Un Endif manquant a été détecté dans le SwingScript Func_InsertPlanningList_ParseForEach_PlanningTeam.
Problème de planification dans le BO qui plante
Suppression du baseuser_ID lors de la mise à jour d'un rapport de visite dans le trigger visitreport.triggers.triggerUpdateVisitReport.
Cette valeur étant utilisée pour indiquer quel utilisateur a créé le rapport de visite, une modification entrainait le changement de créateur.
Problème de modification d un rapport
Suppression des sous-traitants dans la liste des utilisateurs non affectés de la structure commerciale
Liste des fournisseurs extranet dans la structure Commerciale
La modification d'un contrat n'était plus possible
WEAVY : impossible de modifier les contrats
Certaines pages et certains composants liés au retour équipement n'était pas conditionnés correctement.
Ajout des conditions manquantes afin de rendre l'affichage plus cohérent
Retour équipement actif dans la fiche société avec variable à false
Le référent technique était dupliqué lors de l'ajout d'un membre.
Planification BO - pas de technicien référent à la duplication d'une planification
Optimisation des recherches sur l'agent via un filtre SqlExpression au lieu de la jointure puis GROUP BY actuel
Pages impactées :
actionPlanCustomer : 97 ms
actionPlanCustomer.id : 5 ms
externalUserDataAccess.customerSelection : 499 ms
customerContact.singleSelection.full : 14 ms
customerTrace.new : 1197 ms
customer.singleSelection.full : 827 ms
customer : 879 ms
customer.searchSubcontractor : 330 ms
customer.simplesearch : 761 ms
customerMap : 10119 ms
expense : 1399 ms
expense.export : 10 ms
round.id.addCustomer : 532 ms
saleOrder.header.new : 835 ms
planningCustomer : 22 ms
baseuser : 8 ms
directory : 18 ms
3728
Implémenter les filtres SqlExpression sur les filtres d'agent
Optimisation de la requête de récupération des interventions urgentes et à valider sur la barre de notification
Volumétrie : 2m5
Gain : timeout précédemment
Temps actuel :
statTurnoverCustomer.year.grid : 22542 ms
statTurnoverCustomer.year.graph : 15427 ms
statTurnoverCustomer.grid : 13 ms
Optimisations : Refactorisation requête
4226
Barre de notification technicien
Volumétrie : 579
Gain : 100%
Temps actuel : 8ms
Optimisations : Refactorisation requête
4120
Grid baseuser
Volumétrie : 579
Gain : 20%
Temps actuel : 18ms
Optimisations : Refactorisation requête de l'annuaire des utilisateurs
4119
Version | Date de sortie | Durée de maintenance |
---|---|---|
6.1 RC3 | 29/04/2024 | 3 ans à partir de la sortie de la RELEASE (Voir le tableau de maintenance) |
Master
Changelog | Numéro de ticket | Intitulé |
---|---|---|
Valeur id de groupe manquante lors de la création d'un flashMessage ayant plusieurs destinations. | FO : Messages flash multidestinataire - champ de groupement non renseigné | |
Suppression des gammes d'opérations lors de la suppression d'un équipement. | 7914 | Suppression des gammes d'opérations lors de la suppression d'un équipement (Helpdesk 4390) |
WebService :
Webhhok "Intervention Request" :
| 3333 | Ajouter Tiers à facturer dans la demande pour génération du devis (Webservices, Webhook) |
Performances
FuncServer_UpdateInterventionsStatus :
FuncServer_SendInterventionsReport :
| 4370 | Optimisations du script serveur de gestion du statut d'intervention |
Backoffice
Changelog | Numéro de ticket | Intitulé |
---|---|---|
Lors de la création de la demande d'intervention, certains champs n'étaient pas remplis automatiquement. | 4807 | Soucis de pré-chargement des infos du contact lors de la création d'une demande |
Modification du type de retour false qui provoquait une l'erreur | Problème de type de retour de fonction (Helpdesk 1976) | |
| Problème de planification dans le BO qui plante | |
| Problème de modification d'un rapport | |
Suppression des sous-traitants dans la liste des utilisateurs non affectés de la structure commerciale | Liste des fournisseurs extranet dans la structure Commerciale | |
La modification d'un contrat n'était plus possible | WEAVY : impossible de modifier les contrats | |
Certaines pages et certains composants liés au retour équipement n'était pas conditionnés correctement. | Retour équipement actif dans la fiche société avec variable à false | |
Exclusion des sous-traitants dans la grid et pendant la vérification des groupes. | 6887 | Le calcul des groupes |
Performances page Tâches (..../page/taskManagerV2;mode=2-> Onglet "Toutes les tâches")
Volumétrie : 1000000
Gain : non mesurable car en timeout avant
Temps actuel : 53ms
Optimisations :
Ajout d'un index : taskSpeedIdx11 (dueDate)
Modification de l'index taskSpeedIdx6: ajout du startDate
Changement du tri sur les grilles: Tri par date d'échéance
Affichage des tâches dans le kanban sur l'année glissante
2447
Base de référence de performance - Tâches
Performances page Relance de devis :
Suivi (..../page/quotationDunning)
Analyse des devis (..../page/quotationAnalysis)
Analyse des devis refusés (..../page/quotationRefusalAnalysis)
Volumétrie : 1044000
Gain : non mesurable car en timeout avant
Temps actuel : 513ms
Optimisations :
Ajout des index :
orderheaderSpeedIdx3 (generictype_ID_followUpStatus, confreport_ID, baseuser_ID, customer_ID, customerOrderNumber, orderDate)
orderheaderSpeedIdx4 (confreport_ID, baseuser_ID, customer_ID, customerOrderNumber, orderDate)
Refactorisation des requêtes comportant des GROUP BY
Utilisation du SQL_CACHE sur les metrics
3597
Base de référence de performance - Relance de devis
Utilisation de la variable MasterInfinity. Seul l'administrateur partenaire à tous les droits.
5368
Restictions infinity - Mettre en place une condition d'activation de restriction
Prise en compte du tiers à facturer :
Web :
Nouvelle demande
Consulter demande
Nouvelle intervention depuis une demande
WebService :
Génération du devis travaux
Le tiers du devis travaux devient le tiers facturé
Webhhok "Intervention Request" :
Get en ExtendedRelated : ajout customer_billed
Règles :
customer_ID_billed cannot be filled if customeraddress_ID is empty
customer_ID_billed is not a customer billed of this customeraddress_ID
3333
Ajouter Tiers à facturer dans la demande pour génération du devis (Web, Webservices, Webhook)
Les tiers facturés n'étaient pas affichés quand on déroulait la combo
Rafraichissement du Tiers facturé si changement de site
6108
Contrat - Définition d'intervention
prend en compte les sous-traitants | ||
Prise en compte du tiers à facturer pour :
| 3333 | Ajouter Tiers à facturer dans la demande |
Les tiers facturés n'étaient pas affichés quand on déroulait la combo | 6108 | Contrat - Définition d'intervention |
Filtre combobox au lieu de texte libre | 6992 | Filtre agence en construction d'équipes dynamiques |
Performances Optimisation des recherches sur l'agent via un filtre SqlExpression au lieu de la jointure puis GROUP BY actuel Pages impactées :
| 3728 | Implémenter les filtres SqlExpression sur les filtres d'agent |
Performances Optimisation de la requête de récupération des interventions urgentes et à valider sur la barre de notification
| 4226 | Base de référence de performance - Barre de notification technicien |
Performances page Collaborateurs (…/page/baseUser)
| 4120 | Base de référence de performance - Collaborateurs |
Performances page Annuaire (…/entity/baseuserDirectory)
| 4119 | Base de référence de performance - Annuaire |
Performances page Tâches (..../page/ |
taskManagerV2;mode=2-> Onglet " |
Toutes les tâches")
|
|
Optimisations :
Suppression filtre "Collaborateurs" redondant avec filtre "Dépôt"
Refactorisation requête
| 2447 | Base de référence de performance - |
Tâches |
Performances |
pages Relance de devis Suivi (..../page/quotationDunning) |
quotationRefusalAnalysis)
|
|
|
Optimisations :
Suppression filtre "Collaborateurs" redondant avec filtre "Dépôt"
Refactorisation requête
| 3597 | Base de référence de performance - |
Relance de devis |
Performances page |
Stock (..../page/stock -> Onglet " |
Stock")
|
|
Temps actuel : 26 sec
Optimisations :
Suppression filtre "Collaborateurs" redondant avec filtre "Dépôt"
Refactorisation requête
Nouvel index productstockmovementSpeedIdx2 (dateMovement, productdepot_ID, product_ID)
Modification index productstockmovementSpeedIdx1 (productdepot_ID, product_ID, dateMovement)
Filtre "Date de début" initialisé à Date du jour - 1 mois
| 3047 | Base de référence de performance - |
Stock |
Performances page Détails |
stock (..../page/stock -> Onglet " |
Détail stock")
|
|
|
|
|
Filtre "Date de début" initialisé à Date du jour - 1 mois
On profite du nouvel index productstockmovementSpeedIdx2
3187 | Base de référence de performance - Détails |
stock |
Performances page |
Mouvements de stock (..../page/stock -> Onglet " |
Mouvements")
|
|
|
|
|
Refactorisation requête
3605
Base de référence de performance - Bons de transfert
Performances page Evénements tiers (..../page/customerTrace)
Volumétrie : 1 128 662
Gain : pas de gain significatif
Temps actuel : 14,6 sec
Optimisations :
Refactorisation requête
| 3320 | Base de référence de performance - |
Mouvements |
Performances page |
Détails des mouvements de |
stock (..../page/ |
stock -> |
Onglet "Détails mouvements")
|
|
|
Optimisations :
Refactorisation requête
Amélioration jointures
| 3321 | Base de référence de performance - Détails mouvements |
Performances page Stock (..../page/ |
stock -> |
Onglet "Bons de transfert")
|
|
|
|
Amélioration jointures
| 3605 | Base de référence de performance - Bons de transfert |
Performances page Evénements tiers (..../page/ |
customerTrace)
|
|
|
|
|
|
4129 | Base de référence de performance - Evénements tiers |
Performances page Feuilles de temps |
Mise en place de restictions d'ajout, modification, suppression
5373
Restrictions infinity - Paramétrage des types d'interventions
Mise en place de restictions d'ajout, modification, suppression
5374
Restrictions infinity - Paramétrage des types de contrats
Mise en place de restictions d'ajout, modification, suppression
5375
Restrictions infinity - Paramétrage des codes activités
Mise en place de restictions d'ajout, modification, suppression
5376
Restrictions infinity - Paramétrage des types de garanties
Mise en place de restictions d'ajout, modification, suppression
5378
Restrictions infinity - Paramétrage des types d'opportunités et des étapes d'opportunités
Mise en place de restictions d'ajout, modification, suppression
5379
Restrictions infinity - Paramétrage des types d'affaires et des étapes affaires
(..../page/timeSheet -> Suivi)
Performances page Feuilles de temps (..../page/timeSheet -> Analyse)
Performances page Feuilles de temps (..../page/timeSheet -> Synthèse)
| 4137 | Base de référence de performance - Feuilles de temps |
Performances page Intervention (..../page/intervention)
|
|
Temps actuel : 68ms
| 2444 | Base de référence de performance - Interventions |
Performances page Site (..../page/site)
|
interventionSpeedIdx8 (CreatDate)2444
| 4134 | Base de référence de performance - |
Sites |
Performances page |
Contacts (..../page/ |
customerContact)
|
|
|
|
|
Ajout d'un STRAIGHT_JOIN4134
| 2843 | Base de référence de performance - |
Contacts |
Performances page |
Equipements (..../page/ |
equipments)
|
|
|
Optimisations : 1,9 s
Suppression du GROUP BY
Refactorisation de la clause FROM
Refactorisation de la partie de la requête associé aux relations2843
| 2006 | Base de référence de performance - |
Équipements |
Performances page |
Historique (..../page/ |
saleHistory)
|
|
|
Optimisations :
Suppression du GROUP BY2006
| 4133 | Base de référence de performance - |
Historique pièces commerciales |
Performances page |
Planification (..../page/ |
planningIntervention -> Onglet "Liste")
|
|
|
|
|
| 4139 | Base de référence de performance - |
Liste de planifications |
Performances page |
Pièces commerciales (..../page/saleOrder.toManage et ..../page/ |
Volumétrie : 570 000
Gain : 95
saleOrder.draft)
|
Optimisations :
Conversion du LEFT JOIN en INNER JOIN sur intervention
|
|
|
3173 | Base de référence de performance - |
Pièces commerciales |
Performances page |
Planification (..../page/ |
planningIntervention -> Onglet "Planning", Puits d'interventions)
|
|
|
|
|
Gain (saleOrder.draft) : 99 %
Temps actuel (saleOrder.draft) : 70ms
Optimisations :
Nouvel index : orderheaderSpeedIdx5 (srvExport)
Nouvel index : orderheaderSpeedIdx6 (draftBO)
Transformation de la jointure de status contenant une sous-requête
INNER sur confreport
Déplacement des INNER juste après le FROM
Modification du filtre sur CodeConfreport pour éviter un OR
Ajout d'une STRAIGHT_JOIN général
3173
Base de référence de performance - Pièces commerciales
Performances page Planification (..../page/planningIntervention -> Onglet "Planning", Puits d'interventions)
Volumétrie : 576 000
Gain : 99 %
Temps actuel : 70ms
Optimisations :
Nouvel index : interventionSpeedIdx8 (creatDate [champ système])
Regroupement des INNER JOIN juste après le FROM
4138
Base de référence de performance - Puits d'interventions
| 4138 | Base de référence de performance - Puits d'interventions |
Utilisation de la variable MasterInfinity. Seul l'administrateur partenaire à tous les droits. | 5368 | Restrictions infinity - Mettre en place une condition d'activation de restriction |
Mise en place de restrictions d'ajout, modification, suppression | 5373 | Restrictions infinity - Paramétrage des types d'interventions |
Mise en place de restrictions d'ajout, modification, suppression | 5374 | Restrictions infinity - Paramétrage des types de contrats |
Mise en place de restrictions d'ajout, modification, suppression | 5375 | Restrictions infinity - Paramétrage des codes activités |
Mise en place de restrictions d'ajout, modification, suppression | 5376 | Restrictions infinity - Paramétrage des types de garanties |
Mise en place de restrictions d'ajout, modification, suppression | 5378 | Restrictions infinity - Paramétrage des types d'opportunités et des étapes d'opportunités |
Mise en place de restrictions d'ajout, modification, suppression | 5379 | Restrictions infinity - Paramétrage des types d'affaires et des étapes affaires |
Mise en place de restrictions de modification | 5369 | Restrictions infinity - Fiche Société |
Mise en place de |
restrictions d'ajout, modification, suppression | 5370 | Restrictions infinity - Fiche agence |
Mise en place de |
restrictions d'ajout, modification, suppression | 5371 | Restrictions infinity - Paramétrage genres équipements |
Mise en place de |
restrictions d'ajout, modification, suppression | 5372 | Restrictions infinity - Paramétrage types équipements |
Mise en place de |
restrictions d'ajout, modification, suppression | 5380 | Restrictions infinity - Paramétrage des familles d'articles |
Mise en place de |
restrictions d'ajout, modification, suppression | 5381 | Restrictions infinity - Fiche collaborateur |
Mise en place de |
restrictions d'ajout, modification, suppression | 5382 | Restrictions infinity - Fiche article |
Mise en place de |
restrictions d'ajout, modification, suppression | 5383 | Restrictions infinity - Fiche KIT d'article |
Mise en place de |
restrictions d'ajout, modification, suppression | 6991 | Restrictions infinity - Rendre impossible la création de dépôt |
Filtre combobox au lieu de texte libre
6992