Bonjour,
J'ai un problème avec un sous programme sql
CREATE OR REPLACE FUNCTION CoutLigneCommande(numcom number,npizza number,ntaille number) return number AS
qtite ligne_cmd.quantite%TYPE;
reduc ligne_cmd.remise%TYPE;
montant tarif.prix%TYPE;
cout number;
BEGIN
select quantite,remise into qtite,reduc
from ligne_cmd
where numcom=ligne_cmd.numc and npizza=ligne_cmd.pizza and ntaille=ligne_cmd.taille;
select prix into montant
from tarif
where tarif.numpiz=npizza and ntaille=tarif.taille;
cout:=montant*qtite*(1-reduc/100);
return cout;
end CoutLigneCommande;
/
CREATE OR REPLACE FUNCTION CoutCommande(numerocom number) return number as
begin
for lig_curs in (select numc,pizza,taille from ligne_cmd where ligne_cmd.numc=numerocom)loop
return CoutLigneCommande(lig_curs.numc,lig_curs.pizza,lig_curs.taille);
end loop;
end CoutCommande;
/
et en faite ça ne fonctionne pas j'aimerais sommer les lignes pour lesquels le numéro de commande est identique.
et quelqu'un sait comment on fait?