Bonjour,

J'effectue un trigger d'update dans des tables d'une base et j'aimerais savoir si ma requete c'est bien excétuté afin d'enregistrer le résultat dans une autre table.

Voici une partie de mon trigger pour mieux comprendre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
-- On va modifier l'entete de la facture
UPDATE F_DOCENTETE SET CA_Num = @Tournee, ORDRE_LIVRAI = @ordreLiv, DO_Piece = 'P'+@Tournee+@ordreLiv, DO_Date = convert(varchar(10),getdate(),103)  WHERE DO_Piece = @IdComm AND DO_Domaine = 0 AND DO_Type = 1
 
-- On va modifier la ligne de la facture
UPDATE F_DOCLIGNE SET DO_Type = 2, CA_Num = @Tournee, DO_Piece = 'P'+@Tournee+@ordreLiv, DL_PieceBC = @IdComm, DL_DateBC = DO_Date, DO_Date = convert(varchar(10),getdate(),103) WHERE DO_Piece = @IdComm AND DL_Ligne = @NumLign AND DO_Domaine = 0 AND DO_Type = 1
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
-- SI pas d'erreur dans mes deux triggers j'effectue ce traitement
UPDATE T_ECHANGES SET DATE_TRAITEMENT = getdate(), STATUT = 'TRAITE'  WHERE IDENTIFIANT = @idEchange
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
-- SI il y a une erreur, j'effectue ce traitement, et j'annule mes deux requetes précedente....
UPDATE T_ECHANGES SET DATE_TRAITEMENT = getdate(), STATUT = 'ERREUR' ERREUR='détail erreur' WHERE IDENTIFIANT = @idEchange
rollback transaction
Il me faudrait également pouvoir récupérer un numéro d'erreur (ou dans le meilleur des cas un libellé sur l'erreur.... pour le mettre dans le champ ERREUR de ma table T_ECHANGES

Merci d'avance

Silvia