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
| ALTER PROCEDURE [dbo].[CT_MODIFIER_HISTORIQUE]
-- Add the parameters for the stored procedure here
@num_historique int
,@date_historique datetime
,@commentaire varchar(4000)
,@num_type_media int
,@num_mode int
,@num_utilisateur int
,@num_dossier int
,@url_document varchar(255)
,@retour varchar(255)output
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @erreur bit
SET @erreur = 0;
IF @num_historique is null
BEGIN
SET @retour = 'le numéro d''historique n''est pas indiqué'
raiserror('le numéro d''historique n''est pas indiqué', 10, 1)
SET @erreur = 1
END
IF @num_utilisateur is null
BEGIN
SET @retour = 'l''utilisateur n''est pas indiqué'
raiserror('le''utilisateur n''est pas indiqué', 10, 1)
SET @erreur = 1
END
IF @erreur = 0
BEGIN
DECLARE @req as varchar(4000);
SET @req = 'UPDATE HISTORIQUES SET
date_historique = cast(''' + cast(@date_historique as varchar(20)) + ''' as datetime) '
SET @req = @req +'
,commentaire = cast(''' + isnull(@commentaire, '''''') + ''' As varchar(4000))';
SET @req = @req +
',num_type_media =' + cast (@num_type_media as varchar(1));
SET @req = @req +
',num_mode =' + cast(@num_mode as varchar(1));
SET @req = @req +
',num_utilisateur =' + cast(@num_utilisateur as varchar(3));
SET @req = @req +
',num_dossier =' + cast(@num_dossier as varchar(3));
SET @req = @req +
',num_utilisateur_modification =' + cast (@num_utilisateur as varchar(3)) ;
If not @url_document is null
BEGIN
SET @req = @req+'
,url_document = cast(''' + @url_document + ''' As varchar(255))';
END
SET @req = @req +
' WHERE
num_historique =' + cast(@num_historique as varchar(5));
EXEC(@req);
print(@req);
END
END |
Partager