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
   | CREATE PROC ps_InsertCde
(
	@date datetime = null,
	@etat varchar(10) = null,
	@montant numeric(10,2) = null,
	@acompte numeric(10,2) = null,
	@no_client tinyint = null,
	@id_cde tinyint OUTPUT
)
AS
 
/* Test si la date est vide */
IF @date IS NULL
BEGIN
	raiserror('Insertion impossible : la date de commande n''a pas été 
 
renseignée.', 16, 1)
	return
END
 
/* Test si l'état est vide */
IF @etat IS NULL
BEGIN
	raiserror('Insertion impossible : l''état de la commande n''a pas été 
 
renseigné.', 16, 1)
	return
END
 
/* Test si le montant est vide */
IF @montant IS NULL
BEGIN
	raiserror('Insertion impossible : le montant de la commande n''a pas été 
 
renseigné.', 16, 1)
	return
END
 
/* Test si l'acompte est vide */
IF @acompte IS NULL
BEGIN
	raiserror('Insertion impossible : l''acompte de la commande n''a pas été 
 
renseigné.', 16, 1)
	return
END
 
/* Test si la date est vide */
IF @no_client IS NULL
BEGIN
	raiserror('Insertion impossible : le numéro du client n''a pas été 
 
renseigné.', 16, 1)
	return
END
 
/* On insère la commande */
INSERT INTO commande(date_cde, etat_cde, montant, acompte, no_client)
VALUES(@date, @etat, @montant, @acompte, @no_client)
 
SELECT @id_cde = (SELECT DISTINCT @@identity FROM commande) | 
Partager