t_classification_atc.texte ORDER BY code ]]> 0 AND w_dbsetup.code_original NOT IN (SELECT code_original FROM eco.t_classification_atc WHERE code_original IS NOT NULL); SELECT eco.cti_reorganize_classification_atc(); ]]>
0 AND w_dbsetup.code NOT IN (SELECT code FROM eco.t_type_article_cti WHERE code IS NOT NULL); ]]>
0 AND code NOT IN (SELECT code FROM eco.t_listes_tables); ]]>
Sections CTI non-livrées DROP TABLE IF EXISTS w_del_sections ; CREATE TEMP TABLE w_del_sections as ( SELECT oid FROM eco.t_classes_sections WHERE classe_id IN ( SELECT t_classes.oid FROM eco.t_classes LEFT JOIN w_dbsetup ON w_dbsetup.code = t_classes_sections.code WHERE 1=1 AND is_cti = '1' AND w_dbsetup.code IS NULL ) ); DELETE FROM eco.t_classes_sections_elements WHERE section_id IN (SELECT oid FROM w_del_sections); DELETE FROM eco.t_classes_sections WHERE oid IN (SELECT oid FROM w_del_sections); UPDATE eco.t_classes_sections SET texte = w_dbsetup.texte, condition = w_dbsetup.condition, exclude_code = w_dbsetup.exclude_code, include_code = w_dbsetup.include_code FROM w_dbsetup, eco.t_classes, eco.t_listes_tables WHERE t_classes.oid = t_classes_sections.classe_id AND t_listes_tables.oid = t_classes.table_id AND w_dbsetup.code||'@'||w_dbsetup.classe_sequence||'@'||w_dbsetup.table_code = t_classes_sections.code||'@'||t_classes.sequence||'@'||t_listes_tables.code AND ( t_classes_sections.texte IS DISTINCT FROM w_dbsetup.texte OR t_classes_sections.condition IS DISTINCT FROM w_dbsetup.condition OR t_classes_sections.exclude_code IS DISTINCT FROM w_dbsetup.exclude_code OR t_classes_sections.include_code IS DISTINCT FROM w_dbsetup.include_code ); INSERT INTO eco.t_classes_sections(code, texte, classe_id, include_code, exclude_code) SELECT w_dbsetup.code, w_dbsetup.texte, t_classes.oid, w_dbsetup.include_code, w_dbsetup.exclude_code FROM w_dbsetup JOIN eco.t_listes_tables ON (w_dbsetup.table_code = t_listes_tables.code -- ou s'il s'agit de la classe des cles OR (classe_sequence = 30 AND t_listes_tables.code = (SELECT t_listes_tables.code FROM eco.t_listes_tables JOIN eco.t_classes ON t_classes.code = 'CTI_CLE_REP' AND table_id = t_listes_tables.oid))) JOIN eco.t_classes ON 1=1 AND t_classes.table_id = t_listes_tables.oid AND t_classes.sequence = w_dbsetup.classe_sequence WHERE w_dbsetup.code||'@'||w_dbsetup.classe_sequence||'@'|| CASE WHEN w_dbsetup.classe_sequence != 30 THEN w_dbsetup.table_code ELSE (SELECT valeur FROM eco.t_divers WHERE code = 'CLE_REPARTITION') END NOT IN ( SELECT t_classes_sections.code||'@'||t_classes.sequence||'@'||CASE WHEN w_dbsetup.classe_sequence != 30 THEN t_listes_tables.code ELSE (SELECT valeur FROM eco.t_divers WHERE code = 'CLE_REPARTITION') END FROM eco.t_classes_sections JOIN eco.t_classes ON t_classes.oid = t_classes_sections.classe_id JOIN eco.t_listes_tables ON t_listes_tables.oid = t_classes.table_id) ; ]]>
'' GROUP BY 1 HAVING count(*) > 1 ) subview WHERE t_indicateurs.code = subview.code AND t_indicateurs.oid <> subview.minoid; UPDATE eco.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, is_template = w_dbsetup.is_template, variable_definition = ARRAY[variable_definition_1,variable_definition_2,variable_definition_3] , variable_value = ARRAY[variable_value_1,variable_value_2,variable_value_3], variable_value_text = ARRAY[variable_value_text_1,variable_value_text_2,variable_value_text_3], description = w_dbsetup.description, is_hide = CASE WHEN t_indicateurs.is_hide = '1' THEN '1' ELSE w_dbsetup.is_hide END FROM w_dbsetup WHERE t_indicateurs.code = w_dbsetup.code; -- Ajout des indicateurs INSERT INTO eco.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, is_template, variable_definition, variable_value, variable_value_text, description, is_hide ) 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, is_template, ARRAY[variable_definition_1,variable_definition_2,variable_definition_3] , ARRAY[variable_value_1,variable_value_2,variable_value_3], ARRAY[variable_value_text_1,variable_value_text_2,variable_value_text_3], description, is_hide FROM w_dbsetup WHERE oid <> 0 AND code NOT IN (SELECT code FROM eco.t_indicateurs WHERE code IS NOT NULL); -- Thèmes UPDATE eco.t_indicateurs SET theme_id = ARRAY[ t_indicateur_theme_1.oid, t_indicateur_theme_2.oid, t_indicateur_theme_3.oid, t_indicateur_theme_4.oid, t_indicateur_theme_5.oid, t_indicateur_theme_6.oid, t_indicateur_theme_7.oid, t_indicateur_theme_8.oid, t_indicateur_theme_9.oid ] FROM w_dbsetup LEFT JOIN eco.t_indicateur_theme t_indicateur_theme_1 ON w_dbsetup.theme_1_code = t_indicateur_theme_1.code LEFT JOIN eco.t_indicateur_theme t_indicateur_theme_2 ON w_dbsetup.theme_2_code = t_indicateur_theme_2.code LEFT JOIN eco.t_indicateur_theme t_indicateur_theme_3 ON w_dbsetup.theme_3_code = t_indicateur_theme_3.code LEFT JOIN eco.t_indicateur_theme t_indicateur_theme_4 ON w_dbsetup.theme_4_code = t_indicateur_theme_4.code LEFT JOIN eco.t_indicateur_theme t_indicateur_theme_5 ON w_dbsetup.theme_5_code = t_indicateur_theme_5.code LEFT JOIN eco.t_indicateur_theme t_indicateur_theme_6 ON w_dbsetup.theme_6_code = t_indicateur_theme_6.code LEFT JOIN eco.t_indicateur_theme t_indicateur_theme_7 ON w_dbsetup.theme_7_code = t_indicateur_theme_7.code LEFT JOIN eco.t_indicateur_theme t_indicateur_theme_8 ON w_dbsetup.theme_8_code = t_indicateur_theme_8.code LEFT JOIN eco.t_indicateur_theme t_indicateur_theme_9 ON w_dbsetup.theme_9_code = t_indicateur_theme_9.code WHERE t_indicateurs.code = w_dbsetup.code AND theme_id IS DISTINCT FROM ARRAY[ t_indicateur_theme_1.oid, t_indicateur_theme_2.oid, t_indicateur_theme_3.oid, t_indicateur_theme_4.oid, t_indicateur_theme_5.oid, t_indicateur_theme_6.oid, t_indicateur_theme_7.oid, t_indicateur_theme_8.oid, t_indicateur_theme_9.oid ] ; -- Mise à jour des références UPDATE eco.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), indicateur_template_id = COALESCE(t_indicateurs_template.oid,0) FROM w_dbsetup LEFT JOIN eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.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 eco.t_indicateurs t_indicateurs_reference ON (w_dbsetup.indicateur_reference_code = t_indicateurs_reference.code AND w_dbsetup.indicateur_reference_code <> '') LEFT JOIN eco.t_indicateurs t_indicateurs_template ON (w_dbsetup.indicateur_template_code = t_indicateurs_template.code AND w_dbsetup.indicateur_template_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 <> '' OR indicateur_template_code <> ''); SELECT base.cti_reorganize_indicateurs('eco') ; ]]>
'' AND table_id = t_listes_tables.oid ORDER BY t_listes.code; ]]>
'CTI_PORTFO' ORDER BY t_rapports.code ; ]]> 0 AND code NOT IN (SELECT code FROM eco.t_rapports) ; UPDATE eco.t_rapports SET texte = w_dbsetup.texte, is_cti = w_dbsetup.is_cti, is_essentiel = w_dbsetup.is_essentiel, rapport_template_id = template.oid, is_template_updatable = w_dbsetup.is_template_updatable, rapport_indicateur_condition_id = ARRAY[condition_0.oid,condition_1.oid,condition_2.oid,condition_3.oid,condition_4.oid] FROM w_dbsetup LEFT JOIN eco.t_rapports template ON template_code = template.code LEFT JOIN eco.t_listes_tables table_0 ON split_part(condition_codes[1],'|',1) = table_0.code OR table_0.code = (SELECT t_listes_tables.code FROM eco.t_listes_tables JOIN eco.t_classes ON t_classes.code = 'CTI_CLE_REP' AND table_id = t_listes_tables.oid) LEFT JOIN eco.t_classes classe_0 ON table_0.oid = classe_0.table_id AND classe_0.code = split_part(condition_codes[1] ,'|',2) LEFT JOIN eco.t_classes_sections section_0 ON classe_0.oid = section_0.classe_id AND section_0.code = split_part(condition_codes[1] ,'|',3) LEFT JOIN eco.t_indicateur_condition condition_0 ON regexp_replace(regexp_replace(regexp_replace(regexp_replace(table_0.name,'^t_',''),'s_','','g'),'x',''),'s$','') || 'id' = regexp_replace(condition_0.column_name,'_','','g') AND classe_0.sequence = substring(split_part(condition_0.code,'#',2),3,2) AND left(split_part(condition_0.code,'#',2),2) = 'LS' AND section_0.oid = right(split_part(condition_0.code,'#',2),-4) LEFT JOIN eco.t_listes_tables table_1 ON split_part(condition_codes[2],'|',1) = table_1.code OR table_1.code = (SELECT t_listes_tables.code FROM eco.t_listes_tables JOIN eco.t_classes ON t_classes.code = 'CTI_CLE_REP' AND table_id = t_listes_tables.oid) LEFT JOIN eco.t_classes classe_1 ON table_1.oid = classe_1.table_id AND classe_1.code = split_part(condition_codes[2] ,'|',2) LEFT JOIN eco.t_classes_sections section_1 ON classe_1.oid = section_1.classe_id AND section_1.code = split_part(condition_codes[2] ,'|',3) LEFT JOIN eco.t_indicateur_condition condition_1 ON regexp_replace(regexp_replace(regexp_replace(regexp_replace(table_1.name,'^t_',''),'s_','','g'),'x',''),'s$','') || 'id' = regexp_replace(condition_1.column_name,'_','','g') AND classe_1.sequence = substring(split_part(condition_1.code,'#',2),3,2) AND left(split_part(condition_1.code,'#',2),2) = 'LS' AND section_1.oid = right(split_part(condition_1.code,'#',2),-4) LEFT JOIN eco.t_listes_tables table_2 ON split_part(condition_codes[3],'|',1) = table_2.code OR table_2.code = (SELECT t_listes_tables.code FROM eco.t_listes_tables JOIN eco.t_classes ON t_classes.code = 'CTI_CLE_REP' AND table_id = t_listes_tables.oid) LEFT JOIN eco.t_classes classe_2 ON table_2.oid = classe_2.table_id AND classe_2.code = split_part(condition_codes[3] ,'|',2) LEFT JOIN eco.t_classes_sections section_2 ON classe_2.oid = section_2.classe_id AND section_2.code = split_part(condition_codes[3] ,'|',3) LEFT JOIN eco.t_indicateur_condition condition_2 ON regexp_replace(regexp_replace(regexp_replace(regexp_replace(table_2.name,'^t_',''),'s_','','g'),'x',''),'s$','') || 'id' = regexp_replace(condition_2.column_name,'_','','g') AND classe_2.sequence = substring(split_part(condition_2.code,'#',2),3,2) AND left(split_part(condition_2.code,'#',2),2) = 'LS' AND section_2.oid = right(split_part(condition_2.code,'#',2),-4) LEFT JOIN eco.t_listes_tables table_3 ON split_part(condition_codes[4],'|',1) = table_3.code OR table_3.code = (SELECT t_listes_tables.code FROM eco.t_listes_tables JOIN eco.t_classes ON t_classes.code = 'CTI_CLE_REP' AND table_id = t_listes_tables.oid) LEFT JOIN eco.t_classes classe_3 ON table_3.oid = classe_3.table_id AND classe_3.code = split_part(condition_codes[4] ,'|',2) LEFT JOIN eco.t_classes_sections section_3 ON classe_3.oid = section_3.classe_id AND section_3.code = split_part(condition_codes[4] ,'|',3) LEFT JOIN eco.t_indicateur_condition condition_3 ON regexp_replace(regexp_replace(regexp_replace(regexp_replace(table_3.name,'^t_',''),'s_','','g'),'x',''),'s$','') || 'id' = regexp_replace(condition_3.column_name,'_','','g') AND classe_3.sequence = substring(split_part(condition_3.code,'#',2),3,2) AND left(split_part(condition_3.code,'#',2),2) = 'LS' AND section_3.oid = right(split_part(condition_3.code,'#',2),-4) LEFT JOIN eco.t_listes_tables table_4 ON split_part(condition_codes[5],'|',1) = table_4.code OR table_4.code = (SELECT t_listes_tables.code FROM eco.t_listes_tables JOIN eco.t_classes ON t_classes.code = 'CTI_CLE_REP' AND table_id = t_listes_tables.oid) LEFT JOIN eco.t_classes classe_4 ON table_4.oid = classe_4.table_id AND classe_4.code = split_part(condition_codes[5] ,'|',2) LEFT JOIN eco.t_classes_sections section_4 ON classe_4.oid = section_4.classe_id AND section_4.code = split_part(condition_codes[5] ,'|',3) LEFT JOIN eco.t_indicateur_condition condition_4 ON regexp_replace(regexp_replace(regexp_replace(regexp_replace(table_4.name,'^t_',''),'s_','','g'),'x',''),'s$','') || 'id' = regexp_replace(condition_4.column_name,'_','','g') AND classe_4.sequence = substring(split_part(condition_4.code,'#',2),3,2) AND left(split_part(condition_4.code,'#',2),2) = 'LS' AND section_4.oid = right(split_part(condition_4.code,'#',2),-4) WHERE t_rapports.code = w_dbsetup.code; ]]>
'' AND (t_rapports.is_cti = '1' OR t_rapports.code LIKE 'CTI_%') AND t_rapports.code <> 'CTI_PORTFO' AND ind2.is_cti IS DISTINCT FROM '0' ORDER BY t_rapports.code, ind1.code, t_rapports_rubriques.numero_rubrique ; ]]> '' OR w_specific_rapports_rubriques.specific_viewlink_label <> '' OR w_specific_rapports_rubriques.specific_viewlink_param <> '' ) ; ]]>