Lorsque l'on nous remonte un cas suite à un avenant ou les formalité du workflow ont disparu.
il faut vérifier l'ordre des opérations sur T_devis
select * from t_devis where `ID_BO_DEVIS` ='<Num_MS>';
si le retour de la requête montre une discontinuité dans la colonne "ID_ORDRE_OPERATION" il faut annulé l'opération
Dans le cas ci dessus, on constat que l'opération 4 est en discontinualité avec 2 et donc doit êtr annulée
on vérifie aussi les tables t_devis_last_operation et t_bo_operation_devis
select * from t_devis_last_operation where `ID_BO_DEVIS` ='<Num_MS>'; select * from t_bo_operation_devis where `ID_BO_DEVIS` ='<Num_MS>';
ACTION DE CORRECTION
SET FOREIGN_KEY_CHECKS=0; SET @ID_BO_DEVIS = <Num_Ms>; SET @ID_ORDRE_OPERATION_TARGET=-1; /* nouveau numéro d'ordre de la ligne à neutralisé */ SET @ID_ORDRE_OPERATION_SOURCE=4; /* ligne à neutralisé sur t_devis */ SET @ID_ORDRE_OPERATION_DEVIS_CIBLE=2; /* ordre de la dernière opération à restituer */ SET @ID_TECH_DEVIS = (SELECT ID_TECH_DEVIS FROM T_DEVIS WHERE ID_BO_DEVIS = @ID_BO_DEVIS AND ID_ORDRE_OPERATION = @ID_ORDRE_OPERATION_DEVIS_CIBLE); update t_devis_last_operation set ID_TECH_DEVIS = @ID_TECH_DEVIS where ID_BO_DEVIS = @ID_BO_DEVIS; update t_devis set ID_ORDRE_OPERATION=@ID_ORDRE_OPERATION_TARGET where ID_BO_DEVIS = @ID_BO_DEVIS and id_ordre_operation = @ID_ORDRE_OPERATION_SOURCE; update t_bo_operation_devis set ID_ORDRE_OPERATION =@ID_ORDRE_OPERATION_TARGET where ID_BO_DEVIS = @ID_BO_DEVIS and id_ordre_operation = @ID_ORDRE_OPERATION_SOURCE; SET FOREIGN_KEY_CHECKS=1;
FICHE REFERENCE
https://psi-brokerage.freshdesk.com/a/tickets/235963