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
| begin
/* Procedure Text */
total_ttc = :prix * :quantite * (1-:remise/100);
mois = extract(month from current_date);
if (:taillec = 'G') then
execute procedure get_taille_simple(:entree,:PALETTE,:RANG)
returning_values(:code_article_vendu);
---- 1111
if (:taillec = 'N') then
execute procedure get_taillen_simple(:entree,:TAILLE)
returning_values(:code_article_vendu,qte);
EXECUTE PROCEDURE get_code_vente (:ENTREE)
RETURNING_VALUES (:CODE_ARTICLE_VENDU,:LIB_ART,:PRIX_VENTE, :QTE_RESTANTE,
:PRIX_HT,:FAMILLE,:FOURNIS, :CD_TVA);
---- 2222
if (:QTE_RESTANTE < 1) then EXCEPTION DETAIL_VENTE_ART_EPUISE;
Select av.SEUIL_ALARME
from ART_VENTE av
where av.CODE_ART_VEN = :CODE_ARTICLE_VENDU
into :QTESEUIL;
---- 3333
ID_DETAIL_VENTE = GEN_ID(gen_id_detail_vente,1);
---- 4444
INSERT INTO detail_vente (
id_detail_vente,
id_entete,
code_art_ven,
libelle_article,
couleur_ven,
TAILLEGR_VEN,
etat_ligne_ven,
code_hto,
code_vendeur,
taillen,
taillec,
quantite_ligne_vente,
MONT_UNITAIRE_VENTE,
palette_ven,
rang_ven,
username,
dossier,
mont_rem_pourc)
VALUES (
:ID_DETAIL_VENTE,
:ID_ENTETE,
:CODE_ARTICLE_VENDU,
:LIB_ART,
:couleur,
:taillegr,
NULLIF(:ETAT,''), -- renvoie NULL si ETATS = ''.
COALESCE(nullif(:HTO,''),(SELECT e.hto_entete FROM entete_dossier_encours e WHERE e.id_entete=:ID_ENTETE)),
NULLIF(:VENDEUR,''),
:taille,
:taillec,
COALESCE(NULLIF(:QUANTITE,0),1),
:PRIX,
:palette,
:rang,
COALESCE(nullif(:USERNAME,''),USER),
:DOSSIER,
:remise);
---- 5555
update art_vente a
set a.ca_saison_ven = a.ca_saison_ven + :total_ttc
where a.code_art_ven = :code_article_vendu;
suspend;
---- */
end |
Partager