= 200801 AND
is_budget IS DISTINCT FROM '1'
GROUP BY 1,2
ORDER BY 1,2;
-- Ecritures exercice en cours
DROP TABLE IF EXISTS w_ECRITURES;
CREATE TEMP TABLE w_ECRITURES AS
SELECT to_number(to_char(CASE WHEN PERIODEECRITURE < DEBUTEXERCICE THEN DEBUTEXERCICE ELSE PERIODEECRITURE END,'YYYYMM'),'FM999999') AS MOIS,
NUMEROCOMPTE,
date_part('year',FINEXERCICE) AS exercice_comptable,
'0'::text AS exercice_precedent,
date(MIN(PERIODEECRITURE)) AS PERIODEECRITURE_debut,
date(MAX(PERIODEECRITURE)) AS PERIODEECRITURE_fin,
Count(*) AS COUNT,
round(SUM(MONTANTTENUDEBIT),2) AS DEBIT,
round(SUM(MONTANTTENUCREDIT),2) AS CREDIT
FROM prod_quadracompta.ECRITURES
JOIN prod_quadracompta.DOSSIER1 ON 1=1
WHERE TYPELIGNE <> 'T'
GROUP BY 1,2,3
ORDER BY 1,2;
-- Ecritures exercice précédent
INSERT INTO w_ECRITURES
SELECT to_number(to_char(CASE WHEN PERIODEECRITURE < DEBUTEXERCICE THEN DEBUTEXERCICE ELSE PERIODEECRITURE END,'YYYYMM'),'FM999999') AS MOIS,
NUMEROCOMPTE,
date_part('year',FINEXERCICE) AS exercice_comptable,
'1'::text AS exercice_precedent,
date(MIN(PERIODEECRITURE)) AS PERIODEECRITURE_debut,
date(MAX(PERIODEECRITURE)) AS PERIODEECRITURE_fin,
Count(*) AS COUNT,
round(SUM(MONTANTTENUDEBIT),2) AS DEBIT,
round(SUM(MONTANTTENUCREDIT),2) AS CREDIT
FROM prod_quadracompta.ECRITURESP
JOIN prod_quadracompta.DOSSIER1P ON 1=1
WHERE TYPELIGNE <> 'T'
GROUP BY 1,2,3
ORDER BY 1,2;
DROP TABLE IF EXISTS w_mois_modifies;
CREATE TEMP TABLE w_mois_modifies AS
SELECT w_ECRITURES.exercice_comptable,
w_ECRITURES.exercice_precedent,
w_ECRITURES.mois AS mois_comptable,
MIN(PERIODEECRITURE_debut) AS PERIODEECRITURE_debut,
MAX(PERIODEECRITURE_fin) AS PERIODEECRITURE_fin
FROM w_ECRITURES
LEFT JOIN w_historique_ecritures_total ON
w_historique_ecritures_total.mois_comptable = w_ECRITURES.mois AND
w_historique_ecritures_total.numero = w_ECRITURES.NUMEROCOMPTE
GROUP BY 1,2,3
HAVING MAX(CASE WHEN w_historique_ecritures_total.count IS DISTINCT FROM w_ECRITURES.count OR
w_historique_ecritures_total.debit IS DISTINCT FROM w_ECRITURES.debit OR
w_historique_ecritures_total.credit IS DISTINCT FROM w_ECRITURES.credit
THEN 1 ELSE 0 END) = 1;
ALTER TABLE w_mois_modifies ADD CONSTRAINT w_mois_modifies_pk PRIMARY KEY(mois_comptable);
CTISELECT_PROPERTY_READ 'MOISMODIFIES', COALESCE(base.cti_group_concat(mois_comptable),'0')
FROM w_mois_modifies;
CTISELECT_PROPERTY_READ 'MOISMODIFIESC', COALESCE(base.cti_group_concat(mois_comptable),'0')
FROM w_mois_modifies
WHERE exercice_precedent = '0';
CTISELECT_PROPERTY_READ 'MOISMODIFIESP', COALESCE(base.cti_group_concat(mois_comptable),'0')
FROM w_mois_modifies
WHERE exercice_precedent = '1';
echo Mois modifiés Exercice en cours : [MOISMODIFIESC];
echo Mois modifiés Exercice précédent : [MOISMODIFIESP];
]]>
'T'
ORDER BY FOLIO, LIGNEFOLIO;
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_1');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_2');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_3');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_4');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_5');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_6');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_7');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_8');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_9');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_10');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_11');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_12');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_13');
]]>
'T'
ORDER BY FOLIO, LIGNEFOLIO;
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_1');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_2');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_3');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_4');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_5');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_6');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_7');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_8');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_9');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_10');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_11');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_12');
SELECT base.cti_enable_index('compta', 'i_historique_ecritures_13');
]]>
'C'
AND site_id IN (SELECT oid FROM compta.t_sites WHERE clinique_honoraire <> 'H');
UPDATE compta.p_historique_ecritures
SET clinique_honoraire = 'H'
FROM compta.t_sites
WHERE p_historique_ecritures.site_id = t_sites.oid
AND p_historique_ecritures.clinique_honoraire <> 'H'
AND site_id IN (SELECT oid FROM compta.t_sites WHERE clinique_honoraire = 'H');
UPDATE compta.p_historique_ecritures
SET compte_id = t_comptes.compte_general_id
FROM compta.t_comptes
WHERE comptabilisee <> '1'
AND compte_id = t_comptes.oid
AND t_comptes.oid <> t_comptes.compte_general_id
AND compte_id = compte_extra_id;
]]>
'G' THEN '0' ELSE '1' END AS collectif
FROM prod_quadracompta.COMPTESP COMPTES
JOIN compta.t_comptes ON t_comptes.numero = COMPTES.NUMERO
LEFT JOIN prod_quadracompta.COMPTESP COMPTES_C ON COMPTES.COLLECTIF = COMPTES_C.NUMERO AND COMPTES.TYPE <> 'G'
LEFT JOIN compta.t_comptes t_comptes_c ON t_comptes_c.numero = COMPTES_C.NUMERO
) subview
WHERE t_comptes.oid = subview.oid AND
(
t_comptes.compte_general_id IS DISTINCT FROM subview.compte_general_id OR
t_comptes.collectif IS DISTINCT FROM subview.collectif
);
UPDATE compta.t_comptes SET
compte_general_id = subview.compte_general_id,
collectif = subview.collectif
FROM (
SELECT t_comptes.oid,
COALESCE(t_comptes_c.oid,t_comptes.oid) AS compte_general_id,
CASE WHEN COMPTES.TYPE <> 'G' THEN '0' ELSE '1' END AS collectif
FROM prod_quadracompta.COMPTES
JOIN compta.t_comptes ON t_comptes.numero = COMPTES.NUMERO
LEFT JOIN prod_quadracompta.COMPTES COMPTES_C ON COMPTES.COLLECTIF = COMPTES_C.NUMERO AND COMPTES.TYPE <> 'G'
LEFT JOIN compta.t_comptes t_comptes_c ON t_comptes_c.numero = COMPTES_C.NUMERO
) subview
WHERE t_comptes.oid = subview.oid AND
(
t_comptes.compte_general_id IS DISTINCT FROM subview.compte_general_id OR
t_comptes.collectif IS DISTINCT FROM subview.collectif
);
]]>