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
|
CREATE or replace procedure Ajout_Commande(Nom_client in Commandes.Nomc%TYPE, /* Nom_client est définit comme étant un attribut de la colonne Nomc de la table Commandes */
Nom_produit in Commandes.NomP%TYPE, /* Nom_produit est définit comme étant un attribut de la colonne Nomp de la table commandes */
Quantite in Commandes.Qte%TYPE) /*Quantite est définit comme etant un attricut de la colonne Qte de la table commandes */
is
Total real;
le_Prix Prix.Cout%TYPE;/*le prix est définit comme étant une variable de la colonne Cout de la table Prix*/
Taxe real;
Total_ttc real;
Solde_anc Clients.Solde%TYPE;/* sold_anc est définit comme étant une variable de la colonne Solde de la table client */
Solde Clients.Solde%TYPE; /*Solde est définit comme étant une variable de la table clients */
begin
select Cout into le_Prix from Prix where Prix.Nomp=Nom_produit;
select Solde into Solde_anc from Clients where Clients.Nomc=Nom_client;
/*faire une mis à jours sur le solde du client*/
Total:= le_Prix* Quantite;
Taxe:= Total*0.17;
Total_ttc:=Total+Taxe;
Solde:=Solde_anc+Total_ttc ;
insert into Commandes values(ma_seq_Ncom.nextval, Nom_client, Nom_produit, Quantite);/*insérer la nouvelle commande dans la table commandes*/
update Clients set Solde=Solde_anc where Nomc=Nom_client;/*mettre à jour le Solde du client*/
end;
/
/* appel procedure*/
declare /*ici l'erreur*/
Nomc1 in Commandes.Nomc%TYPE;
Nomp1 in Commandes.NomP%TYPE;
Qte1 in Commandes.Qte%TYPE;
begin
nomc1:='pierre';
nomp1:='clavier';
qte1:=5;
Ajout_Commande(nomc1,nomp1,qte1); /*et ici erreur*/
end;
/ |
Partager