Bonjour à tous et bonne année.

J'ai fait une interface qui me permet de générer un fichier d'import pour le module Gestion Commerciale version 8.01 afin de générer des factures client, le fichier est importé, mais cependant, j'ai mis un trigger sur les tables F_DOCENTETE et sur F_DOCLIGNE lors de l'insertion, aucun des 2 triggers ne s'active.

Je vous met le trigger que j'ai en place sur la table F_DOCENTETE, le but consiste à modifier la valeur du champ DO_REF uniquement si ce dernier contient la chaine {LIMOG} :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
ALTER TRIGGER [dbo].[GMT_ADD_F_DOCENTETE] 
   ON  [dbo].[F_DOCENTETE]
   AFTER INSERT
AS 
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;
 
	declare @date smalldatetime
	declare @upd smallint=0
	declare @refFacture varchar(17)
        declare @cbmarq int,@dotype int,@domaine int, @provenance int
	declare @mois int, @annee int
	declare @anneeSTRING varchar(4)
 
	select @cbmarq=cbmarq,@dotype=do_type, @domaine=do_domaine, @refFacture=DO_REF, @provenance=DO_Provenance, @date=DO_Date FROM inserted
 
	exec CB_SendMessage @@SPID, @cbmarq
 
	--si je ne suis pas une facture cliente, je ne fais pas de traitement
	if @domaine=0 and @dotype=6 and @provenance=0
		begin
			if @refFacture like '% {LIMOG}'
				begin
					set @upd=1
					set @mois=MONTH(@date)
					set @annee=YEAR(@date)
					set @anneeSTRING=@annee
					set @anneeSTRING=RIGHT(@anneeSTRING,2)
 
					if @mois=1
						set @refFacture=(select replace(@refFacture,'{LIMOG}','JAN '+@anneeSTRING))
 
					if @mois=2
						set @refFacture=(select replace(@refFacture,'{LIMOG}','FEV '+@anneeSTRING))
 
					if @mois=3
						set @refFacture=(select replace(@refFacture,'{LIMOG}','MAR '+@anneeSTRING))
 
					if @mois=4
						set @refFacture=(select replace(@refFacture,'{LIMOG}','AVR '+@anneeSTRING))
 
					if @mois=5
						set @refFacture=(select replace(@refFacture,'{LIMOG}','MAI '+@anneeSTRING))
 
					if @mois=6
						set @refFacture=(select replace(@refFacture,'{LIMOG}','JUI '+@anneeSTRING))
 
					if @mois=7
						set @refFacture=(select replace(@refFacture,'{LIMOG}','JUI '+@anneeSTRING))
 
					if @mois=8
						set @refFacture=(select replace(@refFacture,'{LIMOG}','AOU '+@anneeSTRING))
 
					if @mois=9
						set @refFacture=(select replace(@refFacture,'{LIMOG}','SEP '+@anneeSTRING))
 
					if @mois=10
						set @refFacture=(select replace(@refFacture,'{LIMOG}','OCT '+@anneeSTRING))
 
					if @mois=11
						set @refFacture=(select replace(@refFacture,'{LIMOG}','NOV '+@anneeSTRING))
 
					if @mois=12
						set @refFacture=(select replace(@refFacture,'{LIMOG}','DEC '+@anneeSTRING))
				end
 
			if @upd=1
				update dbo.F_DOCENTETE set do_ref=@refFacture 
				FROM dbo.F_DOCENTETE Y
				join inserted I on I.cbmarq=Y.cbmarq
		end
	END

Dans mon code, j'ai également ajouté
Code : Sélectionner tout - Visualiser dans une fenêtre à part
exec CB_SendMessage @@SPID, @cbmarq
, histoire de voir si le trigger est exécuté, rien ne s'affiche à l'écran.

Auriez-vous des idées de comment résoudre cela?

Merci