|
|
src: |
|
|
|
WITH montant_masse_salariale AS (
|
|
|
SELECT date_part('YEAR'::text, p_croisement_paie_planning.date)::numeric AS annee,
|
|
|
sum(p_croisement_paie_planning.mont_mass_sala_inte_pror_temp_vali) AS masse_salariale_bloc
|
|
|
FROM rh.p_croisement_paie_planning
|
|
|
JOIN rh.t_classes ON t_classes.code = 'CTI_CONTRIBUTION_BLOC_OPERATOIRE'::text
|
|
|
JOIN rh.t_classes_sections ON t_classes_sections.classe_id = t_classes.oid
|
|
|
JOIN rh.t_classes_sections_elements ON t_classes_sections_elements.section_id = t_classes_sections.oid
|
|
|
JOIN rh.p_planning_mouvement ON p_planning_mouvement.oid = p_croisement_paie_planning.planning_id AND p_planning_mouvement.service_id = t_classes_sections_elements.to_id
|
|
|
GROUP BY (date_part('YEAR'::text, p_croisement_paie_planning.date)::numeric)
|
|
|
), comptes AS (
|
|
|
SELECT comptes_1.annee,
|
|
|
comptes_1.cout_consommable,
|
|
|
comptes_1.cout_energie,
|
|
|
comptes_1.cout_structure
|
|
|
FROM crosstab('SELECT date_part(''YEAR''::text, p_historique_ecritures.date_ecriture)::numeric AS annee,
|
|
|
t_classes_sections.texte,
|
|
|
sum(p_historique_ecritures.montant_debit) AS montant_debit
|
|
|
FROM compta.p_historique_ecritures
|
|
|
JOIN compta.t_journaux ON p_historique_ecritures.journal_id = t_journaux.oid
|
|
|
JOIN compta.t_comptes_c ON p_historique_ecritures.compte_id = t_comptes_c.oid
|
|
|
JOIN compta.t_comptes_c t_comptes_c_extra ON p_historique_ecritures.compte_extra_id = t_comptes_c_extra.oid
|
|
|
JOIN compta.t_comptes_c t_comptes_c_contrepartie ON p_historique_ecritures.compte_contrepartie_id = t_comptes_c_contrepartie.oid
|
|
|
JOIN compta.t_sites ON p_historique_ecritures.site_id = t_sites.oid
|
|
|
JOIN compta.t_partenaires ON p_historique_ecritures.partenaire_id = t_partenaires.oid
|
|
|
JOIN compta.t_sections_analytiques ON p_historique_ecritures.section_analytique_id = t_sections_analytiques.oid
|
|
|
JOIN compta.t_comptes_c t_comptes_c_budget ON p_historique_ecritures.compte_budget_id = t_comptes_c_budget.oid
|
|
|
JOIN compta.t_classes ON t_classes.code = ''CTI_CONTRIBUTION_BLOC_OPERATOIRE''::text
|
|
|
JOIN compta.t_classes_sections ON t_classes_sections.classe_id = t_classes.oid
|
|
|
JOIN compta.t_classes_sections_elements ON t_classes_sections_elements.section_id = t_classes_sections.oid AND t_classes_sections_elements.to_id = p_historique_ecritures.compte_id
|
|
|
WHERE p_historique_ecritures.journal_id = 2
|
|
|
GROUP BY 1,2 ORDER BY 1,2'::text) comptes_1(annee numeric, cout_consommable numeric, cout_energie numeric, cout_structure numeric)
|
|
|
)
|
|
|
SELECT annees.annees AS annee,
|
|
|
montant_masse_salariale.masse_salariale_bloc,
|
|
|
comptes.cout_consommable,
|
|
|
comptes.cout_energie,
|
|
|
comptes.cout_structure
|
|
|
FROM generate_series(date_part('YEAR'::text, now() - '5 years'::interval)::numeric, date_part('YEAR'::text, now())::numeric) annees(annees)
|
|
|
LEFT JOIN montant_masse_salariale ON montant_masse_salariale.annee = annees.annees
|
|
|
LEFT JOIN comptes ON comptes.annee = annees.annees;
|