Bonjour,
J'effectue un trigger sur une table pour qu'il me remplisse une autre table mais, j'ai des souci pour récupérer les valeurs de l'insertion :
La méthode avec @test fonctionne mais pas utilisable etant donnée que j'ai plein de champs a recopier.
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 REATE TRIGGER INS_SIA_ENTE ON dbo.TCOM_CDEE FOR INSERT AS DECLARE @NomEchange nvarchar(25) DECLARE @TypeEchange char(1) DECLARE @test nvarchar(12) -- On regarde si la données est à destination de la base SAGE SELECT @NomEchange = T_ECHANGES.DESTINATION FROM T_ECHANGES WHERE T_ECHANGES.ID_E = (SELECT ID_E FROM INSERTED) IF (@NomEchange = 'SAGE' ) BEGIN SELECT @TypeEchange=ACTION_E FROM INSERTED IF (@TypeEchange = 'A') BEGIN -- Ajout d'une valeur SELECT @test= NO_COMMANDE FROM INSERTED INSERT INTO [F_DOCENTETE] (DO_Domaine, DO_Type, DO_Piece, DO_Date, DO_Tiers, RE_No, CA_Num) VALUES ( 0, 1, @test, '26/03/2007', INSERTED.NO_COMMANDE, 42, '7010232') END END
Par contre ma 2e méthode INSERTED.NO_COMMANDE ne fonctionne pas... et ce serais plus facile a mettre ne place...
Merci de votre aide pour me dire pourquoi cela ne fonctionne pas... Mauvaise syntaxe ???
Partager