de IMPERIAL » Jeu 25 FĂ©v 2010 16:29
Crée un Trigger
Il y en a un trés bon créé par Ookie Dookie :
CREATE TRIGGER Trace_User ON F_DOCLIGNE
FOR UPDATE
AS
DECLARE @Utilisateur varchar(50) /* Info libre ligne Utilisateur (Texte de 50
caractères) */
DECLARE @Date_saisie smalldatetime /* Info libre ligne Date_saisie (Date) */
DECLARE @Date_saisieOld smalldatetime
/* Récupération de l'utilisateur du poste (dans le domaine NT) et de la date
courante : */
SELECT @Utilisateur = nt_username, @Date_saisie = getdate() FROM
master..sysprocesses WHERE spid=@@SPID
/* Récupération de l'ancienne date de saisie de la ligne modifiée (Date_saisieOld): */
SELECT @Date_saisieOld = DL.Date_saisie
FROM F_DOCLIGNE DL JOIN INSERTED INS
ON DL.CBMARQ = INS.CBMARQ
/* Mise Ă jour des infos libres Utilisateur et Date_saisie de la ligne si la
nouvelle Date_saisie
est différente de l'ancienne (Date_saisieOld) ou si l'ancienne n'est pas renseignée
(NULL) : */
IF @Date_saisieOld <> @Date_saisie OR @Date_saisieOld IS NULL
BEGIN
UPDATE DL SET DL.Utilisateur = @Utilisateur, DL.Date_saisie = @Date_saisie
FROM F_DOCLIGNE DL JOIN INSERTED INS
ON DL.CBMARQ = INS.CBMARQ
END
Il met le nom de l'user et la date de modif dans deux infos libres
Va voir le post
Cdlt
Imperial
IMPERIAL (A la recherche de consultants)
Consultant Senior
Il n'y a pas de secret pour réussir; c'est le fruit de l'apprentissage du travail acharné et des leçons tirées de l'échec.
Colin Luther Powell