-- 1/3 : Création de la table temporaire
DROP TABLE IF EXISTS w_dbsetup
;

CREATE TEMP TABLE w_dbsetup AS
    SELECT t_indicateurs.oid,        t_indicateurs.texte,        t_indicateurs.table_name,        t_indicateurs.column_name,        t_indicateurs.is_cti,        t_indicateurs.entete,        t_indicateurs.code,        t_indicateurs.total_function,        t_indicateurs.output_format,        t_indicateurs.width,        t_indicateurs.entete_etendue,        t_indicateurs.dimension_date_1,        t_indicateurs.dimension_date_2,        t_indicateurs.dimension_date_3,        t_indicateurs.dimension_date_4,        t_indicateurs.dimension_date_5,        t_indicateurs.dimension_date,        t_indicateurs_1.code as indicateur_associe_1_code,         t_indicateurs_2.code as indicateur_associe_2_code,         t_indicateurs_3.code as indicateur_associe_3_code,         t_indicateurs_4.code as indicateur_associe_4_code,         t_indicateurs_5.code as indicateur_associe_5_code,         t_indicateurs_6.code as indicateur_associe_6_code,         t_indicateurs_7.code as indicateur_associe_7_code,         t_indicateurs_8.code as indicateur_associe_8_code,         t_indicateurs_9.code as indicateur_associe_9_code,         t_indicateurs_10.code as indicateur_associe_10_code,         t_indicateurs_11.code as indicateur_associe_11_code,         t_indicateurs_12.code as indicateur_associe_12_code,         t_indicateurs_13.code as indicateur_associe_13_code,         t_indicateurs_14.code as indicateur_associe_14_code,         t_indicateurs_15.code as indicateur_associe_15_code,         t_indicateurs_16.code as indicateur_associe_16_code,         t_indicateurs_17.code as indicateur_associe_17_code,         t_indicateurs_18.code as indicateur_associe_18_code,         t_indicateurs_19.code as indicateur_associe_19_code,         t_indicateurs_20.code as indicateur_associe_20_code,        t_indicateurs_reference.code as indicateur_reference_code       FROM compta.t_indicateurs        LEFT JOIN compta.t_indicateurs t_indicateurs_1 ON (t_indicateurs.indicateur_associe_1_id = t_indicateurs_1.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_2 ON (t_indicateurs.indicateur_associe_2_id = t_indicateurs_2.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_3 ON (t_indicateurs.indicateur_associe_3_id = t_indicateurs_3.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_4 ON (t_indicateurs.indicateur_associe_4_id = t_indicateurs_4.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_5 ON (t_indicateurs.indicateur_associe_5_id = t_indicateurs_5.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_6 ON (t_indicateurs.indicateur_associe_6_id = t_indicateurs_6.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_7 ON (t_indicateurs.indicateur_associe_7_id = t_indicateurs_7.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_8 ON (t_indicateurs.indicateur_associe_8_id = t_indicateurs_8.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_9 ON (t_indicateurs.indicateur_associe_9_id = t_indicateurs_9.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_10 ON (t_indicateurs.indicateur_associe_10_id = t_indicateurs_10.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_11 ON (t_indicateurs.indicateur_associe_11_id = t_indicateurs_11.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_12 ON (t_indicateurs.indicateur_associe_12_id = t_indicateurs_12.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_13 ON (t_indicateurs.indicateur_associe_13_id = t_indicateurs_13.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_14 ON (t_indicateurs.indicateur_associe_14_id = t_indicateurs_14.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_15 ON (t_indicateurs.indicateur_associe_15_id = t_indicateurs_15.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_16 ON (t_indicateurs.indicateur_associe_16_id = t_indicateurs_16.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_17 ON (t_indicateurs.indicateur_associe_17_id = t_indicateurs_17.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_18 ON (t_indicateurs.indicateur_associe_18_id = t_indicateurs_18.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_19 ON (t_indicateurs.indicateur_associe_19_id = t_indicateurs_19.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_20 ON (t_indicateurs.indicateur_associe_20_id = t_indicateurs_20.oid)        LEFT JOIN compta.t_indicateurs t_indicateurs_reference ON (t_indicateurs.indicateur_reference_id = t_indicateurs_reference.oid)        WHERE t_indicateurs.is_cti = '1'       ORDER BY t_indicateurs.code LIMIT 0
;

-- 2/3 : Peuplement de la table temporaire
INSERT INTO w_dbsetup(
    oid,
    texte,
    table_name,
    column_name,
    is_cti,
    entete,
    code,
    total_function,
    output_format,
    width,
    entete_etendue,
    dimension_date_1,
    dimension_date_2,
    dimension_date_3,
    dimension_date_4,
    dimension_date_5,
    dimension_date,
    indicateur_associe_1_code,
    indicateur_associe_2_code,
    indicateur_associe_3_code,
    indicateur_associe_4_code,
    indicateur_associe_5_code,
    indicateur_associe_6_code,
    indicateur_associe_7_code,
    indicateur_associe_8_code,
    indicateur_associe_9_code,
    indicateur_associe_10_code,
    indicateur_associe_11_code,
    indicateur_associe_12_code,
    indicateur_associe_13_code,
    indicateur_associe_14_code,
    indicateur_associe_15_code,
    indicateur_associe_16_code,
    indicateur_associe_17_code,
    indicateur_associe_18_code,
    indicateur_associe_19_code,
    indicateur_associe_20_code,
    indicateur_reference_code
)
VALUES
(1, 'BILAN Clinique', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND classe_1_code IN (''1'', ''2'', ''3'', ''4'', ''5'') THEN  montant_solde_debit ELSE 0 END', '1', 'BILAN', 'CTI_BILC', 'SUM', '#E', 80, 'BILAN', '4', ' ', ' ', ' ', ' ', '4', 'CTI_CL6C', 'CTI_CL7C', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CAPITAUX Clinique', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  classe_1_code = ''1'' THEN  montant_solde_debit ELSE 0 END', '1', 'CAPITAUX', 'CTI_CL1C', 'SUM', '#E', 80, 'CAPITAUX', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'IMMOBILISATIONS Clinique', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  classe_1_code = ''2'' THEN  montant_solde_debit ELSE 0 END', '1', 'IMMOBILISATIONS', 'CTI_CL2C', 'SUM', '#E', 80, 'IMMOBILISATIONS', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'STOCKS Clinique', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  classe_1_code = ''3'' THEN  montant_solde_debit ELSE 0 END', '1', 'STOCKS', 'CTI_CL3C', 'SUM', '#E', 80, 'STOCKS', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CLIENTS Clinique', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  classe_2_code = ''41'' THEN  montant_solde_debit ELSE 0 END', '1', 'CLIENTS', 'CTI_CL41C', 'SUM', '#E', 80, 'CLIENTS', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CLIENTS Honoraires', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''H'' AND  classe_2_code = ''41''  THEN  montant_solde_debit ELSE 0 END', '1', 'CLIENTS H', 'CTI_CL41H', 'SUM', '#E', 80, 'CLIENTS Honoraires', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'COMPTES DE TIERS Clinique', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  classe_1_code = ''4'' THEN  montant_solde_debit ELSE 0 END', '1', 'COMPTES DE TIERS', 'CTI_CL4C', 'SUM', '#E', 80, 'COMPTES DE TIERS', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'COMPTES FINANCIERS Clinique', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  classe_1_code = ''5'' THEN  montant_solde_debit ELSE 0 END', '1', 'COMPTES FINANCIERS', 'CTI_CL5C', 'SUM', '#E', 80, 'COMPTES FINANCIERS', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'COMPTES DE CHARGE Clinique', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  classe_1_code = ''6'' THEN  montant_solde_debit ELSE 0 END', '1', 'COMPTES DE CHARGE', 'CTI_CL6C', 'SUM', '#E', 80, 'COMPTES DE CHARGE', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'COMPTES DE PRODUIT Clinique', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  classe_1_code = ''7'' THEN  montant_solde_debit ELSE 0 END', '1', 'COMPTES DE PRODUIT', 'CTI_CL7C', 'SUM', '#E', 80, 'COMPTES DE PRODUIT', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'Erreur', 'SEP', '', '1', '', 'CTI_ERROR', 'SEP', '#', 0, '', '0', ' ', ' ', ' ', ' ', '0', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'X. EXEMPLE CTI. Choix d''un compte', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  compte_numero = ''41110000'' THEN  montant_solde_debit ELSE 0 END', '1', 'Exemple CTI. Choix d''un compte', 'CTI_EXEMPLE1', 'SUM', '#E', 0, 'Exemple CTI. Choix d''un compte', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'X. EXEMPLE CTI. Choix d''une liste de comptes', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  compte_numero IN (''41110000'', ''4114000'', ''41180000'') THEN  montant_solde_debit ELSE 0 END', '1', 'Exemple CTI. Choix d''une liste de comptes', 'CTI_EXEMPLE2', 'SUM', '#E', 0, 'Exemple CTI. Choix d''une liste de comptes', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'X. EXEMPLE CTI. Choix de comptes (début du code)', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  compte_numero LIKE ''4111%'' THEN  montant_solde_debit ELSE 0 END', '1', 'Exemple CTI. Choix de comptes (début du code)', 'CTI_EXEMPLE3', 'SUM', '#E', 0, 'Exemple CTI. Choix de comptes (début du code)', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'X. EXEMPLE CTI. Choix de comptes (plusieurs début du code)', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  (compte_numero LIKE ''4111%'' OR compte_numero LIKE ''4114%'' OR compte_numero LIKE ''4118%'' )  THEN  montant_solde_debit ELSE 0 END', '1', 'Exemple CTI. Choix de comptes (plusieurs début du code)', 'CTI_EXEMPLE4', 'SUM', '#E', 0, 'Exemple CTI. Choix de comptes (plusieurs début du code)', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'X. EXEMPLE CTI. Choix d''un journal', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  journal_code = ''071'' THEN  montant_debit ELSE 0 END', '1', 'Exemple CTI. Choix d''un journal', 'CTI_EXEMPLE5', 'SUM', '#E', 0, 'Exemple CTI. Choix d''un journal', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'GESTION Clinique', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND  classe_1_code IN (''6'', ''7'') THEN  montant_solde_debit ELSE 0 END', '1', 'GESTION', 'CTI_GESC', 'SUM', '#E', 80, 'GESTION', '4', ' ', ' ', ' ', ' ', '4', 'CTI_CL6C', 'CTI_CL7C', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTI. Montant crédit', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' THEN montant_solde_credit ELSE 0 END', '1', 'Montant crédit', 'CTI_MTCREDIT', 'SUM', '#', 0, 'Montant crédit', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTI. Montant débit', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' THEN montant_solde_credit ELSE 0 END', '1', 'Montant débit', 'CTI_MTDEBIT', 'SUM', '#', 0, 'Montant débit', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'Calcul d''indicateurs dans le rapport', '*RAPPORTCALC', '', '1', '', 'CTI_RAPPORTCALC', 'sum', '#', 0, '', '0', ' ', ' ', ' ', ' ', '0', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'Séparateur', 'SEP', '0', '1', '', 'CTI_SEP', 'SEP', '#', 0, '', '0', ' ', ' ', ' ', ' ', '0', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Autres achats et charges externes', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGAUACEX] THEN  montant_solde_credit ELSE 0 END', '1', 'Autres achats et charges externes', 'L_CTISIGAUACEX', 'SUM', '#', 0, 'Autres achats et charges externes', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Autres charges de gestion courante', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGAUCHGC] THEN  montant_solde_credit ELSE 0 END', '1', 'Autres charges de gestion courante', 'L_CTISIGAUCHGC', 'SUM', '#', 0, 'Autres charges de gestion courante', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Autres produits de gestion courante', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGAUPRGC] THEN  montant_solde_credit ELSE 0 END', '1', 'Autres produits de gestion courante', 'L_CTISIGAUPRGC', 'SUM', '#', 0, 'Autres produits de gestion courante', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Chiffre d''affaire', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGCA] THEN  montant_solde_credit ELSE 0 END', '1', 'Chiffre d''affaire', 'L_CTISIGCA', 'SUM', '#', 0, 'Chiffre d''affaire', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Charges exceptionnelles', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGCHEX] THEN  montant_solde_credit ELSE 0 END', '1', 'Charges exceptionnelles', 'L_CTISIGCHEX', 'SUM', '#', 0, 'Charges exceptionnelles', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Charges financières', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGCHFI] THEN  montant_solde_credit ELSE 0 END', '1', 'Charges financières', 'L_CTISIGCHFI', 'SUM', '#', 0, 'Charges financières', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Charges financières sur crédit-bail', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGCHFICB] THEN  montant_solde_credit ELSE 0 END', '1', 'Charges financières sur crédit-bail', 'L_CTISIGCHFICB', 'SUM', '#', 0, 'Charges financières sur crédit-bail', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Charges de personnel', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGCHPR] THEN  montant_solde_credit ELSE 0 END', '1', 'Charges de personnel', 'L_CTISIGCHPR', 'SUM', '#', 0, 'Charges de personnel', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Coût d''achat des marachandises vendues', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGCOACMA] THEN  montant_solde_credit ELSE 0 END', '1', 'Coût d''achat des marachandises vendues', 'L_CTISIGCOACMA', 'SUM', '#', 0, 'Coût d''achat des marachandises vendues', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Coût d''achat matières premières et approv.', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGCOACMP] THEN  montant_solde_credit ELSE 0 END', '1', 'Coût d''achat matières premières et approv.', 'L_CTISIGCOACMP', 'SUM', '#', 0, 'Coût d''achat matières premières et approv.', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Dotations aux amortissements de crédit-bail', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGDOAMCB] THEN  montant_solde_credit ELSE 0 END', '1', 'SIG. Dotations aux amortissements de crédit-bail', 'L_CTISIGDOAMCB', 'SUM', '#', 0, 'SIG. Dotations aux amortissements de crédit-bail', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Dotations aux amortissements, dépréciations et provisions', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGDOAMDP] THEN  montant_solde_credit ELSE 0 END', '1', 'Dotations aux amortissements, dépréciations et provisions', 'L_CTISIGDOAMDP', 'SUM', '#', 0, 'Dotations aux amortissements, dépréciations et provisions', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Excédent brut d''exploitation', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGEXBREX] THEN  montant_solde_credit ELSE 0 END', '1', 'Excédent brut d''exploitation', 'L_CTISIGEXBREX', 'SUM', '#', 0, 'Excédent brut d''exploitation', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Impôts et taxes', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGIMTX] THEN  montant_solde_credit ELSE 0 END', '1', 'Impôts et taxes', 'L_CTISIGIMTX', 'SUM', '#', 0, 'Impôts et taxes', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Impôts et taxes hors valeur ajoutée', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGIMTXHV] THEN  montant_solde_credit ELSE 0 END', '1', 'Impôts et taxes hors valeur ajoutée', 'L_CTISIGIMTXHV', 'SUM', '#', 0, 'Impôts et taxes hors valeur ajoutée', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Marge commerciale', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGMACO] THEN  montant_solde_credit ELSE 0 END', '1', 'Marge commerciale', 'L_CTISIGMACO', 'SUM', '#', 0, 'Marge commerciale', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Personnel extérieur', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGPEEX] THEN  montant_solde_credit ELSE 0 END', '1', 'Personnel extérieur', 'L_CTISIGPEEX', 'SUM', '#', 0, 'Personnel extérieur', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Production de l''exercice', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGPREX] THEN  montant_solde_credit ELSE 0 END', '1', 'Production de l''exercice', 'L_CTISIGPREX', 'SUM', '#', 0, 'Production de l''exercice', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Produits financiers', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGPRFI] THEN  montant_solde_credit ELSE 0 END', '1', 'Produits financiers', 'L_CTISIGPRFI', 'SUM', '#', 0, 'Produits financiers', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Production immobilisée', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGPRIM] THEN  montant_solde_credit ELSE 0 END', '1', 'Production immobilisée', 'L_CTISIGPRIM', 'SUM', '#', 0, 'Production immobilisée', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Production stockée ou déstockage', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGPRSTDE] THEN  montant_solde_credit ELSE 0 END', '1', 'Production stockée ou déstockage', 'L_CTISIGPRSTDE', 'SUM', '#', 0, 'Production stockée ou déstockage', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Production vendue', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGPRVE] THEN  montant_solde_credit ELSE 0 END', '1', 'Production vendue', 'L_CTISIGPRVE', 'SUM', '#', 0, 'Production vendue', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Produits exceptionnels', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGPRXX] THEN  montant_solde_credit ELSE 0 END', '1', 'Produits exceptionnels', 'L_CTISIGPRXX', 'SUM', '#', 0, 'Produits exceptionnels', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Quote-part sur opérations faites en commun', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGQPOPCO] THEN  montant_solde_credit ELSE 0 END', '1', 'Quote-part sur opérations faites en commun', 'L_CTISIGQPOPCO', 'SUM', '#', 0, 'Quote-part sur opérations faites en commun', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Redevance crédit-bail (mobilier)', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGRCB] THEN  montant_solde_credit ELSE 0 END', '1', 'Redevance crédit-bail (mobilier)', 'L_CTISIGRCB', 'SUM', '#', 0, 'Redevance crédit-bail (mobilier)', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Reprises sur amort. dépréciations et provisions', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGRPAMDP] THEN  montant_solde_credit ELSE 0 END', '1', 'Reprises sur amort. dépréciations et provisions', 'L_CTISIGRPAMDP', 'SUM', '#', 0, 'Reprises sur amort. dépréciations et provisions', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Résultat courant', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGRSCO] THEN  montant_solde_credit ELSE 0 END', '1', 'Résultat courant', 'L_CTISIGRSCO', 'SUM', '#', 0, 'Résultat courant', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Résultat d''exploitation', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGRSEX] THEN  montant_solde_credit ELSE 0 END', '1', 'Résultat d''exploitation', 'L_CTISIGRSEX', 'SUM', '#', 0, 'Résultat d''exploitation', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Résultat net', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGRSNT] THEN  montant_solde_credit ELSE 0 END', '1', 'Résultat net', 'L_CTISIGRSNT', 'SUM', '#', 0, 'Résultat net', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Résultat exceptionnel', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGRSXX] THEN  montant_solde_credit ELSE 0 END', '1', 'Résultat exceptionnel', 'L_CTISIGRSXX', 'SUM', '#', 0, 'Résultat exceptionnel', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Sous-traitance production', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGSTPR] THEN  montant_solde_credit ELSE 0 END', '1', 'Sous-traitance production', 'L_CTISIGSTPR', 'SUM', '#', 0, 'Sous-traitance production', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Subventions d''exploitation', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGSUEX] THEN  montant_solde_credit ELSE 0 END', '1', 'Subventions d''exploitation', 'L_CTISIGSUEX', 'SUM', '#', 0, 'Subventions d''exploitation', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Subventions de production', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGSUPR] THEN  montant_solde_credit ELSE 0 END', '1', 'Subventions de production', 'L_CTISIGSUPR', 'SUM', '#', 0, 'Subventions de production', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Subventions sur ventes de marchandise', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGSUVTMA] THEN  montant_solde_credit ELSE 0 END', '1', 'Subventions sur ventes de marchandise', 'L_CTISIGSUVTMA', 'SUM', '#', 0, 'Subventions sur ventes de marchandise', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Valeur ajoutée', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGVAAJ] THEN  montant_solde_credit ELSE 0 END', '1', 'Valeur ajoutée', 'L_CTISIGVAAJ', 'SUM', '#', 0, 'Valeur ajoutée', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Variations de stock', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGVAST] THEN  montant_solde_credit ELSE 0 END', '1', 'Variations de stock', 'L_CTISIGVAST', 'SUM', '#', 0, 'Variations de stock', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),
(1, 'CTISIG. Ventes de marchandises', 'v_historique_ecritures_1', 'CASE WHEN clinique_honoraire = ''C'' AND journal_id NOT IN [LISTE:CTISIGJSAUFJRN] AND compte_id IN [LISTE:CTISIGVTMA] THEN  montant_solde_credit ELSE 0 END', '1', 'Ventes de marchandises', 'L_CTISIGVTMA', 'SUM', '#', 0, 'Ventes de marchandises', '4', ' ', ' ', ' ', ' ', '4', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '')
;

-- 3/3 : Màj de la table iCTI
DELETE FROM compta.t_indicateurs        USING       (       SELECT code, MIN(oid) AS minoid FROM compta.t_indicateurs WHERE code <> '' GROUP BY 1 HAVING count(*) > 1       ) subview        WHERE t_indicateurs.code = subview.code AND t_indicateurs.oid <> subview.minoid;              UPDATE compta.t_indicateurs SET         texte = w_dbsetup.texte,         table_name = w_dbsetup.table_name,        column_name = w_dbsetup.column_name,        is_cti = w_dbsetup.is_cti,         entete = w_dbsetup.entete,        entete_etendue = w_dbsetup.entete_etendue,        total_function = w_dbsetup.total_function,        output_format = w_dbsetup.output_format,        width = w_dbsetup.width,        dimension_date_1 = w_dbsetup.dimension_date_1,        dimension_date_2 = w_dbsetup.dimension_date_2,        dimension_date_3 = w_dbsetup.dimension_date_3,        dimension_date_4 = w_dbsetup.dimension_date_4,        dimension_date_5 = w_dbsetup.dimension_date_5,        dimension_date = w_dbsetup.dimension_date        FROM w_dbsetup       WHERE t_indicateurs.code = w_dbsetup.code;              INSERT INTO compta.t_indicateurs(texte, table_name, column_name, is_cti, entete, entete_etendue, code, total_function, output_format, width,        dimension_date_1, dimension_date_2, dimension_date_3, dimension_date_4, dimension_date_5, dimension_date)       SELECT texte, table_name, column_name, is_cti, entete, entete_etendue, code, total_function, output_format, width,        dimension_date_1, dimension_date_2, dimension_date_3, dimension_date_4, dimension_date_5, dimension_date        FROM w_dbsetup WHERE oid <> 0 AND code NOT IN (SELECT code FROM compta.t_indicateurs WHERE code IS NOT NULL);               UPDATE compta.t_indicateurs SET         indicateur_associe_1_id = COALESCE(t_indicateurs_1.oid,0),        indicateur_associe_2_id = COALESCE(t_indicateurs_2.oid,0),        indicateur_associe_3_id = COALESCE(t_indicateurs_3.oid,0),        indicateur_associe_4_id = COALESCE(t_indicateurs_4.oid,0),        indicateur_associe_5_id = COALESCE(t_indicateurs_5.oid,0),        indicateur_associe_6_id = COALESCE(t_indicateurs_6.oid,0),        indicateur_associe_7_id = COALESCE(t_indicateurs_7.oid,0),        indicateur_associe_8_id = COALESCE(t_indicateurs_8.oid,0),        indicateur_associe_9_id = COALESCE(t_indicateurs_9.oid,0),        indicateur_associe_10_id = COALESCE(t_indicateurs_10.oid,0),        indicateur_associe_11_id = COALESCE(t_indicateurs_11.oid,0),        indicateur_associe_12_id = COALESCE(t_indicateurs_12.oid,0),        indicateur_associe_13_id = COALESCE(t_indicateurs_13.oid,0),        indicateur_associe_14_id = COALESCE(t_indicateurs_14.oid,0),        indicateur_associe_15_id = COALESCE(t_indicateurs_15.oid,0),        indicateur_associe_16_id = COALESCE(t_indicateurs_16.oid,0),        indicateur_associe_17_id = COALESCE(t_indicateurs_17.oid,0),        indicateur_associe_18_id = COALESCE(t_indicateurs_18.oid,0),        indicateur_associe_19_id = COALESCE(t_indicateurs_19.oid,0),        indicateur_associe_20_id = COALESCE(t_indicateurs_20.oid,0),        indicateur_reference_id = COALESCE(t_indicateurs_reference.oid,0)       FROM w_dbsetup        LEFT JOIN compta.t_indicateurs t_indicateurs_1 ON (w_dbsetup.indicateur_associe_1_code = t_indicateurs_1.code AND w_dbsetup.indicateur_associe_1_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_2 ON (w_dbsetup.indicateur_associe_2_code = t_indicateurs_2.code AND w_dbsetup.indicateur_associe_2_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_3 ON (w_dbsetup.indicateur_associe_3_code = t_indicateurs_3.code AND w_dbsetup.indicateur_associe_3_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_4 ON (w_dbsetup.indicateur_associe_4_code = t_indicateurs_4.code AND w_dbsetup.indicateur_associe_4_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_5 ON (w_dbsetup.indicateur_associe_5_code = t_indicateurs_5.code AND w_dbsetup.indicateur_associe_5_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_6 ON (w_dbsetup.indicateur_associe_6_code = t_indicateurs_6.code AND w_dbsetup.indicateur_associe_6_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_7 ON (w_dbsetup.indicateur_associe_7_code = t_indicateurs_7.code AND w_dbsetup.indicateur_associe_7_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_8 ON (w_dbsetup.indicateur_associe_8_code = t_indicateurs_8.code AND w_dbsetup.indicateur_associe_8_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_9 ON (w_dbsetup.indicateur_associe_9_code = t_indicateurs_9.code AND w_dbsetup.indicateur_associe_9_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_10 ON (w_dbsetup.indicateur_associe_10_code = t_indicateurs_10.code AND w_dbsetup.indicateur_associe_10_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_11 ON (w_dbsetup.indicateur_associe_11_code = t_indicateurs_11.code AND w_dbsetup.indicateur_associe_11_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_12 ON (w_dbsetup.indicateur_associe_12_code = t_indicateurs_12.code AND w_dbsetup.indicateur_associe_12_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_13 ON (w_dbsetup.indicateur_associe_13_code = t_indicateurs_13.code AND w_dbsetup.indicateur_associe_13_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_14 ON (w_dbsetup.indicateur_associe_14_code = t_indicateurs_14.code AND w_dbsetup.indicateur_associe_14_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_15 ON (w_dbsetup.indicateur_associe_15_code = t_indicateurs_15.code AND w_dbsetup.indicateur_associe_15_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_16 ON (w_dbsetup.indicateur_associe_16_code = t_indicateurs_16.code AND w_dbsetup.indicateur_associe_16_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_17 ON (w_dbsetup.indicateur_associe_17_code = t_indicateurs_17.code AND w_dbsetup.indicateur_associe_17_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_18 ON (w_dbsetup.indicateur_associe_18_code = t_indicateurs_18.code AND w_dbsetup.indicateur_associe_18_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_19 ON (w_dbsetup.indicateur_associe_19_code = t_indicateurs_19.code AND w_dbsetup.indicateur_associe_19_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_20 ON (w_dbsetup.indicateur_associe_20_code = t_indicateurs_20.code AND w_dbsetup.indicateur_associe_20_code <> '')         LEFT JOIN compta.t_indicateurs t_indicateurs_reference ON (w_dbsetup.indicateur_reference_code = t_indicateurs_reference.code AND w_dbsetup.indicateur_reference_code <> '')        WHERE t_indicateurs.code = w_dbsetup.code         AND (indicateur_associe_1_code <> '' OR          indicateur_associe_2_code <> '' OR          indicateur_associe_3_code <> '' OR          indicateur_reference_code <> '');                         SELECT base.cti_reorganize_indicateurs('compta');