You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

72 lines
4.1 KiB

src: |
SELECT p_commandes.provider_id,
p_lignes_commandes.commande_id,
p_commandes.numero AS commande_code,
btrim(p_commandes.objet::text) AS commande_texte,
p_commandes.objet AS commande_objet,
p_commandes.date_commande,
p_commandes.date_commande AS date_item,
p_commandes.date_engagement,
p_commandes.reference AS commande_reference,
p_lignes_commandes.oid AS ligne_commande_id,
(p_commandes.numero::text || '-'::text) || btrim(to_char(p_lignes_commandes.ligne_commande, '0000'::text)) AS ligne_commande_code,
p_lignes_commandes.texte AS ligne_commande_texte,
p_commandes.site_id,
p_commandes.gestionnaire_id,
p_commandes.lieu_commande_id,
p_commandes.lieu_facturation_id,
p_commandes.lieu_livraison_id AS lieu_id,
p_lignes_commandes.unite_fonctionnelle_id,
p_lignes_commandes.article_id,
p_lignes_commandes.article_texte_specifique,
p_lignes_commandes.ucd_id,
p_lignes_commandes.lpp_id,
p_lignes_commandes.compte_id AS compte_article_id,
p_lignes_commandes.unite_approvisionnement_id AS unite_approvisionnement_article_id,
t_unites.code AS unite_approvisionnement_article_code,
t_unites.texte AS unite_approvisionnement_article_texte,
t_unites.section_id AS unite_approvisionnement_article_section_id,
t_unites.section_code AS unite_approvisionnement_article_section_code,
t_unites.section_texte AS unite_approvisionnement_article_section_texte,
p_commandes.fournisseur_id,
p_lignes_commandes.quantite_approvisionnement,
p_lignes_commandes.prix_unitaire_approvisionnement,
p_lignes_commandes.multiplicateur_stockage,
p_lignes_commandes.quantite_stockage,
p_lignes_commandes.prix_unitaire_stockage,
p_lignes_commandes.montant_commande_ht,
p_lignes_commandes.montant_commande_remise,
p_lignes_commandes.montant_commande_tva,
p_lignes_commandes.montant_commande_port,
p_lignes_commandes.montant_commande_ttc,
p_lignes_commandes.montant_commande_ht + round(p_lignes_commandes.montant_commande_tva * p_lignes_commandes.taux_prorata_tva / 100::numeric, 2) AS montant_commande_ht_prorata,
p_lignes_commandes.montant_commande_tva - round(p_lignes_commandes.montant_commande_tva * p_lignes_commandes.taux_prorata_tva / 100::numeric, 2) AS montant_commande_tva_prorata,
p_lignes_commandes.quantite_livraison_approvisionnement,
p_lignes_commandes.quantite_livraison_stockage,
p_lignes_commandes.montant_livraison_ht,
p_lignes_commandes.montant_livraison_tva,
p_lignes_commandes.montant_livraison_ttc,
p_lignes_commandes.etat_livraison AS ligne_commande_etat_livraison,
CASE
WHEN p_lignes_commandes.etat_livraison = ANY (ARRAY['N'::bpchar, 'P'::bpchar]) THEN p_lignes_commandes.quantite_approvisionnement - p_lignes_commandes.quantite_livraison_approvisionnement
ELSE 0::numeric
END AS quantite_non_livraison_approvisionnement,
CASE
WHEN p_lignes_commandes.etat_livraison = ANY (ARRAY['N'::bpchar, 'P'::bpchar]) THEN p_lignes_commandes.montant_commande_ht - p_lignes_commandes.montant_livraison_ht
ELSE 0::numeric
END AS montant_non_livraison_ht,
CASE
WHEN p_lignes_commandes.etat_livraison = ANY (ARRAY['N'::bpchar, 'P'::bpchar]) THEN p_lignes_commandes.montant_commande_ttc - p_lignes_commandes.montant_livraison_ttc
ELSE 0::numeric
END AS montant_non_livraison_ttc,
p_lignes_commandes.montant_liquidation_ht,
p_lignes_commandes.montant_liquidation_remise,
p_lignes_commandes.montant_liquidation_tva,
p_lignes_commandes.montant_liquidation_port,
p_lignes_commandes.montant_liquidation_ttc,
p_lignes_commandes.etat_liquidation,
p_commandes.date_livraison_prevue,
p_lignes_commandes.date_reception
FROM eco.p_lignes_commandes
JOIN eco.p_commandes ON p_lignes_commandes.commande_id = p_commandes.oid
JOIN eco.t_unites ON p_lignes_commandes.unite_approvisionnement_id = t_unites.oid;