diff --git a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_histo.pdf b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_histo.pdf index aeeafd0..7d54804 100644 Binary files a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_histo.pdf and b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_histo.pdf differ diff --git a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_log.log b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_log.log index 0d9e893..cb735d5 100644 --- a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_log.log +++ b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_log.log @@ -548,3 +548,484 @@ on 31827: 2026-09-03 11:29:12,208 - INFO - Jonction à la Station_ID: 25261 entr 2026-09-03 21:52:03,224 - INFO - Table des STATION, entrée et fix nbre: 194 2026-09-03 21:53:08,640 - INFO - Phase 5: Fin de traitement en 02 (m) 32 (s), résultats enregistrés dans ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats 2026-09-03 21:53:08,641 - INFO - Execution terminée sans erreur en 02(m)32(s) +2026-09-25 08:56:02,559 - INFO - *********************************************************************************************************************** +2026-09-25 08:56:02,560 - INFO - * Calcul des statistiques par entrées d'une BD Therion * +2026-09-25 08:56:02,560 - INFO - * Script pyThStat par : alexandre.pont@yahoo.fr * +2026-09-25 08:56:02,561 - INFO - * Version : 2026.09.03 * +2026-09-25 08:56:02,561 - INFO - * Fichier source : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql * +2026-09-25 08:56:02,561 - INFO - * Dossier destination : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats * +2026-09-25 08:56:02,561 - INFO - * Date : 2026-09-25 08h56m02s * +2026-09-25 08:56:02,561 - INFO - * Mode : sync * +2026-09-25 08:56:02,562 - INFO - *********************************************************************************************************************** +2026-09-25 08:56:02,563 - INFO - Phase 1: Importation de la base de données Therion ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql dans: ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats.db +2026-09-25 08:56:05,441 - INFO - Phase 2: Création des nouvelles tables, indexation +2026-09-25 08:56:05,737 - INFO - Jonction de SHOT equates nbre: 2580 +2026-09-25 08:59:36,514 - WARNING - Table des SHOT, visée(s) bloquante(s), même départ et arrivée, longueur nulle supprimée(s) nbre: 1688 +2026-09-25 08:59:38,323 - INFO - Table des SHOT, visées dupliquées traités nbre: 19 +2026-09-25 08:59:38,538 - INFO - Création de l'index des tables principales et optimisation de la mémoire +2026-09-25 08:59:38,688 - INFO - Marquage des visées et des stations d'habillage nbre: 19021 +2026-09-25 09:00:39,424 - INFO - Phase 3: Remplissage des tables d'après les 64171 entrée(s) +2026-09-25 09:00:39,431 - INFO - Table des STATION, entrée et fix nbre: 194 +2026-09-25 09:00:39,479 - INFO - Phase 4: Remplissage des tables d'après les séries vides jonctionnées aux 194 entrée(s) +on 1423: 2026-09-25 09:00:57,496 - INFO - Jonction à la Station_ID: 49335 entre les entrées 49456 et 49327 +on 3318: 2026-09-25 09:01:18,885 - INFO - Jonction à la Station_ID: 229 entre les entrées 218 et 834 +on 3357: 2026-09-25 09:01:19,690 - INFO - Jonction à la Station_ID: 3525 entre les entrées 3455 et 3525 +on 6351: 2026-09-25 09:02:12,376 - INFO - Jonction à la Station_ID: 1666 entre les entrées 1613 et 2784 +on 9158: 2026-09-25 09:03:31,987 - INFO - Jonction à la Station_ID: 3348 entre les entrées 3358 et 3397 +on 9594: 2026-09-25 09:03:47,553 - INFO - Jonction à la Station_ID: 48093 entre les entrées 49183 et 48104 +on 9622: 2026-09-25 09:03:51,206 - INFO - Jonction à la Station_ID: 49838 entre les entrées 49183 et 49803 +on 10275: 2026-09-25 09:04:05,069 - INFO - Jonction à la Station_ID: 40146 entre les entrées 38328 et 39667 +on 12587: 2026-09-25 09:05:03,907 - INFO - Jonction à la Station_ID: 47396 entre les entrées 48104 et 47360 +on 13062: 2026-09-25 09:05:14,849 - INFO - Jonction à la Station_ID: 9041 entre les entrées 10902 et 8905 +on 15553: 2026-09-25 09:06:21,984 - INFO - Jonction à la Station_ID: 12059 entre les entrées 10902 et 12987 +on 16763: 2026-09-25 09:06:51,965 - INFO - Jonction à la Station_ID: 9337 entre les entrées 14852 et 10902 +on 16763: 2026-09-25 09:06:51,978 - INFO - Jonction à la Station_ID: 9337 entre les entrées 14852 et 10902 +on 16817: 2026-09-25 09:06:54,158 - INFO - Jonction à la Station_ID: 9547 entre les entrées 9884 et 9366 +on 17832: 2026-09-25 09:07:27,488 - INFO - Jonction à la Station_ID: 12777 entre les entrées 10902 et 14852 +on 17833: 2026-09-25 09:07:27,618 - INFO - Jonction à la Station_ID: 9338 entre les entrées 10902 et 14852 +on 17833: 2026-09-25 09:07:27,730 - INFO - Jonction à la Station_ID: 12777 entre les entrées 10902 et 14852 +on 18972: 2026-09-25 09:07:55,769 - INFO - Jonction à la Station_ID: 12771 entre les entrées 14852 et 9366 +on 19046: 2026-09-25 09:07:58,773 - INFO - Jonction à la Station_ID: 17222 entre les entrées 16774 et 10902 +on 21114: 2026-09-25 09:09:00,518 - INFO - Jonction à la Station_ID: 15570 entre les entrées 8905 et 9366 +on 21600: 2026-09-25 09:09:17,328 - INFO - Jonction à la Station_ID: 47077 entre les entrées 49183 et 49089 +on 23056: 2026-09-25 09:09:59,072 - INFO - Jonction à la Station_ID: 15611 entre les entrées 9366 et 8905 +on 23137: 2026-09-25 09:10:01,400 - INFO - Jonction à la Station_ID: 15557 entre les entrées 8905 et 9366 +on 23142: 2026-09-25 09:10:01,511 - INFO - Jonction à la Station_ID: 9477 entre les entrées 8905 et 14852 +on 23144: 2026-09-25 09:10:01,966 - INFO - Jonction à la Station_ID: 9834 entre les entrées 14852 et 11338 +on 24975: 2026-09-25 09:11:03,202 - INFO - Jonction à la Station_ID: 16242 entre les entrées 15665 et 14852 +on 25697: 2026-09-25 09:11:32,706 - INFO - Jonction à la Station_ID: 16259 entre les entrées 10902 et 14852 +on 25981: 2026-09-25 09:11:44,327 - INFO - Jonction à la Station_ID: 50263 entre les entrées 50909 et 50130 +on 28328: 2026-09-25 09:12:48,062 - INFO - Jonction à la Station_ID: 9522 entre les entrées 16789 et 9366 +on 28497: 2026-09-25 09:12:55,373 - INFO - Jonction à la Station_ID: 44662 entre les entrées 49456 et 43628 +on 29909: 2026-09-25 09:13:40,650 - INFO - Jonction à la Station_ID: 44814 entre les entrées 48104 et 49456 +on 30963: 2026-09-25 09:14:09,628 - INFO - Jonction à la Station_ID: 16483 entre les entrées 15665 et 10902 +on 31414: 2026-09-25 09:14:28,590 - INFO - Jonction à la Station_ID: 17453 entre les entrées 19538 et 17667 +on 31827: 2026-09-25 09:14:37,289 - INFO - Jonction à la Station_ID: 25261 entre les entrées 27454 et 24729 +2026-09-25 09:21:27,889 - INFO - Intégrations des visées orphelines (entre 2 stations existantes) nbre: 340 +2026-09-25 09:21:35,555 - INFO - Réseau: 1, entrées jonctionnées: 10, [11338, 14852, 8905, 9366, 10902, 15665, 9884, 16789, 12987, 16774] +2026-09-25 09:21:35,742 - INFO - Réseau: 2, entrées jonctionnées: 2, [3397, 3358] +2026-09-25 09:21:36,412 - INFO - Réseau: 3, entrées jonctionnées: 8, [43628, 49456, 48104, 49327, 47360, 49183, 49089, 49803] +2026-09-25 09:21:36,558 - INFO - Réseau: 4, entrées jonctionnées: 2, [1613, 2784] +2026-09-25 09:21:36,802 - INFO - Réseau: 5, entrées jonctionnées: 2, [3455, 3525] +2026-09-25 09:21:36,973 - INFO - Réseau: 6, entrées jonctionnées: 2, [24729, 27454] +2026-09-25 09:21:37,459 - INFO - Réseau: 7, entrées jonctionnées: 2, [834, 218] +2026-09-25 09:21:37,559 - INFO - Réseau: 8, entrées jonctionnées: 2, [38328, 39667] +2026-09-25 09:21:37,708 - INFO - Réseau: 9, entrées jonctionnées: 2, [50130, 50909] +2026-09-25 09:21:37,862 - INFO - Réseau: 10, entrées jonctionnées: 2, [17667, 19538] +2026-09-25 09:21:37,863 - WARNING - Phase 4: Fin du remplissage des tables, attention 82 station(s) non comptabilisé(s) +2026-09-25 09:21:38,027 - INFO - Phase 5: Écriture des statistiques dans le fichier: ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats +2026-09-25 09:21:38,030 - INFO - Table des CENTRELINE, longueur: [(340302.67, 15575.02, 8956.61)] +2026-09-25 09:24:08,764 - INFO - Table des STATION, entrée et fix nbre: 194 +2026-09-25 09:26:05,872 - WARNING - Phase 5: Fin de traitement en 30 (m) 03 (s), avec 1 erreur(s), résultats enregistrés dans ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats +2026-09-25 09:26:05,878 - WARNING - Execution terminée avec 1 erreurs en 30(m)03(s), verifier le log +2026-09-25 09:28:23,185 - INFO - *********************************************************************************************************************** +2026-09-25 09:28:23,185 - INFO - * Calcul des statistiques par entrées d'une BD Therion * +2026-09-25 09:28:23,185 - INFO - * Script pyThStat par : alexandre.pont@yahoo.fr * +2026-09-25 09:28:23,186 - INFO - * Version : 2026.09.25 * +2026-09-25 09:28:23,186 - INFO - * Fichier source : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql * +2026-09-25 09:28:23,186 - INFO - * Dossier destination : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats * +2026-09-25 09:28:23,186 - INFO - * Date : 2026-09-25 09h28m23s * +2026-09-25 09:28:23,187 - INFO - * Mode : sync * +2026-09-25 09:28:23,187 - INFO - *********************************************************************************************************************** +2026-09-25 09:28:23,188 - INFO - Phase 1: Importation de la base de données Therion ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql dans: ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats.db +2026-09-25 09:28:25,913 - INFO - Phase 2: Création des nouvelles tables, indexation +2026-09-25 09:28:26,225 - INFO - Jonction de SHOT equates nbre: 2580 +2026-09-25 09:32:19,773 - WARNING - Table des SHOT, visée(s) bloquante(s), même départ et arrivée, longueur nulle supprimée(s) nbre: 1688 +2026-09-25 09:32:22,495 - INFO - Table des SHOT, visées dupliquées traités nbre: 19 +2026-09-25 09:32:22,883 - INFO - Création de l'index des tables principales et optimisation de la mémoire +2026-09-25 09:32:23,057 - INFO - Marquage des visées et des stations d'habillage nbre: 19021 +2026-09-25 09:33:49,244 - INFO - Phase 3: Remplissage des tables d'après les 64171 entrée(s) +2026-09-25 09:33:49,251 - INFO - Table des STATION, entrée et fix nbre: 194 +2026-09-25 09:33:49,296 - INFO - Phase 4: Remplissage des tables d'après les séries vides jonctionnées aux 194 entrée(s) +on 1423: 2026-09-25 09:34:07,005 - INFO - Jonction à la Station_ID: 49335 entre les entrées 49456 et 49327 +on 3318: 2026-09-25 09:34:28,031 - INFO - Jonction à la Station_ID: 229 entre les entrées 218 et 834 +on 3357: 2026-09-25 09:34:28,795 - INFO - Jonction à la Station_ID: 3525 entre les entrées 3455 et 3525 +on 6351: 2026-09-25 09:35:03,177 - INFO - Jonction à la Station_ID: 1666 entre les entrées 1613 et 2784 +on 9158: 2026-09-25 09:35:49,698 - INFO - Jonction à la Station_ID: 3348 entre les entrées 3358 et 3397 +on 9594: 2026-09-25 09:36:05,542 - INFO - Jonction à la Station_ID: 48093 entre les entrées 49183 et 48104 +on 9622: 2026-09-25 09:36:08,361 - INFO - Jonction à la Station_ID: 49838 entre les entrées 49183 et 49803 +on 10275: 2026-09-25 09:36:23,241 - INFO - Jonction à la Station_ID: 40146 entre les entrées 38328 et 39667 +on 12587: 2026-09-25 09:37:22,037 - INFO - Jonction à la Station_ID: 47396 entre les entrées 48104 et 47360 +on 13062: 2026-09-25 09:37:33,118 - INFO - Jonction à la Station_ID: 9041 entre les entrées 10902 et 8905 +on 15553: 2026-09-25 09:38:37,508 - INFO - Jonction à la Station_ID: 12059 entre les entrées 10902 et 12987 +on 16763: 2026-09-25 09:39:08,078 - INFO - Jonction à la Station_ID: 9337 entre les entrées 14852 et 10902 +on 16763: 2026-09-25 09:39:08,090 - INFO - Jonction à la Station_ID: 9337 entre les entrées 14852 et 10902 +on 16817: 2026-09-25 09:39:10,059 - INFO - Jonction à la Station_ID: 9547 entre les entrées 9884 et 9366 +on 17832: 2026-09-25 09:39:41,295 - INFO - Jonction à la Station_ID: 12777 entre les entrées 10902 et 14852 +on 17833: 2026-09-25 09:39:41,469 - INFO - Jonction à la Station_ID: 9338 entre les entrées 10902 et 14852 +on 17833: 2026-09-25 09:39:41,516 - INFO - Jonction à la Station_ID: 12777 entre les entrées 10902 et 14852 +on 18972: 2026-09-25 09:40:10,365 - INFO - Jonction à la Station_ID: 12771 entre les entrées 14852 et 9366 +on 19046: 2026-09-25 09:40:14,112 - INFO - Jonction à la Station_ID: 17222 entre les entrées 16774 et 10902 +on 21114: 2026-09-25 09:41:13,826 - INFO - Jonction à la Station_ID: 15570 entre les entrées 8905 et 9366 +on 21600: 2026-09-25 09:41:29,632 - INFO - Jonction à la Station_ID: 47077 entre les entrées 49183 et 49089 +on 23056: 2026-09-25 09:42:08,145 - INFO - Jonction à la Station_ID: 15611 entre les entrées 9366 et 8905 +on 23137: 2026-09-25 09:42:10,268 - INFO - Jonction à la Station_ID: 15557 entre les entrées 8905 et 9366 +on 23142: 2026-09-25 09:42:10,342 - INFO - Jonction à la Station_ID: 9477 entre les entrées 8905 et 14852 +on 23144: 2026-09-25 09:42:10,578 - INFO - Jonction à la Station_ID: 9834 entre les entrées 14852 et 11338 +on 24975: 2026-09-25 09:43:04,127 - INFO - Jonction à la Station_ID: 16242 entre les entrées 15665 et 14852 +on 25697: 2026-09-25 09:43:28,963 - INFO - Jonction à la Station_ID: 16259 entre les entrées 10902 et 14852 +on 25981: 2026-09-25 09:43:39,099 - INFO - Jonction à la Station_ID: 50263 entre les entrées 50909 et 50130 +on 28328: 2026-09-25 09:44:53,839 - INFO - Jonction à la Station_ID: 9522 entre les entrées 16789 et 9366 +on 28497: 2026-09-25 09:45:02,864 - INFO - Jonction à la Station_ID: 44662 entre les entrées 49456 et 43628 +2026-09-25 09:45:18,712 - INFO - *********************************************************************************************************************** +2026-09-25 09:45:18,713 - INFO - * Calcul des statistiques par entrées d'une BD Therion * +2026-09-25 09:45:18,713 - INFO - * Script pyThStat par : alexandre.pont@yahoo.fr * +2026-09-25 09:45:18,713 - INFO - * Version : 2026.09.25 * +2026-09-25 09:45:18,714 - INFO - * Fichier source : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql * +2026-09-25 09:45:18,714 - INFO - * Dossier destination : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats * +2026-09-25 09:45:18,714 - INFO - * Date : 2026-09-25 09h45m18s * +2026-09-25 09:45:18,715 - INFO - * Mode : sync * +2026-09-25 09:45:18,715 - INFO - *********************************************************************************************************************** +2026-09-25 09:45:18,717 - INFO - Phase 1: Importation de la base de données Therion ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql dans: ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats.db +2026-09-25 09:45:21,997 - INFO - Phase 2: Création des nouvelles tables, indexation +2026-09-25 09:45:24,220 - INFO - Jonction de SHOT equates, nbre: 2580 +2026-09-25 13:29:34,757 - INFO - *********************************************************************************************************************** +2026-09-25 13:29:34,762 - INFO - * Calcul des statistiques par entrées d'une BD Therion * +2026-09-25 13:29:34,762 - INFO - * Script pyThStat par : alexandre.pont@yahoo.fr * +2026-09-25 13:29:34,762 - INFO - * Version : 2026.09.25 * +2026-09-25 13:29:34,763 - INFO - * Fichier source : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql * +2026-09-25 13:29:34,763 - INFO - * Dossier destination : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats * +2026-09-25 13:29:34,763 - INFO - * Date : 2026-09-25 13h29m34s * +2026-09-25 13:29:34,764 - INFO - * Mode : sync * +2026-09-25 13:29:34,764 - INFO - *********************************************************************************************************************** +2026-09-25 13:29:34,765 - INFO - Phase 1: Importation de la base de données Therion ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql dans: ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats.db +2026-09-25 13:29:37,109 - INFO - Phase 2: Création des nouvelles tables, indexation +2026-09-25 13:29:37,384 - INFO - Jonction de SHOT equates, nbre: 2580 +2026-09-25 13:32:29,786 - WARNING - Table des SHOT, visée(s) bloquante(s), même départ et arrivée, longueur nulle supprimée(s), nbre: 1688 +2026-09-25 13:32:31,987 - INFO - Table des SHOT, visées dupliquées traités nbre: 19 +2026-09-25 13:32:32,237 - INFO - Création de l'index des tables principales et optimisation de la mémoire +2026-09-25 13:32:32,393 - INFO - Marquage des visées et des stations d'habillage, nbre: 19021 +2026-09-25 13:33:29,929 - INFO - Phase 3: Remplissage des tables d'après les 64171 entrée(s) +2026-09-25 13:33:29,935 - INFO - Table des STATION entrée et fix, nbre: 194 +2026-09-25 13:33:29,978 - INFO - Phase 4: Remplissage des tables d'après les séries vides jonctionnées aux 194 entrée(s) +on 1423: 2026-09-25 13:33:54,316 - INFO - Jonction à la Station_ID: 49335 entre les entrées 49456 et 49327 +on 3318: 2026-09-25 13:34:24,094 - INFO - Jonction à la Station_ID: 229 entre les entrées 218 et 834 +on 3357: 2026-09-25 13:34:25,149 - INFO - Jonction à la Station_ID: 3525 entre les entrées 3455 et 3525 +on 6351: 2026-09-25 13:35:07,931 - INFO - Jonction à la Station_ID: 1666 entre les entrées 1613 et 2784 +on 9158: 2026-09-25 13:36:04,556 - INFO - Jonction à la Station_ID: 3348 entre les entrées 3358 et 3397 +on 9594: 2026-09-25 13:36:22,101 - INFO - Jonction à la Station_ID: 48093 entre les entrées 49183 et 48104 +on 9622: 2026-09-25 13:36:26,303 - INFO - Jonction à la Station_ID: 49838 entre les entrées 49183 et 49803 +on 10275: 2026-09-25 13:36:43,488 - INFO - Jonction à la Station_ID: 40146 entre les entrées 38328 et 39667 +on 12587: 2026-09-25 13:37:47,559 - INFO - Jonction à la Station_ID: 47396 entre les entrées 48104 et 47360 +on 13062: 2026-09-25 13:37:59,496 - INFO - Jonction à la Station_ID: 9041 entre les entrées 10902 et 8905 +on 15553: 2026-09-25 13:39:09,986 - INFO - Jonction à la Station_ID: 12059 entre les entrées 10902 et 12987 +on 16763: 2026-09-25 13:39:42,530 - INFO - Jonction à la Station_ID: 9337 entre les entrées 14852 et 10902 +on 16763: 2026-09-25 13:39:42,543 - INFO - Jonction à la Station_ID: 9337 entre les entrées 14852 et 10902 +on 16817: 2026-09-25 13:39:44,744 - INFO - Jonction à la Station_ID: 9547 entre les entrées 9884 et 9366 +on 17832: 2026-09-25 13:40:18,110 - INFO - Jonction à la Station_ID: 12777 entre les entrées 10902 et 14852 +on 17833: 2026-09-25 13:40:18,207 - INFO - Jonction à la Station_ID: 9338 entre les entrées 10902 et 14852 +on 17833: 2026-09-25 13:40:18,267 - INFO - Jonction à la Station_ID: 12777 entre les entrées 10902 et 14852 +on 18972: 2026-09-25 13:40:47,557 - INFO - Jonction à la Station_ID: 12771 entre les entrées 14852 et 9366 +on 19046: 2026-09-25 13:40:50,262 - INFO - Jonction à la Station_ID: 17222 entre les entrées 16774 et 10902 +on 21114: 2026-09-25 13:41:49,626 - INFO - Jonction à la Station_ID: 15570 entre les entrées 8905 et 9366 +on 21600: 2026-09-25 13:42:05,319 - INFO - Jonction à la Station_ID: 47077 entre les entrées 49183 et 49089 +on 23056: 2026-09-25 13:42:44,492 - INFO - Jonction à la Station_ID: 15611 entre les entrées 9366 et 8905 +on 23137: 2026-09-25 13:42:46,660 - INFO - Jonction à la Station_ID: 15557 entre les entrées 8905 et 9366 +on 23142: 2026-09-25 13:42:46,740 - INFO - Jonction à la Station_ID: 9477 entre les entrées 8905 et 14852 +on 23144: 2026-09-25 13:42:46,986 - INFO - Jonction à la Station_ID: 9834 entre les entrées 14852 et 11338 +on 24975: 2026-09-25 13:43:43,239 - INFO - Jonction à la Station_ID: 16242 entre les entrées 15665 et 14852 +on 25697: 2026-09-25 13:44:09,588 - INFO - Jonction à la Station_ID: 16259 entre les entrées 10902 et 14852 +on 25981: 2026-09-25 13:44:21,298 - INFO - Jonction à la Station_ID: 50263 entre les entrées 50909 et 50130 +on 28328: 2026-09-25 13:45:21,382 - INFO - Jonction à la Station_ID: 9522 entre les entrées 16789 et 9366 +on 28497: 2026-09-25 13:45:27,207 - INFO - Jonction à la Station_ID: 44662 entre les entrées 49456 et 43628 +on 29909: 2026-09-25 13:46:09,359 - INFO - Jonction à la Station_ID: 44814 entre les entrées 48104 et 49456 +on 30963: 2026-09-25 13:46:36,462 - INFO - Jonction à la Station_ID: 16483 entre les entrées 15665 et 10902 +on 31414: 2026-09-25 13:46:51,003 - INFO - Jonction à la Station_ID: 17453 entre les entrées 19538 et 17667 +on 31827: 2026-09-25 13:47:00,812 - INFO - Jonction à la Station_ID: 25261 entre les entrées 27454 et 24729 +2026-09-25 13:53:13,135 - INFO - Intégrations des visées orphelines (entre 2 stations existantes), nbre: 340 +2026-09-25 13:53:21,522 - INFO - Réseau: 1, entrées jonctionnées: 10, [11338, 14852, 8905, 9366, 10902, 15665, 9884, 16789, 12987, 16774] +2026-09-25 13:53:21,647 - INFO - Réseau: 2, entrées jonctionnées: 2, [3397, 3358] +2026-09-25 13:53:21,978 - INFO - Réseau: 3, entrées jonctionnées: 8, [43628, 49456, 48104, 49327, 47360, 49183, 49089, 49803] +2026-09-25 13:53:22,074 - INFO - Réseau: 4, entrées jonctionnées: 2, [1613, 2784] +2026-09-25 13:53:22,273 - INFO - Réseau: 5, entrées jonctionnées: 2, [3455, 3525] +2026-09-25 13:53:22,394 - INFO - Réseau: 6, entrées jonctionnées: 2, [24729, 27454] +2026-09-25 13:53:22,498 - INFO - Réseau: 7, entrées jonctionnées: 2, [834, 218] +2026-09-25 13:53:22,603 - INFO - Réseau: 8, entrées jonctionnées: 2, [38328, 39667] +2026-09-25 13:53:22,711 - INFO - Réseau: 9, entrées jonctionnées: 2, [50130, 50909] +2026-09-25 13:53:22,874 - INFO - Réseau: 10, entrées jonctionnées: 2, [17667, 19538] +2026-09-25 13:53:22,883 - DEBUG - Réseau ID 10, ENT_1 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532, ENT_2 full name : Explo_01_1999_07_25.Explo_01_1999_07_25.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 5613 +2026-09-25 13:53:22,888 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,903 - DEBUG - Réseau ID 13, ENT_1 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806, ENT_2 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532 +2026-09-25 13:53:22,909 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,909 - DEBUG - Réseau ID 14, ENT_1 full name : Explo_54_2002_09_27.Explo_54_2002_09_27.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 8087, ENT_2 full name : Explo_26_2001_08_06.Explo_26_2001_08_06.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 6752 +2026-09-25 13:53:22,916 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,916 - DEBUG - Réseau ID 17, ENT_1 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532, ENT_2 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806 +2026-09-25 13:53:22,923 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,923 - DEBUG - Réseau ID 18, ENT_1 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806, ENT_2 full name : Explo_26_2001_08_06.Explo_26_2001_08_06.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 6752 +2026-09-25 13:53:22,929 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,930 - DEBUG - Réseau ID 19, ENT_1 full name : Explo_386_2020_09_23.Explo_386_2020_09_23.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 24415, ENT_2 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532 +2026-09-25 13:53:22,935 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,936 - DEBUG - Réseau ID 23, ENT_1 full name : Explo_01_1999_07_25.Explo_01_1999_07_25.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 5613, ENT_2 full name : Explo_26_2001_08_06.Explo_26_2001_08_06.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 6752 +2026-09-25 13:53:22,942 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,943 - DEBUG - Réseau ID 24, ENT_1 full name : Explo_01_1999_07_25.Explo_01_1999_07_25.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 5613, ENT_2 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806 +2026-09-25 13:53:22,950 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,950 - DEBUG - Réseau ID 26, ENT_1 full name : Explo_320_2016_09_23.Explo_320_2016_09_23.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 21678, ENT_2 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806 +2026-09-25 13:53:22,958 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,958 - DEBUG - Réseau ID 27, ENT_1 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532, ENT_2 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806 +2026-09-25 13:53:22,965 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,965 - DEBUG - Réseau ID 29, ENT_1 full name : Explo_387_2021_08_03.Explo_387_2021_08_03.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 24458, ENT_2 full name : Explo_26_2001_08_06.Explo_26_2001_08_06.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 6752 +2026-09-25 13:53:22,973 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,973 - DEBUG - Réseau ID 32, ENT_1 full name : Explo_320_2016_09_23.Explo_320_2016_09_23.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 21678, ENT_2 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532 +2026-09-25 13:53:22,981 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,981 - DEBUG - Réseau ID 39, ENT_1 full name : Explo_01_1999_07_25.Explo_01_1999_07_25.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 5613, ENT_2 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532 +2026-09-25 13:53:22,989 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,989 - DEBUG - Réseau ID 40, ENT_1 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532, ENT_2 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806 +2026-09-25 13:53:22,997 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:22,998 - DEBUG - Réseau ID 41, ENT_1 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806, ENT_2 full name : Explo_01_1999_07_25.Explo_01_1999_07_25.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 5613 +2026-09-25 13:53:23,005 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,006 - DEBUG - Réseau ID 42, ENT_1 full name : Explo_26_2001_08_06.Explo_26_2001_08_06.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 6752, ENT_2 full name : Explo_387_2021_08_03.Explo_387_2021_08_03.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 24458 +2026-09-25 13:53:23,012 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,013 - DEBUG - Réseau ID 43, ENT_1 full name : Explo_26_2001_08_06.Explo_26_2001_08_06.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 6752, ENT_2 full name : Explo_54_2002_09_27.Explo_54_2002_09_27.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 8087 +2026-09-25 13:53:23,020 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,020 - DEBUG - Réseau ID 44, ENT_1 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806, ENT_2 full name : Explo_112_2007_10_04.Explo_112_2007_10_04.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 11155 +2026-09-25 13:53:23,028 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,029 - DEBUG - Réseau ID 45, ENT_1 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532, ENT_2 full name : Explo_188_2011_09_15.Explo_188_2011_09_15.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 15365 +2026-09-25 13:53:23,036 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,036 - DEBUG - Réseau ID 46, ENT_1 full name : Explo_26_2001_08_06.Explo_26_2001_08_06.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 6752, ENT_2 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806 +2026-09-25 13:53:23,043 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,043 - DEBUG - Réseau ID 47, ENT_1 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806, ENT_2 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532 +2026-09-25 13:53:23,050 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,051 - DEBUG - Réseau ID 48, ENT_1 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532, ENT_2 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806 +2026-09-25 13:53:23,058 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,059 - DEBUG - Réseau ID 49, ENT_1 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806, ENT_2 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532 +2026-09-25 13:53:23,067 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,068 - DEBUG - Réseau ID 50, ENT_1 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806, ENT_2 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532 +2026-09-25 13:53:23,075 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,076 - DEBUG - Réseau ID 51, ENT_1 full name : Explo_26_2001_08_06.Explo_26_2001_08_06.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 6752, ENT_2 full name : Explo_01_1999_07_25.Explo_01_1999_07_25.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 5613 +2026-09-25 13:53:23,083 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,084 - DEBUG - Réseau ID 52, ENT_1 full name : Explo_01_1999_07_25.Explo_01_1999_07_25.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 5613, ENT_2 full name : Explo_26_2001_08_06.Explo_26_2001_08_06.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 6752 +2026-09-25 13:53:23,092 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,092 - DEBUG - Réseau ID 53, ENT_1 full name : Explo_26_2001_08_06.Explo_26_2001_08_06.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 6752, ENT_2 full name : Explo_01_1999_07_25.Explo_01_1999_07_25.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 5613 +2026-09-25 13:53:23,099 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,100 - DEBUG - Réseau ID 54, ENT_1 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806, ENT_2 full name : Explo_320_2016_09_23.Explo_320_2016_09_23.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 21678 +2026-09-25 13:53:23,107 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,108 - DEBUG - Réseau ID 55, ENT_1 full name : Explo_279_2014_09_13.Explo_279_2014_09_13.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 19806, ENT_2 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532 +2026-09-25 13:53:23,115 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,116 - DEBUG - Réseau ID 56, ENT_1 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532, ENT_2 full name : Explo_320_2016_09_23.Explo_320_2016_09_23.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 21678 +2026-09-25 13:53:23,121 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,122 - DEBUG - Réseau ID 57, ENT_1 full name : Explo_101_2006_08_18.Explo_101_2006_08_18.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 10532, ENT_2 full name : Explo_386_2020_09_23.Explo_386_2020_09_23.Complexe_Anialarra.Synthese-PSM_LARRA, Survey ID 24415 +2026-09-25 13:53:23,128 - DEBUG - Premier commun : (5609, 'Complexe_Anialarra', 'Complexe Anialarra') +2026-09-25 13:53:23,129 - DEBUG - Réseau ID 5, ENT_1 full name : Explo_03_2011_08_08.Explo_03_2011_08_08.AN676-Helado.Synthese-PSM_LARRA, Survey ID 2552, ENT_2 full name : Explo_04_2011_08_14.Explo_04_2011_08_14.AN676-Helado.Synthese-PSM_LARRA, Survey ID 2559 +2026-09-25 13:53:23,135 - DEBUG - Premier commun : (2534, 'AN676-Helado', 'AN676-Helado') +2026-09-25 13:53:23,151 - DEBUG - Réseau ID 37, ENT_1 full name : Explo_04_2011_08_14.Explo_04_2011_08_14.AN676-Helado.Synthese-PSM_LARRA, Survey ID 2559, ENT_2 full name : Explo_03_2011_08_08.Explo_03_2011_08_08.AN676-Helado.Synthese-PSM_LARRA, Survey ID 2552 +2026-09-25 13:53:23,157 - DEBUG - Premier commun : (2534, 'AN676-Helado', 'AN676-Helado') +2026-09-25 13:53:23,158 - DEBUG - Réseau ID 1, ENT_1 full name : Explo_01_2007_08_01.Explo_01_2007_08_01.C104.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64914, ENT_2 full name : Explo_01_2007_08_01.Explo_01_2007_08_01.C104.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64914 +2026-09-25 13:53:23,165 - DEBUG - Premier commun : (64912, 'Explo_01_2007_08_01', 'Explo 01 2007 08 01') +2026-09-25 13:53:23,181 - DEBUG - Réseau ID 6, ENT_1 full name : Explo_02_1987_08_01.Explo_02_1987_08_01.C50_Pre_Hus.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64529, ENT_2 full name : Explo_23_1983_08_01.Explo_23_1983_08_01.M31_Pourtet.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 60728 +2026-09-25 13:53:23,187 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,204 - DEBUG - Réseau ID 7, ENT_1 full name : Explo_02_1987_08_01.Explo_02_1987_08_01.C50_Pre_Hus.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64529, ENT_2 full name : Explo_01_2011_08_01.Explo_01_2011_08_01.C226.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 66326 +2026-09-25 13:53:23,210 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,210 - DEBUG - Réseau ID 9, ENT_1 full name : Explo_23_1983_08_01.Explo_23_1983_08_01.M31_Pourtet.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 60728, ENT_2 full name : Explo_08_1981_08_02.Explo_08_1981_08_02.M31_Pourtet.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 58183 +2026-09-25 13:53:23,216 - DEBUG - Premier commun : (56312, 'M31_Pourtet', 'M31 Pourtet') +2026-09-25 13:53:23,233 - DEBUG - Réseau ID 21, ENT_1 full name : Explo_02_1987_08_01.Explo_02_1987_08_01.C50_Pre_Hus.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64529, ENT_2 full name : Explo_43_2011_08_04.Explo_43_2011_08_04.M31_Pourtet.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64263 +2026-09-25 13:53:23,238 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,255 - DEBUG - Réseau ID 30, ENT_1 full name : Explo_01_2007_08_01.Explo_01_2007_08_01.C104.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64914, ENT_2 full name : Explo_01_1983_08_18.Explo_01_1983_08_18.M413_Partages.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 44188 +2026-09-25 13:53:23,261 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,262 - DEBUG - Réseau ID 31, ENT_1 full name : Explo_23_1983_08_01.Explo_23_1983_08_01.M31_Pourtet.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 60728, ENT_2 full name : Explo_01_2007_08_01.Explo_01_2007_08_01.C104.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64914 +2026-09-25 13:53:23,267 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,267 - DEBUG - Réseau ID 61, ENT_1 full name : Explo_01_1983_08_18.Explo_01_1983_08_18.M413_Partages.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 44188, ENT_2 full name : Explo_01_2007_08_01.Explo_01_2007_08_01.C104.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64914 +2026-09-25 13:53:23,272 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,273 - DEBUG - Réseau ID 62, ENT_1 full name : Explo_01_2007_08_01.Explo_01_2007_08_01.C104.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64914, ENT_2 full name : Explo_23_1983_08_01.Explo_23_1983_08_01.M31_Pourtet.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 60728 +2026-09-25 13:53:23,278 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,279 - DEBUG - Réseau ID 63, ENT_1 full name : Explo_43_2011_08_04.Explo_43_2011_08_04.M31_Pourtet.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64263, ENT_2 full name : Explo_02_1987_08_01.Explo_02_1987_08_01.C50_Pre_Hus.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64529 +2026-09-25 13:53:23,285 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,285 - DEBUG - Réseau ID 64, ENT_1 full name : Explo_08_1981_08_02.Explo_08_1981_08_02.M31_Pourtet.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 58183, ENT_2 full name : Explo_23_1983_08_01.Explo_23_1983_08_01.M31_Pourtet.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 60728 +2026-09-25 13:53:23,290 - DEBUG - Premier commun : (56312, 'M31_Pourtet', 'M31 Pourtet') +2026-09-25 13:53:23,309 - DEBUG - Réseau ID 65, ENT_1 full name : Explo_23_1983_08_01.Explo_23_1983_08_01.M31_Pourtet.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 60728, ENT_2 full name : Explo_02_1987_08_01.Explo_02_1987_08_01.C50_Pre_Hus.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64529 +2026-09-25 13:53:23,316 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,327 - DEBUG - Réseau ID 66, ENT_1 full name : Explo_01_2007_08_01.Explo_01_2007_08_01.C104.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64914, ENT_2 full name : Explo_01_2007_08_01.Explo_01_2007_08_01.C104.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64914 +2026-09-25 13:53:23,333 - DEBUG - Premier commun : (64912, 'Explo_01_2007_08_01', 'Explo 01 2007 08 01') +2026-09-25 13:53:23,345 - DEBUG - Réseau ID 67, ENT_1 full name : Explo_01_2011_08_01.Explo_01_2011_08_01.C226.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 66326, ENT_2 full name : Explo_02_1987_08_01.Explo_02_1987_08_01.C50_Pre_Hus.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 64529 +2026-09-25 13:53:23,351 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,364 - DEBUG - Réseau ID 36, ENT_1 full name : Explo_01_1993_09_01.Explo_01_1993_09_01.AN211.Synthese-PSM_LARRA, Survey ID 708, ENT_2 full name : Explo_01_2016_09_15.Explo_01_2016_09_15.AN596-Antartica.Synthese-PSM_LARRA, Survey ID 2272 +2026-09-25 13:53:23,371 - DEBUG - Premier commun : (57, 'Synthese-PSM_LARRA', 'Synthèse générale des réseaux de la Pierre Saint Martin-Larra') +2026-09-25 13:53:23,389 - DEBUG - Réseau ID 3, ENT_1 full name : Explo_01_2019_09_15.Explo_01_2019_09_15.AN702-Burros.Synthese-PSM_LARRA, Survey ID 2613, ENT_2 full name : Explo_01_2019_09_19.Explo_01_2019_09_19.AN704.Synthese-PSM_LARRA, Survey ID 2651 +2026-09-25 13:53:23,396 - DEBUG - Premier commun : (57, 'Synthese-PSM_LARRA', 'Synthèse générale des réseaux de la Pierre Saint Martin-Larra') +2026-09-25 13:53:23,409 - DEBUG - Réseau ID 38, ENT_1 full name : Explo_01_2019_09_19.Explo_01_2019_09_19.AN704.Synthese-PSM_LARRA, Survey ID 2651, ENT_2 full name : Explo_01_2019_09_15.Explo_01_2019_09_15.AN702-Burros.Synthese-PSM_LARRA, Survey ID 2613 +2026-09-25 13:53:23,414 - DEBUG - Premier commun : (57, 'Synthese-PSM_LARRA', 'Synthèse générale des réseaux de la Pierre Saint Martin-Larra') +2026-09-25 13:53:23,415 - DEBUG - Réseau ID 34, ENT_1 full name : Explo_62_2021_07_24.Explo_62_2021_07_24.Complexe_BU56_Ilamina.Synthese-PSM_LARRA, Survey ID 30152, ENT_2 full name : Explo_06_2014_08_01.Explo_06_2014_08_01.Complexe_BU56_Ilamina.Synthese-PSM_LARRA, Survey ID 27850 +2026-09-25 13:53:23,421 - DEBUG - Premier commun : (27366, 'Complexe_BU56_Ilamina', 'Complexe BU56 Ilamina') +2026-09-25 13:53:23,434 - DEBUG - Réseau ID 59, ENT_1 full name : Explo_06_2014_08_01.Explo_06_2014_08_01.Complexe_BU56_Ilamina.Synthese-PSM_LARRA, Survey ID 27850, ENT_2 full name : Explo_62_2021_07_24.Explo_62_2021_07_24.Complexe_BU56_Ilamina.Synthese-PSM_LARRA, Survey ID 30152 +2026-09-25 13:53:23,441 - DEBUG - Premier commun : (27366, 'Complexe_BU56_Ilamina', 'Complexe BU56 Ilamina') +2026-09-25 13:53:23,441 - DEBUG - Réseau ID 35, ENT_1 full name : Explo_02_1992_08_01.Explo_02_1992_08_01.AN008.Synthese-PSM_LARRA, Survey ID 162, ENT_2 full name : Explo_11_2003_08_01.Explo_11_2003_08_01.AN008.Synthese-PSM_LARRA, Survey ID 225 +2026-09-25 13:53:23,447 - DEBUG - Premier commun : (151, 'AN008', 'AN008') +2026-09-25 13:53:23,461 - DEBUG - Réseau ID 8, ENT_1 full name : GL04_Entree.GL04_Entree.GL04_Cam_Claque.Complexe_Lonne_Peyret-Bourrugues.Synthese-PSM_LARRA, Survey ID 39253, ENT_2 full name : GL102_Entree_01.Gouffre_du_Lonne_Peyret.Complexe_Lonne_Peyret-Bourrugues.Synthese-PSM_LARRA, Survey ID 40869 +2026-09-25 13:53:23,467 - DEBUG - Premier commun : (32648, 'Complexe_Lonne_Peyret-Bourrugues', 'Complexe Lonné Peyret-Bourrugues') +2026-09-25 13:53:23,480 - DEBUG - Réseau ID 60, ENT_1 full name : GL102_Entree_01.Gouffre_du_Lonne_Peyret.Complexe_Lonne_Peyret-Bourrugues.Synthese-PSM_LARRA, Survey ID 40869, ENT_2 full name : GL04_Entree.GL04_Entree.GL04_Cam_Claque.Complexe_Lonne_Peyret-Bourrugues.Synthese-PSM_LARRA, Survey ID 39253 +2026-09-25 13:53:23,486 - DEBUG - Premier commun : (32648, 'Complexe_Lonne_Peyret-Bourrugues', 'Complexe Lonné Peyret-Bourrugues') +2026-09-25 13:53:23,487 - DEBUG - Réseau ID 28, ENT_1 full name : Explo_14_2015_03_30.Explo_14_2015_03_30.Aranzadi.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 69727, ENT_2 full name : Explo_01_2017_05_20.Explo_01_2017_05_20.Xendako.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 67320 +2026-09-25 13:53:23,494 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,508 - DEBUG - Réseau ID 68, ENT_1 full name : Explo_01_2017_05_20.Explo_01_2017_05_20.Xendako.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 67320, ENT_2 full name : Explo_14_2015_03_30.Explo_14_2015_03_30.Aranzadi.Complexe_PSM_GdP.Synthese-PSM_LARRA, Survey ID 69727 +2026-09-25 13:53:23,512 - DEBUG - Premier commun : (44156, 'Complexe_PSM_GdP', 'Complexe PSM GdP') +2026-09-25 13:53:23,513 - DEBUG - Réseau ID 58, ENT_1 full name : Explo_62_1994_08_06.Explo_62_1994_08_06.Complexe_Arrestelia.Synthese-PSM_LARRA, Survey ID 26086, ENT_2 full name : Explo_11_1992_06_26.Explo_11_1992_06_26.Complexe_Arrestelia.Synthese-PSM_LARRA, Survey ID 25729 +2026-09-25 13:53:23,518 - DEBUG - Premier commun : (25655, 'Complexe_Arrestelia', 'Complexe Arrestelia') +2026-09-25 13:53:23,534 - WARNING - Phase 4: Fin du remplissage des tables, attention 82 station(s) non comptabilisé(s) +2026-09-25 13:53:23,664 - INFO - Phase 5: Écriture des statistiques dans le fichier: ~\Synthese-PSM_LARRA\Outputs\readme +2026-09-25 13:53:23,666 - INFO - Table des CENTRELINE, longueur: [(340302.67, 15575.02, 8956.61)] +2026-09-25 13:54:51,061 - INFO - Table des STATION entrée et fix, nbre: 194 +2026-09-25 13:56:04,191 - WARNING - Phase 5: Fin de traitement en 26 (m) 29 (s), avec 1 erreur(s), résultats enregistrés dans ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats +2026-09-25 13:56:04,197 - WARNING - Execution terminée avec 1 erreurs en 26(m)29(s), verifier le log +2026-09-25 16:47:15,690 - INFO - *********************************************************************************************************************** +2026-09-25 16:47:15,691 - INFO - * Calcul des statistiques par entrées d'une BD Therion * +2026-09-25 16:47:15,691 - INFO - * Script pyThStat par : alexandre.pont@yahoo.fr * +2026-09-25 16:47:15,692 - INFO - * Version : 2026.09.25 * +2026-09-25 16:47:15,692 - INFO - * Fichier source : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql * +2026-09-25 16:47:15,692 - INFO - * Dossier destination : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats * +2026-09-25 16:47:15,692 - INFO - * Date : 2026-09-25 16h47m15s * +2026-09-25 16:47:15,693 - INFO - * Mode : sync * +2026-09-25 16:47:15,693 - INFO - *********************************************************************************************************************** +2026-09-25 16:47:15,694 - INFO - Phase 1: Importation de la base de données Therion ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql dans: ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats.db +2026-09-25 16:47:18,753 - INFO - Phase 2: Création des nouvelles tables, indexation +2026-09-25 16:47:19,080 - INFO - Jonction de SHOT equates, nbre: 2580 +2026-09-25 16:52:05,791 - INFO - *********************************************************************************************************************** +2026-09-25 16:52:05,792 - INFO - * Calcul des statistiques par entrées d'une BD Therion * +2026-09-25 16:52:05,792 - INFO - * Script pyThStat par : alexandre.pont@yahoo.fr * +2026-09-25 16:52:05,792 - INFO - * Version : 2026.09.25 * +2026-09-25 16:52:05,793 - INFO - * Fichier source : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql * +2026-09-25 16:52:05,793 - INFO - * Dossier destination : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats * +2026-09-25 16:52:05,793 - INFO - * Date : 2026-09-25 16h52m05s * +2026-09-25 16:52:05,793 - INFO - * Mode : sync * +2026-09-25 16:52:05,794 - INFO - *********************************************************************************************************************** +2026-09-25 16:52:05,795 - INFO - Phase 1: Importation de la base de données Therion ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql dans: ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats.db +2026-09-25 16:52:08,557 - INFO - Phase 2: Création des nouvelles tables, indexation +2026-09-25 16:52:08,857 - INFO - Jonction de SHOT equates, nbre: 2580 +2026-09-25 16:55:11,015 - WARNING - Table des SHOT, visée(s) bloquante(s), même départ et arrivée, longueur nulle supprimée(s), nbre: 1688 +2026-09-25 16:55:12,749 - INFO - Table des SHOT, visées dupliquées traités, nbre: 19 +2026-09-25 16:55:12,965 - INFO - Création de l'index des tables principales et optimisation de la mémoire +2026-09-25 16:55:13,091 - INFO - Marquage des visées et des stations d'habillage, nbre: 19021 +2026-09-25 16:56:05,633 - INFO - Phase 3: Remplissage des tables d'après les 64171 entrée(s) +2026-09-25 16:56:05,639 - INFO - Table des STATION entrée et fix, nbre: 194 +2026-09-25 16:56:05,680 - INFO - Phase 4: Remplissage des tables d'après les séries vides jonctionnées aux 194 entrée(s) +on 1423: 2026-09-25 16:56:23,587 - INFO - Jonction à la Station_ID: 49335 entre les entrées 49456 et 49327 +on 3318: 2026-09-25 16:56:45,276 - INFO - Jonction à la Station_ID: 229 entre les entrées 218 et 834 +on 3357: 2026-09-25 16:56:46,060 - INFO - Jonction à la Station_ID: 3525 entre les entrées 3455 et 3525 +on 6351: 2026-09-25 16:57:20,739 - INFO - Jonction à la Station_ID: 1666 entre les entrées 1613 et 2784 +on 9158: 2026-09-25 16:58:28,171 - INFO - Jonction à la Station_ID: 3348 entre les entrées 3358 et 3397 +on 9594: 2026-09-25 16:58:43,664 - INFO - Jonction à la Station_ID: 48093 entre les entrées 49183 et 48104 +on 9622: 2026-09-25 16:58:47,830 - INFO - Jonction à la Station_ID: 49838 entre les entrées 49183 et 49803 +on 10275: 2026-09-25 16:59:02,939 - INFO - Jonction à la Station_ID: 40146 entre les entrées 38328 et 39667 +on 12587: 2026-09-25 17:00:04,043 - INFO - Jonction à la Station_ID: 47396 entre les entrées 48104 et 47360 +on 13062: 2026-09-25 17:00:15,401 - INFO - Jonction à la Station_ID: 9041 entre les entrées 10902 et 8905 +on 15553: 2026-09-25 17:01:23,971 - INFO - Jonction à la Station_ID: 12059 entre les entrées 10902 et 12987 +on 16763: 2026-09-25 17:01:53,334 - INFO - Jonction à la Station_ID: 9337 entre les entrées 14852 et 10902 +on 16763: 2026-09-25 17:01:53,348 - INFO - Jonction à la Station_ID: 9337 entre les entrées 14852 et 10902 +on 16817: 2026-09-25 17:01:55,341 - INFO - Jonction à la Station_ID: 9547 entre les entrées 9884 et 9366 +on 17832: 2026-09-25 17:02:26,728 - INFO - Jonction à la Station_ID: 12777 entre les entrées 10902 et 14852 +on 17833: 2026-09-25 17:02:26,819 - INFO - Jonction à la Station_ID: 9338 entre les entrées 10902 et 14852 +on 17833: 2026-09-25 17:02:26,901 - INFO - Jonction à la Station_ID: 12777 entre les entrées 10902 et 14852 +on 18972: 2026-09-25 17:02:54,687 - INFO - Jonction à la Station_ID: 12771 entre les entrées 14852 et 9366 +on 19046: 2026-09-25 17:02:58,500 - INFO - Jonction à la Station_ID: 17222 entre les entrées 16774 et 10902 +on 21114: 2026-09-25 17:03:55,184 - INFO - Jonction à la Station_ID: 15570 entre les entrées 8905 et 9366 +on 21600: 2026-09-25 17:04:09,586 - INFO - Jonction à la Station_ID: 47077 entre les entrées 49183 et 49089 +on 23056: 2026-09-25 17:04:49,226 - INFO - Jonction à la Station_ID: 15611 entre les entrées 9366 et 8905 +on 23137: 2026-09-25 17:04:51,614 - INFO - Jonction à la Station_ID: 15557 entre les entrées 8905 et 9366 +on 23142: 2026-09-25 17:04:51,706 - INFO - Jonction à la Station_ID: 9477 entre les entrées 8905 et 14852 +on 23144: 2026-09-25 17:04:51,940 - INFO - Jonction à la Station_ID: 9834 entre les entrées 14852 et 11338 +on 24975: 2026-09-25 17:05:47,136 - INFO - Jonction à la Station_ID: 16242 entre les entrées 15665 et 14852 +on 25697: 2026-09-25 17:06:11,697 - INFO - Jonction à la Station_ID: 16259 entre les entrées 10902 et 14852 +on 25981: 2026-09-25 17:06:22,742 - INFO - Jonction à la Station_ID: 50263 entre les entrées 50909 et 50130 +on 28328: 2026-09-25 17:07:22,128 - INFO - Jonction à la Station_ID: 9522 entre les entrées 16789 et 9366 +on 28497: 2026-09-25 17:07:28,936 - INFO - Jonction à la Station_ID: 44662 entre les entrées 49456 et 43628 +on 29909: 2026-09-25 17:08:06,745 - INFO - Jonction à la Station_ID: 44814 entre les entrées 48104 et 49456 +on 30963: 2026-09-25 17:08:34,847 - INFO - Jonction à la Station_ID: 16483 entre les entrées 15665 et 10902 +on 31414: 2026-09-25 17:08:50,770 - INFO - Jonction à la Station_ID: 17453 entre les entrées 19538 et 17667 +on 31827: 2026-09-25 17:08:58,838 - INFO - Jonction à la Station_ID: 25261 entre les entrées 27454 et 24729 +2026-09-25 17:15:42,526 - INFO - Intégrations des visées orphelines (entre 2 stations existantes), nbre: 340 +2026-09-25 17:15:51,202 - INFO - Réseau: 1, entrées jonctionnées: 10, [11338, 14852, 8905, 9366, 10902, 15665, 9884, 16789, 12987, 16774] +2026-09-25 17:15:51,336 - INFO - Réseau: 2, entrées jonctionnées: 2, [3397, 3358] +2026-09-25 17:15:51,853 - INFO - Réseau: 3, entrées jonctionnées: 8, [43628, 49456, 48104, 49327, 47360, 49183, 49089, 49803] +2026-09-25 17:15:52,002 - INFO - Réseau: 4, entrées jonctionnées: 2, [1613, 2784] +2026-09-25 17:15:52,130 - INFO - Réseau: 5, entrées jonctionnées: 2, [3455, 3525] +2026-09-25 17:15:52,318 - INFO - Réseau: 6, entrées jonctionnées: 2, [24729, 27454] +2026-09-25 17:15:52,564 - INFO - Réseau: 7, entrées jonctionnées: 2, [834, 218] +2026-09-25 17:15:52,719 - INFO - Réseau: 8, entrées jonctionnées: 2, [38328, 39667] +2026-09-25 17:15:52,873 - INFO - Réseau: 9, entrées jonctionnées: 2, [50130, 50909] +2026-09-25 17:15:53,057 - INFO - Réseau: 10, entrées jonctionnées: 2, [17667, 19538] +2026-09-25 17:15:54,300 - WARNING - Phase 4: Fin du remplissage des tables, attention 82 station(s) non comptabilisé(s) +2026-09-25 17:15:54,469 - INFO - Phase 5: Écriture des statistiques dans le fichier: ~\Synthese-PSM_LARRA\Outputs\readme +2026-09-25 17:15:54,472 - INFO - Table des CENTRELINE, longueur: [(340302.67, 15575.02, 8956.61)] +2026-09-25 17:17:51,665 - INFO - Table des STATION entrée et fix, nbre: 194 +2026-09-25 17:19:27,421 - INFO - Phase 5: Fin de traitement en 27 (m) 21 (s), résultats enregistrés dans ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats +2026-09-25 17:19:27,425 - INFO - Execution terminée sans erreur en 27(m)21(s) +2026-09-25 17:58:56,870 - INFO - *********************************************************************************************************************** +2026-09-25 17:58:56,871 - INFO - * Calcul des statistiques par entrées d'une BD Therion * +2026-09-25 17:58:56,871 - INFO - * Script pyThStat par : alexandre.pont@yahoo.fr * +2026-09-25 17:58:56,872 - INFO - * Version : 2026.09.25 * +2026-09-25 17:58:56,872 - INFO - * Fichier source : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql * +2026-09-25 17:58:56,872 - INFO - * Dossier destination : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats * +2026-09-25 17:58:56,873 - INFO - * Date : 2026-09-25 17h58m56s * +2026-09-25 17:58:56,873 - INFO - * Mode : sync * +2026-09-25 17:58:56,873 - INFO - *********************************************************************************************************************** +2026-09-25 17:58:56,876 - INFO - Phase 1: Importation de la base de données Therion ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql dans: ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats.db +2026-09-25 17:59:00,541 - INFO - Phase 2: Création des nouvelles tables, indexation +2026-09-25 17:59:00,911 - INFO - Jonction de SHOT equates, nbre: 2580 +2026-09-25 18:02:49,702 - INFO - *********************************************************************************************************************** +2026-09-25 18:02:49,703 - INFO - * Calcul des statistiques par entrées d'une BD Therion * +2026-09-25 18:02:49,703 - INFO - * Script pyThStat par : alexandre.pont@yahoo.fr * +2026-09-25 18:02:49,703 - INFO - * Version : 2026.09.25 * +2026-09-25 18:02:49,704 - INFO - * Fichier source : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql * +2026-09-25 18:02:49,704 - INFO - * Dossier destination : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats * +2026-09-25 18:02:49,704 - INFO - * Date : 2026-09-25 18h02m49s * +2026-09-25 18:02:49,705 - INFO - * Mode : sync * +2026-09-25 18:02:49,705 - INFO - *********************************************************************************************************************** +2026-09-25 18:02:49,708 - INFO - Phase 1: Importation de la base de données Therion ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql dans: ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats.db +2026-09-25 18:02:54,221 - INFO - Phase 2: Création des nouvelles tables, indexation +2026-09-25 18:02:54,679 - INFO - Jonction de SHOT equates, nbre: 2580 +2026-09-25 18:07:31,851 - WARNING - Table des SHOT, visée(s) bloquante(s), même départ et arrivée, longueur nulle supprimée(s), nbre: 1688 +2026-09-25 18:07:34,662 - INFO - Table des SHOT, visées dupliquées traités, nbre: 19 +2026-09-25 18:07:35,072 - INFO - Création de l'index des tables principales et optimisation de la mémoire +2026-09-25 18:07:35,285 - INFO - Marquage des visées et des stations d'habillage, nbre: 19021 +2026-09-25 18:09:08,064 - INFO - Phase 3: Remplissage des tables d'après les 64171 entrée(s) +2026-09-25 18:09:08,072 - INFO - Table des STATION entrée et fix, nbre: 194 +2026-09-25 18:09:08,122 - INFO - Phase 4: Remplissage des tables d'après les séries vides jonctionnées aux 194 entrée(s) +on 1423: 2026-09-25 18:09:27,468 - INFO - Jonction à la Station_ID: 49335 entre les entrées 49456 et 49327 +on 3318: 2026-09-25 18:09:50,453 - INFO - Jonction à la Station_ID: 229 entre les entrées 218 et 834 +on 3357: 2026-09-25 18:09:51,295 - INFO - Jonction à la Station_ID: 3525 entre les entrées 3455 et 3525 +on 6351: 2026-09-25 18:11:00,212 - INFO - Jonction à la Station_ID: 1666 entre les entrées 1613 et 2784 +on 9158: 2026-09-25 18:12:22,402 - INFO - Jonction à la Station_ID: 3348 entre les entrées 3358 et 3397 +on 9594: 2026-09-25 18:12:38,943 - INFO - Jonction à la Station_ID: 48093 entre les entrées 49183 et 48104 +on 9622: 2026-09-25 18:12:41,762 - INFO - Jonction à la Station_ID: 49838 entre les entrées 49183 et 49803 +on 10275: 2026-09-25 18:12:56,901 - INFO - Jonction à la Station_ID: 40146 entre les entrées 38328 et 39667 +on 12587: 2026-09-25 18:13:58,237 - INFO - Jonction à la Station_ID: 47396 entre les entrées 48104 et 47360 +on 13062: 2026-09-25 18:14:09,113 - INFO - Jonction à la Station_ID: 9041 entre les entrées 10902 et 8905 +on 15553: 2026-09-25 18:15:13,682 - INFO - Jonction à la Station_ID: 12059 entre les entrées 10902 et 12987 +on 16763: 2026-09-25 18:15:42,526 - INFO - Jonction à la Station_ID: 9337 entre les entrées 14852 et 10902 +on 16763: 2026-09-25 18:15:42,541 - INFO - Jonction à la Station_ID: 9337 entre les entrées 14852 et 10902 +on 16817: 2026-09-25 18:15:45,430 - INFO - Jonction à la Station_ID: 9547 entre les entrées 9884 et 9366 +on 17832: 2026-09-25 18:16:17,954 - INFO - Jonction à la Station_ID: 12777 entre les entrées 10902 et 14852 +on 17833: 2026-09-25 18:16:18,157 - INFO - Jonction à la Station_ID: 9338 entre les entrées 10902 et 14852 +on 17833: 2026-09-25 18:16:18,216 - INFO - Jonction à la Station_ID: 12777 entre les entrées 10902 et 14852 +on 18972: 2026-09-25 18:16:46,502 - INFO - Jonction à la Station_ID: 12771 entre les entrées 14852 et 9366 +on 19046: 2026-09-25 18:16:50,330 - INFO - Jonction à la Station_ID: 17222 entre les entrées 16774 et 10902 +on 21114: 2026-09-25 18:17:46,319 - INFO - Jonction à la Station_ID: 15570 entre les entrées 8905 et 9366 +on 21600: 2026-09-25 18:18:01,235 - INFO - Jonction à la Station_ID: 47077 entre les entrées 49183 et 49089 +on 23056: 2026-09-25 18:18:39,939 - INFO - Jonction à la Station_ID: 15611 entre les entrées 9366 et 8905 +on 23137: 2026-09-25 18:18:42,163 - INFO - Jonction à la Station_ID: 15557 entre les entrées 8905 et 9366 +on 23142: 2026-09-25 18:18:42,254 - INFO - Jonction à la Station_ID: 9477 entre les entrées 8905 et 14852 +on 23144: 2026-09-25 18:18:42,494 - INFO - Jonction à la Station_ID: 9834 entre les entrées 14852 et 11338 +on 24975: 2026-09-25 18:19:36,345 - INFO - Jonction à la Station_ID: 16242 entre les entrées 15665 et 14852 +on 25697: 2026-09-25 18:19:59,598 - INFO - Jonction à la Station_ID: 16259 entre les entrées 10902 et 14852 +on 25981: 2026-09-25 18:20:11,021 - INFO - Jonction à la Station_ID: 50263 entre les entrées 50909 et 50130 +on 28328: 2026-09-25 18:21:11,688 - INFO - Jonction à la Station_ID: 9522 entre les entrées 16789 et 9366 +on 28497: 2026-09-25 18:21:20,415 - INFO - Jonction à la Station_ID: 44662 entre les entrées 49456 et 43628 +on 29909: 2026-09-25 18:22:04,612 - INFO - Jonction à la Station_ID: 44814 entre les entrées 48104 et 49456 +on 30963: 2026-09-25 18:22:34,297 - INFO - Jonction à la Station_ID: 16483 entre les entrées 15665 et 10902 +on 31414: 2026-09-25 18:22:52,151 - INFO - Jonction à la Station_ID: 17453 entre les entrées 19538 et 17667 +on 31827: 2026-09-25 18:23:00,835 - INFO - Jonction à la Station_ID: 25261 entre les entrées 27454 et 24729 +2026-09-25 18:29:19,710 - INFO - Intégrations des visées orphelines (entre 2 stations existantes), nbre: 340 +2026-09-25 18:29:27,074 - INFO - Réseau: 1, entrées jonctionnées: 10, [11338, 14852, 8905, 9366, 10902, 15665, 9884, 16789, 12987, 16774] +2026-09-25 18:29:27,199 - INFO - Réseau: 2, entrées jonctionnées: 2, [3397, 3358] +2026-09-25 18:29:27,602 - INFO - Réseau: 3, entrées jonctionnées: 8, [43628, 49456, 48104, 49327, 47360, 49183, 49089, 49803] +2026-09-25 18:29:27,686 - INFO - Réseau: 4, entrées jonctionnées: 2, [1613, 2784] +2026-09-25 18:29:27,780 - INFO - Réseau: 5, entrées jonctionnées: 2, [3455, 3525] +2026-09-25 18:29:27,934 - INFO - Réseau: 6, entrées jonctionnées: 2, [24729, 27454] +2026-09-25 18:29:28,027 - INFO - Réseau: 7, entrées jonctionnées: 2, [834, 218] +2026-09-25 18:29:28,137 - INFO - Réseau: 8, entrées jonctionnées: 2, [38328, 39667] +2026-09-25 18:29:28,246 - INFO - Réseau: 9, entrées jonctionnées: 2, [50130, 50909] +2026-09-25 18:29:28,374 - INFO - Réseau: 10, entrées jonctionnées: 2, [17667, 19538] +2026-09-25 18:29:28,890 - WARNING - Phase 4: Fin du remplissage des tables, attention 82 station(s) non comptabilisé(s) +2026-09-25 18:29:29,061 - INFO - Phase 5: Écriture des statistiques dans le fichier: ~\Synthese-PSM_LARRA\Outputs\readme +2026-09-25 18:29:29,063 - INFO - Table des CENTRELINE, longueur: [(340302.67, 15575.02, 8956.61)] +2026-09-25 18:31:14,108 - INFO - Table des STATION entrée et fix, nbre: 194 +2026-09-25 18:32:29,198 - INFO - Phase 5: Fin de traitement en 29 (m) 39 (s), résultats enregistrés dans ~\Outputs\DB_Synthese-PSM_LARRA_Stats\DB_Synthese-PSM_LARRA_stats +2026-09-25 18:32:29,203 - INFO - Execution terminée sans erreur en 29(m)39(s) diff --git a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_rose.pdf b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_rose.pdf index 3faba78..587ad2a 100644 Binary files a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_rose.pdf and b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_rose.pdf differ diff --git a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.csv b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.csv index ba50f1b..3b6a172 100644 --- a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.csv +++ b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.csv @@ -1,238 +1,238 @@ *********************************************************************************************************************** * Calcul des statistiques par entrées d'une BD Therion * * Script pyThStat par : alexandre.pont@yahoo.fr * -* Version : 2026.09.03 * +* Version : 2026.09.25 * * Fichier source : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql * * Dossier destination : ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats * -* Date : 2026-09-03 21h50m35s * -* Durée calcul : 02 (m) 32 (s) sans erreur * +* Date : 2026-09-25 18h02m49s * +* Durée calcul : 29 (m) 39 (s) sans erreur * *********************************************************************************************************************** -**Développement total centerline (m):** développement: 340302.67 , dupliqué: 15575.02 , surface: 8956.61 +**Développement total centerline (m):** développement: 340302.67 , dupliqué: 15575.02 , surface: 8956.61 Attention, 82 station(s) non comptabilisée(s) et raccordée(s) Développement total par réseaux - Entrée(s) Nbre Dev.(m) Prof.(m) Dupl.(m) Surf.(m) Visées ID Sta. Alt. min(m) ID Sta. Alt. max(m) - Totaux (entrées et points fixes) 194 340302.68 2016.00 15575.02 8956.61 45150 ILLA13B 318.0 AN634 2334.00 - ERUSO, ODITA 2 61230.74 866.88 0.00 0.00 6345 LAR_d_15/16 568.12 ERUSO 1435.00 - C_104, C_2, C_226, C_50, D_9, LEPINEUX, M_31, M_413 8 48226.13 1113.08 7349.51 1.81 6021 - 1010.92 AN532 2124.00 - AN454, AN509, AN51, AN519, AN563, AN597, AN6, AN60, AN709, FR3 10 46208.59 859.07 329.07 7339.64 7484 AN43GA2 1319.13 AN509 2178.20 - 0, A60_GPS 2 41760.25 1204.65 3557.47 0.00 5594 S7-6 773.77 P1 1978.42 - ROBINET 1 12791.76 491.99 0.00 0.00 1478 ARP419/50 588.45 ARP338/21 1080.44 - LAK_1 1 10493.84 667.68 1481.76 0.00 1457 HF3 856.53 . 1524.21 - T_VENT, XEN 2 8676.45 548.79 1618.14 0.00 1062 LAR_d_478/2 966.47 _d_XEN_f_XX2 1515.26 - AN8, AN9 2 8226.55 805.22 0.00 0.00 898 AN8_d_1701 1007.78 AN9 1813.00 - AP_7 1 7233.06 377.95 116.43 0.00 1211 A 1327.05 AP_7 1705.00 - 0 1 7228.71 514.65 0.00 0.00 700 34 1460.35 0 1975.00 - B_3 1 6615.73 667.24 0.00 0.00 740 N-00 952.76 B_3 1620.00 - DS_49 1 5435.99 696.11 0.00 0.00 680 DS495/172 853.89 DS_49 1550.00 - BT_6 1 5212.26 670.59 0.00 0.00 744 BT6_d_2/641 947.41 BT_6 1618.00 - UK_4 1 4164.03 715.19 0.00 0.00 581 UK4_d_25/16 1083.81 VB11 1799.00 - LACS 1 4054.16 108.40 0.00 15.50 435 LAC_d_SORT27 529.73 LAC_d_MS7 638.13 - CHIPI 1 3512.87 553.48 0.00 0.00 572 CHI_d_46/6 941.52 CHIPI 1495.00 - RENARD 1 3338.53 208.44 0.00 0.00 395 REN_d_1/34 396.01 REN_d_2/15 604.45 - BG_63 1 3278.77 356.85 0.00 0.00 675 BG6322-31 1029.15 BG_63 1386.00 - GL_102, GL_4 2 3026.31 471.24 111.58 0.00 323 25 1164.76 GL_4 1636.00 - UK_557 1 2564.77 316.87 0.00 0.00 327 UK557_d_5/56 1828.13 A_4 2145.00 - E2000 1 2383.58 535.79 0.00 0.00 279 B38 1727.21 AN639 2263.00 - ALAHAIS 1 1892.89 136.24 0.00 0.00 253 ALA_d_6/11 795.76 ALAHAIS 932.00 - SC_60 1 1795.14 323.45 64.40 0.00 269 232 1838.77 2.4 2162.22 - M_326 1 1667.15 384.30 0.00 0.00 289 M3263/199 1725.70 M_326 2110.00 - L_5 1 1645.48 371.69 66.04 0.00 292 FL386.138.71 1651.31 L_5 2023.00 - AN43 1 1540.03 376.73 0.00 0.00 248 BG632-31 1349.27 AN43 1726.00 - Z_124 1 1412.20 379.71 0.00 0.00 117 39V 1349.71 A60_111 1729.42 - Z_127 1 1400.82 529.78 0.00 0.00 262 _d_Z127_f_264 1128.22 HP10 1658.00 - C_214 1 1064.44 420.12 0.00 0.00 157 C214_d_130 1513.88 C_214 1934.00 - Z_17 1 1011.10 404.84 0.00 0.00 115 Z17_d_11/5 1348.16 - 1753.00 - AN669 1 1002.32 352.95 0.00 23.59 168 FL15 1870.75 AN669 2223.70 - AN211, AN596 2 882.32 344.27 0.00 21.77 114 QR2_35 1715.79 HB20 2060.06 - MARTIN 1 874.76 244.16 0.00 0.00 98 MAR_d_10/4 575.84 MARTIN 820.00 - Z_510 1 852.63 237.20 162.35 0.00 185 M31_d_98/3 1406.80 - 1644.00 - C_230 1 836.03 268.62 0.00 0.00 135 _d_C230_f_164 1616.38 C_230 1885.00 - AN506 1 817.47 409.24 0.00 0.00 87 PF10 1754.06 AN506 2163.30 - M_414 1 807.45 351.32 40.10 0.00 119 M414_d_1/52 1762.68 AN109 2114.00 - BL_118 1 794.25 296.93 0.00 0.00 114 BL118_d_2/89 726.07 BL_118 1023.00 - Z_112 1 767.20 261.03 0.00 0.00 90 AN43DO11 1377.97 Z_112 1639.00 - GORRIA 1 750.26 431.36 0.00 0.00 137 GOR_d_6/32 1172.64 GORRIA 1604.00 - C_110 1 735.00 303.54 0.00 0.00 52 . 1479.46 C_110 1783.00 - Visée(s) non raccordées 0 727.76 - 0.00 0.00 81 AN514 2324.00 - - - C_243 1 673.74 186.53 0.00 0.00 84 C243_d_84 1752.47 UD13 1939.00 - AN26 1 658.53 256.95 0.00 0.00 107 AN26DA7 1462.05 AN26 1719.00 - AN_594 1 639.69 185.76 0.00 83.78 165 VB17 1770.24 AN_594 1956.00 - AN52, AN676A 2 616.56 100.93 0.00 51.08 165 BFF47 2069.07 AN52 2170.00 - AN_326 1 598.25 271.81 0.00 119.58 129 AN326CF11 1350.19 AN_324 1622.00 - AN595 1 570.06 291.30 0.00 92.15 92 FZ28 1957.20 AN595 2248.50 - STALAC 1 537.38 164.47 0.00 0.00 49 STALAC 530.00 STA_d_2/2 694.47 - BEAUF 1 530.65 281.98 0.00 0.00 67 BEAU2/10 1458.02 E20_d_226 1740.00 - Sima_1748 1 515.00 263.50 0.00 0.00 17 _d_1748_f_5.7 1484.50 Sima_1748 1748.00 - C_108 1 509.80 194.09 0.00 0.00 26 C1085_1 1702.91 C_108 1897.00 - Z_106 1 503.29 241.69 0.00 0.00 86 - 1383.31 FL386.160 1625.00 - ILLAMI 1 479.60 120.00 0.00 0.00 52 ILLA13B 318.00 ILLAMI 438.00 - CASCA 1 474.60 23.51 0.00 0.00 63 CAS_d_1/63 539.66 LAC_d_RD 563.17 - F_2 1 464.88 294.26 0.00 0.00 49 GDP1050/9 1687.74 M_13 1982.00 - AN109 1 436.21 253.70 0.00 0.00 73 QO2_13 1860.30 AN109 2114.00 - AN_702, AN_704 2 426.96 216.55 17.01 0.00 80 MHX33 1766.73 CX15 1983.28 - E22_00 1 410.70 312.59 0.00 0.00 43 E22_d_38 1948.41 E22_00 2261.00 - AN588 1 385.24 220.08 0.00 0.00 56 QS2 1862.92 AN588 2083.00 - AN58 1 373.97 127.99 0.00 24.34 81 XX17 2072.01 AN58 2200.00 - AN514 1 361.91 182.14 0.00 60.83 82 XI3 2143.31 QU6 2325.45 - SC_223 1 347.61 177.54 0.00 0.00 58 18 1981.10 SC212 2158.64 - Z_111 1 316.00 175.12 0.00 0.00 21 Z11113 1509.88 Z_111 1685.00 - AN3 1 310.92 205.15 0.00 44.73 53 QE18 1839.85 AN3 2045.00 - BOUQUE 1 297.11 144.44 0.00 0.00 52 BOU_d_4/6 1432.56 BOUQUE 1577.00 - AN534 1 291.51 133.81 0.00 178.10 64 QW19 2001.19 AN534 2135.00 - K7_00 1 278.70 190.43 0.00 0.00 15 MA22 1750.57 K7_00 1941.00 - AN591 1 268.36 102.32 0.00 0.00 55 IZ40 2044.68 AN591 2147.00 - M_405 1 255.79 185.38 0.00 0.00 46 M405_d_2/46 1939.62 AN107 2125.00 - A_106 1 253.98 126.55 0.00 0.00 61 A106_d_EA1 1521.45 A_106 1648.00 - AN73 1 248.35 210.40 0.00 38.50 23 ESF1 1861.60 AN73 2072.00 - ARPHIDIA 1 243.24 68.25 0.00 0.00 33 ARP100/33 985.75 ROBINET 1054.00 - AN107 1 242.97 161.77 0.00 14.50 48 AH6X 1963.23 AN107 2125.00 - ERE_80 1 240.75 158.68 0.00 0.00 18 LIN_d_1/10 1697.32 ERE_80 1856.00 - BB26 1 227.19 71.56 62.66 4.80 71 32d 1448.44 LT345_79DD 1520.00 - AN61 1 224.45 139.93 0.00 2.78 44 XA40 2076.57 AN61 2216.50 - E3_TSR3 1 220.56 120.89 0.00 0.00 40 F.44 1809.11 E3_TSR3 1930.00 - oueils 1 218.33 72.59 0.00 0.00 18 l1 617.41 oueils 690.00 - UT_140 1 209.48 187.18 0.00 0.00 19 UT140_d_1/19 940.82 UT_140 1128.00 - AP_337 1 208.06 118.44 0.00 0.00 25 AP_d_7A19 1631.56 AP_333 1750.00 - UK_559 1 206.95 70.13 0.00 0.00 53 UK559_d_1/22 1967.87 UK_559 2038.00 - AN103 1 204.38 92.68 0.00 42.98 52 KH7 2045.32 AN103 2138.00 - UK_D6 1 191.26 61.02 0.00 0.00 48 UKD6_d_1/11 1963.32 UKD6_d_2/7 2024.34 - Z_143 1 187.50 113.00 0.00 0.00 22 _d_Z143_f_14 1561.00 Z_143 1674.00 - AN456 1 156.69 107.52 0.00 0.00 36 UV7 1854.48 AN456 1962.00 - PYRENE 1 154.46 35.34 0.00 0.00 58 _d_PY_f_57 2274.76 _d_PY_f_3 2310.10 - AN548 1 153.85 50.43 5.62 10.18 30 HH3 2046.24 BA11 2096.67 - A_110 1 148.40 126.43 0.00 0.00 13 A110_d_1/13 1693.57 A_110 1820.00 - AN1 1 143.33 111.32 0.00 0.00 28 MD27 2057.68 AN1 2169.00 - Z208 1 140.65 47.61 0.00 0.00 21 Z208_d_4 1494.53 JK01 1542.14 - AN57 1 140.39 77.17 95.38 0.00 50 LK1 1995.23 BFF25 2072.40 - AN624 1 130.95 78.13 0.00 19.57 43 HD2 1870.87 AN624 1949.00 - MOUTON 1 128.55 43.84 0.00 0.00 19 LACS 535.00 MOU_d_3/3 578.84 - C_299 1 128.51 46.27 0.00 0.00 53 50 1966.53 2 2012.80 - AN542 1 128.43 76.76 0.00 0.00 20 PO01 2073.24 AN542 2150.00 - AN546 1 124.15 84.79 0.00 0.00 20 VX14 2182.21 AN546 2267.00 - AN619 1 122.42 65.84 0.00 0.00 19 QD11 1967.42 QD2 2033.26 - AN672 1 116.60 79.29 0.00 0.00 27 RO4 1883.71 AN672 1963.00 - AN567 1 112.67 75.18 0.00 0.00 17 FH1 2069.82 A_4 2145.00 - F_404 1 110.42 70.79 0.00 0.00 12 F404_d_2/3 1919.21 LT346_80UH 1990.00 - AN683 1 110.10 67.33 0.00 0.00 14 CK12 2082.67 AN542 2150.00 - AN561 1 109.01 88.93 0.00 0.00 17 AX18 2137.07 AN561 2226.00 - M_108 1 106.39 80.56 0.00 0.00 17 M108_d_1/15 1949.44 M_108 2030.00 - C_103 1 105.60 58.28 0.00 0.00 9 C103_d_1/5 1796.91 C103_d_1/1 1855.19 - Z_107 1 103.65 49.77 0.00 0.00 23 - 1610.23 Z_107 1660.00 - AN639 1 102.88 39.06 0.00 0.00 18 HF7 2223.94 AN639 2263.00 - Z_123 1 102.29 45.64 0.00 0.00 21 PE33 1652.61 EB45 1698.25 - A_4 1 99.18 51.51 0.00 31.01 27 SW11 2093.49 A_4 2145.00 - AN671 1 96.98 89.95 0.00 0.00 10 FM1 1868.05 AN671 1958.00 - M_400 1 94.53 88.87 0.00 0.00 9 PO07 2114.13 M_400 2203.00 - AN453 1 91.25 66.69 0.00 0.00 19 MFX11 1905.31 AN453 1972.00 - CUCC_5 1 89.00 42.88 0.00 0.00 14 CUCC5_d_9 1668.12 CUCC_5 1711.00 - AN507 1 88.22 56.14 0.00 9.06 20 HL5 2089.46 AN507 2145.60 - AN62 1 86.80 64.76 0.00 0.00 10 LJ2 2127.24 AN62 2192.00 - CUCC_4 1 86.60 56.50 0.00 0.00 11 CUCC4_d_8 1671.50 CUCC_4 1728.00 - AN708 1 79.05 31.86 0.00 2.19 23 JU2 2102.14 AN708 2134.00 - AN631 1 78.00 69.33 0.00 7.26 14 XB1 2175.67 AN631 2245.00 - MARMI 1 76.12 23.64 0.00 0.00 14 MARMI 2005.00 MARM1/12 2028.64 - C_213 1 75.96 51.79 0.00 0.00 18 _d_C213_f_AA7 1838.21 C_213 1890.00 - LAK_15 1 75.19 29.45 0.00 2.99 16 _d_LAK15_f_AA12 1505.55 LAK_15 1535.00 - IS_6B 1 74.90 61.87 0.00 0.00 10 IS6B_d_10 1667.13 IS_6B 1729.00 - AN616 1 69.84 53.77 0.00 0.00 14 UD2 1890.23 AN616 1944.00 - AN635 1 68.51 46.38 0.00 0.00 9 TD1 2268.62 AN635 2315.00 - AN627 1 67.93 15.78 0.00 11.22 25 FG6 2128.22 AN627 2144.00 - BB09 1 66.89 58.51 0.00 0.00 12 suite 1442.49 BB09 1501.00 - AN634 1 63.56 50.07 0.00 0.00 10 NA11 2283.93 AN634 2334.00 - AN564 1 60.62 30.84 0.00 0.00 10 FQ9 2124.16 AN564 2155.00 - AN_455 1 59.25 38.27 0.00 5.26 21 OZ0 1929.73 AN_455 1968.00 - AN692 1 58.83 45.51 0.00 6.95 20 GF1 1917.63 CY13 1963.14 - AN557 1 57.83 36.74 0.00 121.83 30 FS22 2080.11 FS6 2116.85 - BB27 1 57.60 26.51 17.50 0.00 22 15 1474.74 0 1501.25 - AN646 1 54.48 47.28 0.00 0.00 10 QC11 2114.72 AN646 2162.00 - AN536 1 54.27 10.39 0.00 13.33 19 BGG11 2099.25 BGG3 2109.64 - AN_465 1 53.34 18.72 0.00 39.73 23 PX11 2106.35 PX14 2125.07 - AN480 1 50.56 47.11 0.00 0.00 9 ZC8 1897.89 AN480 1945.00 - Z_108 1 49.64 9.59 0.00 0.00 15 _d_Z108_f_2.3 1675.08 _d_Z108_f_1.9 1684.67 - AP_45 1 47.80 17.95 0.00 0.00 8 AP45_d_3A 1684.05 AP_45 1702.00 - AN622 1 44.78 23.44 0.00 19.82 16 EL2 2010.56 AN622 2034.00 - AN576 1 44.01 27.71 0.00 0.00 8 JD1 2121.29 AN576 2149.00 - Z_100 1 43.32 34.66 0.00 0.00 7 - 1645.34 Z_100 1680.00 - IS9_00 1 43.13 30.43 0.00 0.00 9 GDP10/24 1755.57 IS9_00 1786.00 - AP_333 1 37.25 15.23 0.00 0.00 7 AP_d_3B07 1734.77 AP_333 1750.00 - AN66 1 33.99 32.95 0.00 5.08 6 JEX1 2078.05 JEX6 2111.00 - AN45 1 32.50 28.67 0.00 0.00 7 AN45-7 1627.33 AN45 1656.00 - AN37 1 32.00 27.68 0.00 0.00 6 AN376 1718.32 AN37 1746.00 - AN532 1 31.50 3.67 0.00 0.00 11 UW10 2121.19 UW01 2124.86 - AN711 1 31.00 5.85 0.00 0.00 10 NE8 2106.15 AN557 2112.00 - Z_444 1 26.44 6.21 0.00 0.00 9 _d_Z444_f_1.5 1679.79 QUI1.38 1686.00 - AN699 1 26.18 21.75 0.00 11.26 7 AH13 1984.25 AN699 2006.00 - BB_50 1 25.00 21.87 0.00 39.41 27 _d_BB50_f_FOND 1515.13 BB_50 1537.00 - AN_324 1 20.47 12.89 0.00 0.00 7 _d_AN324_f_5 1609.11 AN_324 1622.00 - AN_325 1 17.74 10.15 0.00 0.00 6 _d_AN325_f_6 1592.85 AN_325 1603.00 - LT345_79 1 0.00 40.00 0.00 120.00 6 LT345_79HH 1480.00 LT345_79DD 1520.00 - LT346_80 1 0.00 20.00 0.00 60.00 6 LT346_80UH 1990.00 LT346_80UD 2010.00 - LT344_80 1 0.00 20.00 0.00 60.00 6 LT346_80UH 1990.00 LT346_80UD 2010.00 - LT346_78 1 0.00 20.00 0.00 60.00 6 LT346_80UH 1990.00 LT346_80UD 2010.00 - LT344_78 1 0.00 20.00 0.00 60.00 6 LT346_80UH 1990.00 LT346_80UD 2010.00 - UT683_4757 1 0.00 0.00 0.00 20.00 2 LT346_80 2000.00 LT346_80 2000.00 - UT684_4757 1 0.00 0.00 0.00 20.00 2 LT346_80 2000.00 LT346_80 2000.00 - UT684_4758 1 0.00 0.00 0.00 20.00 2 LT346_80 2000.00 LT346_80 2000.00 - UT683_4758 1 0.00 0.00 0.00 20.00 2 LT346_80 2000.00 LT346_80 2000.00 - SC_3 1 0.00 40.00 120.00 0.00 6 4 2017.00 AN596 2057.00 - M_13 1 0.00 40.00 120.00 0.00 6 AN456 1962.00 B 2002.00 - SL_19 1 0.00 40.00 120.00 0.00 6 G 1747.00 - 1787.00 - HUET 1 0.00 40.00 120.00 0.00 6 CHI_d_38/1 1275.00 N 1315.00 - Entrée(s) sans topographie 5 0.00 245.00 0.00 0.00 0 LT345_79 1500.0 Z150_d_1_0 1745.00 + Réseaux Entrée(s) Nbre Dev.(m) Prof.(m) Dupl.(m) Surf.(m) Visées ID Sta. Alt. min(m) ID Sta. Alt. max(m) + Totaux 194 340302.68 2016.00 15575.02 8956.61 45150 ILLA13B 318.0 AN634 2334.00 + Complexe Arrestelia 555S700C2X164, 565S800C1X157 2 61230.74 866.88 0.00 0.00 6345 LAR_d_15/16 568.12 ERUSO 1435.00 + Complexe PSM GdP C104, C2 Gouffre des quinquas, C104, C2 Gouffre des quinquas, C226 Sima grande, SECTION001 - Puits C50 , D9 Gouffre de la tête sauvage, Puits Lépineux, M31 Gouffre du Pourtet, M413 Gouffre des partages 8 48226.13 1113.08 7349.51 1.81 6021 - 1010.92 AN532 2124.00 + Complexe Anialarra AN454-21-01, AN509-1, AN51 01, AN519 A AN519 B, AN563-14-16, AN597-16-1, AN6-02-01, AN60-11-00, AN709-20-01, FR3-FI06 16 10 46208.59 859.07 329.07 7339.64 7484 AN43GA2 1319.13 AN509 2178.20 + Complexe BU56 Ilamina ILAMINA - BU56 A60 Explo num 06, ILAMINA - BU56 A60 Explo num 62 2 41760.25 1204.65 3557.47 0.00 5594 S7-6 773.77 P1 1978.42 + 12S15C2X1 - 9S9C2X1 1 12791.76 491.99 0.00 0.00 1478 ARP419/50 588.45 ARP338/21 1080.44 + Grotte de l'Ours - Perdida del Becerro Explo num 32 1 10493.84 667.68 1481.76 0.00 1457 HF3 856.53 . 1524.21 + Complexe PSM GdP VER SECTION001 VER SECTION002 Tunnel de la Verna, Xendako ziloa 2 8676.45 548.79 1618.14 0.00 1062 LAR_d_478/2 966.47 _d_XEN_f_XX2 1515.26 + AN008 SECTION001, SECTION014 SECTION015 2 8226.55 805.22 0.00 0.00 898 AN8_d_1701 1007.78 AN9 1813.00 + Gouffre des arres planères AP7 1 7233.06 377.95 116.43 0.00 1211 A 1327.05 AP_7 1705.00 + Sima del Tobozo (galerie 1) 1 7228.71 514.65 0.00 0.00 700 34 1460.35 0 1975.00 + Gouffre des Bourrugues B3, entrée 01 : puits d'entrée 1 6615.73 667.24 0.00 0.00 740 N-00 952.76 B_3 1620.00 + 10S6C7X1 - 9S5C6X1 1 5435.99 696.11 0.00 0.00 680 DS495/172 853.89 DS_49 1550.00 + 1S1C1X1 2S2C1X1 3S3C1X1 1 5212.26 670.59 0.00 0.00 744 BT6_d_2/641 947.41 BT_6 1618.00 + 1S1C1X1 2S1C4X1 1 4164.03 715.19 0.00 0.00 581 UK4_d_25/16 1083.81 VB11 1799.00 + SECTION006 - SECTION009 1 4054.16 108.40 0.00 15.50 435 LAC_d_SORT27 529.73 LAC_d_MS7 638.13 + 10S10C1X1 - 9S9C1X1 1 3512.87 553.48 0.00 0.00 572 CHI_d_46/6 941.52 CHIPI 1495.00 + 1S1C1X1 - 9S9C1X1 1 3338.53 208.44 0.00 0.00 395 REN_d_1/34 396.01 REN_d_2/15 604.45 + SECTION001 1 3278.77 356.85 0.00 0.00 675 BG6322-31 1029.15 BG_63 1386.00 + Complexe Lonné Peyret-Bourrugues Gouffre du Lonné Peyret GL102 - Entrée, Gouffre du Cam de Caque GL04 2 3026.31 471.24 111.58 0.00 323 25 1164.76 GL_4 1636.00 + 17S17C1X1 18S17C3X1 19S18C1X1 1S1C1X1 1 2564.77 316.87 0.00 0.00 327 UK557_d_5/56 1828.13 A_4 2145.00 + SECTION001 1 2383.58 535.79 0.00 0.00 279 B38 1727.21 AN639 2263.00 + 1S1C1X1 1 1892.89 136.24 0.00 0.00 253 ALA_d_6/11 795.76 ALAHAIS 932.00 + SC 60 1 1795.14 323.45 64.40 0.00 269 232 1838.77 2.4 2162.22 + 1S1C1X1 2S2C1X1 3S3C1X1 5S4C1X1 7S5C1X1 1 1667.15 384.30 0.00 0.00 289 M3263/199 1725.70 M_326 2110.00 + L5 Entrée puits 1 1645.48 371.69 66.04 0.00 292 FL386.138.71 1651.31 L_5 2023.00 + AN43SECTION001 1 1540.03 376.73 0.00 0.00 248 BG632-31 1349.27 AN43 1726.00 + SECTION001 1 1412.20 379.71 0.00 0.00 117 39V 1349.71 A60_111 1729.42 + Z127 SECTION001 1 1400.82 529.78 0.00 0.00 262 _d_Z127_f_264 1128.22 HP10 1658.00 + C214 Sima de la niebla 1 1064.44 420.12 0.00 0.00 157 C214_d_130 1513.88 C_214 1934.00 + 10S10C1X1 - 9S9C1X1 1 1011.10 404.84 0.00 0.00 115 Z17_d_11/5 1348.16 - 1753.00 + AN669-10-20 1 1002.32 352.95 0.00 23.59 168 FL15 1870.75 AN669 2223.70 + Synthèse générale des réseaux de la Pierre Saint Martin-Larra AN211-93 S1, AN596-16-1 2 882.32 344.27 0.00 21.77 114 QR2_35 1715.79 HB20 2060.06 + 10S10C1X1 - 9S9C1X1 1 874.76 244.16 0.00 0.00 98 MAR_d_10/4 575.84 MARTIN 820.00 + Gouffre Z510 1 852.63 237.20 162.35 0.00 185 M31_d_98/3 1406.80 - 1644.00 + C230 Sima ricky et ses ours 1 836.03 268.62 0.00 0.00 135 _d_C230_f_164 1616.38 C_230 1885.00 + AN506 MO AN506 PF 1 817.47 409.24 0.00 0.00 87 PF10 1754.06 AN506 2163.30 + M414 (entrée) 1 807.45 351.32 40.10 0.00 119 M414_d_1/52 1762.68 AN109 2114.00 + 1S1C1X1 2S2C1X1 1 794.25 296.93 0.00 0.00 114 BL118_d_2/89 726.07 BL_118 1023.00 + Z112 SECTION001 1 767.20 261.03 0.00 0.00 90 AN43DO11 1377.97 Z_112 1639.00 + 1S1C1X1 1 750.26 431.36 0.00 0.00 137 GOR_d_6/32 1172.64 GORRIA 1604.00 + C110 1 735.00 303.54 0.00 0.00 52 . 1479.46 C_110 1783.00 + Visée(s) non raccordées 0 727.76 - 0.00 0.00 81 AN514 2324.00 - - + C243 Sima de los cairns 1 673.74 186.53 0.00 0.00 84 C243_d_84 1752.47 UD13 1939.00 + SECTION001 1 658.53 256.95 0.00 0.00 107 AN26DA7 1462.05 AN26 1719.00 + AN594-12-25 1 639.69 185.76 0.00 83.78 165 VB17 1770.24 AN_594 1956.00 + AN676-Helado AN676-FI11-16, AN676-FI11-10 2 616.56 100.93 0.00 51.08 165 BFF47 2069.07 AN52 2170.00 + AN326SECTION001 1 598.25 271.81 0.00 119.58 129 AN326CF11 1350.19 AN_324 1622.00 + AN595-FI10-25 1 570.06 291.30 0.00 92.15 92 FZ28 1957.20 AN595 2248.50 + 1S1C1X1 - 7S8C1X1 1 537.38 164.47 0.00 0.00 49 STALAC 530.00 STA_d_2/2 694.47 + 1S1C1X1 4S4C1X1 5S5C1X1 6S6C1X1 7S7C1X1 1 530.65 281.98 0.00 0.00 67 BEAU2/10 1458.02 E20_d_226 1740.00 + 1748 SECTION001 1 515.00 263.50 0.00 0.00 17 _d_1748_f_5.7 1484.50 Sima_1748 1748.00 + C108 Sima H 1 509.80 194.09 0.00 0.00 26 C1085_1 1702.91 C_108 1897.00 + 1S1C1X1 2S2C1X1 3S3C1X1 4S4C1X1 5S5C1X1 1 503.29 241.69 0.00 0.00 86 - 1383.31 FL386.160 1625.00 + SECTION001 SECTION002 1 479.60 120.00 0.00 0.00 52 ILLA13B 318.00 ILLAMI 438.00 + 1S1C1X1 1 474.60 23.51 0.00 0.00 63 CAS_d_1/63 539.66 LAC_d_RD 563.17 + 1S1C1X1 2S2C1X1 1 464.88 294.26 0.00 0.00 49 GDP1050/9 1687.74 M_13 1982.00 + AN109 S1 - AN109 S6 1 436.21 253.70 0.00 0.00 73 QO2_13 1860.30 AN109 2114.00 + Synthèse générale des réseaux de la Pierre Saint Martin-Larra AN702-19-01, AN704-19-01 2 426.96 216.55 17.01 0.00 80 MHX33 1766.73 CX15 1983.28 + SECTION001 1 410.70 312.59 0.00 0.00 43 E22_d_38 1948.41 E22_00 2261.00 + AN588-FI10-12 1 385.24 220.08 0.00 0.00 56 QS2 1862.92 AN588 2083.00 + AN58-2024-02 1 373.97 127.99 0.00 24.34 81 XX17 2072.01 AN58 2200.00 + AN514-08 14 1 361.91 182.14 0.00 60.83 82 XI3 2143.31 QU6 2325.45 + SC 223 1 347.61 177.54 0.00 0.00 58 18 1981.10 SC212 2158.64 + SECTION001 1 316.00 175.12 0.00 0.00 21 Z11113 1509.88 Z_111 1685.00 + AN3-2023-01 AN3-2023-02 1 310.92 205.15 0.00 44.73 53 QE18 1839.85 AN3 2045.00 + 1S1C1X1 1 297.11 144.44 0.00 0.00 52 BOU_d_4/6 1432.56 BOUQUE 1577.00 + AN534-01 AN534-02 1 291.51 133.81 0.00 178.10 64 QW19 2001.19 AN534 2135.00 + K7 Hourat det soure 1 278.70 190.43 0.00 0.00 15 MA22 1750.57 K7_00 1941.00 + AN591-FI11 20 1 268.36 102.32 0.00 0.00 55 IZ40 2044.68 AN591 2147.00 + 1S1C1X1 2S2C1X1 1 255.79 185.38 0.00 0.00 46 M405_d_2/46 1939.62 AN107 2125.00 + A106 SECTION001 1 253.98 126.55 0.00 0.00 61 A106_d_EA1 1521.45 A_106 1648.00 + AN73-86-05 1 248.35 210.40 0.00 38.50 23 ESF1 1861.60 AN73 2072.00 + 30S100C1X11 1 243.24 68.25 0.00 0.00 33 ARP100/33 985.75 ROBINET 1054.00 + AN107-03 12 1 242.97 161.77 0.00 14.50 48 AH6X 1963.23 AN107 2125.00 + 1S1C1X1 2S2C2X2 3S3C2X2 1 240.75 158.68 0.00 0.00 18 LIN_d_1/10 1697.32 ERE_80 1856.00 + BB26 zone d'entree 1 227.19 71.56 62.66 4.80 71 32d 1448.44 LT345_79DD 1520.00 + AN61 01 AN61 02 1 224.45 139.93 0.00 2.78 44 XA40 2076.57 AN61 2216.50 + 1S1C1X1 - 9S5C1X1 1 220.56 120.89 0.00 0.00 40 F.44 1809.11 E3_TSR3 1930.00 + Oueils exondé étiage 1 218.33 72.59 0.00 0.00 18 l1 617.41 oueils 690.00 + 1S1C1X1 1 209.48 187.18 0.00 0.00 19 UT140_d_1/19 940.82 UT_140 1128.00 + SECTION001 1 208.06 118.44 0.00 0.00 25 AP_d_7A19 1631.56 AP_333 1750.00 + 1S1C2X1 - 7S6C1X1 1 206.95 70.13 0.00 0.00 53 UK559_d_1/22 1967.87 UK_559 2038.00 + AN103 1 1 204.38 92.68 0.00 42.98 52 KH7 2045.32 AN103 2138.00 + 1S1C1X1 - 9S8C1X1 1 191.26 61.02 0.00 0.00 48 UKD6_d_1/11 1963.32 UKD6_d_2/7 2024.34 + Z143 SECTION001 1 187.50 113.00 0.00 0.00 22 _d_Z143_f_14 1561.00 Z_143 1674.00 + AN456-21-01 1 156.69 107.52 0.00 0.00 36 UV7 1854.48 AN456 1962.00 + SECTION001 1 154.46 35.34 0.00 0.00 58 _d_PY_f_57 2274.76 _d_PY_f_3 2310.10 + AN548-FI03 04 1 153.85 50.43 5.62 10.18 30 HH3 2046.24 BA11 2096.67 + 1S1C1X1 1 148.40 126.43 0.00 0.00 13 A110_d_1/13 1693.57 A_110 1820.00 + AN1 1 143.33 111.32 0.00 0.00 28 MD27 2057.68 AN1 2169.00 + Z208 SECTION001 Z208 SECTION002 1 140.65 47.61 0.00 0.00 21 Z208_d_4 1494.53 JK01 1542.14 + AN57-FI07-03 1 140.39 77.17 95.38 0.00 50 LK1 1995.23 BFF25 2072.40 + AN624-16-1 1 130.95 78.13 0.00 19.57 43 HD2 1870.87 AN624 1949.00 + 1S1C1X1 2S2C1X1 3S3C1X1 1 128.55 43.84 0.00 0.00 19 LACS 535.00 MOU_d_3/3 578.84 + C299 Gouffre belle gueule 1 128.51 46.27 0.00 0.00 53 50 1966.53 2 2012.80 + FI00 21 FI00 21b 1 128.43 76.76 0.00 0.00 20 PO01 2073.24 AN542 2150.00 + AN546-FI00 18 1 124.15 84.79 0.00 0.00 20 VX14 2182.21 AN546 2267.00 + AN619-13-16 1 122.42 65.84 0.00 0.00 19 QD11 1967.42 QD2 2033.26 + AN672-FI10-06 1 116.60 79.29 0.00 0.00 27 RO4 1883.71 AN672 1963.00 + FI02 05 1 112.67 75.18 0.00 0.00 17 FH1 2069.82 A_4 2145.00 + 1S1C1X1 2S2C1X1 3S3C1X1 1 110.42 70.79 0.00 0.00 12 F404_d_2/3 1919.21 LT346_80UH 1990.00 + AN683-FI12-31 1 110.10 67.33 0.00 0.00 14 CK12 2082.67 AN542 2150.00 + AN561 1 109.01 88.93 0.00 0.00 17 AX18 2137.07 AN561 2226.00 + 1S1C1X1 1 106.39 80.56 0.00 0.00 17 M108_d_1/15 1949.44 M_108 2030.00 + 1S1C1X1 2S2C1X1 3S3C1X1 1 105.60 58.28 0.00 0.00 9 C103_d_1/5 1796.91 C103_d_1/1 1855.19 + Z107 SECTION001 1 103.65 49.77 0.00 0.00 23 - 1610.23 Z_107 1660.00 + AN639-15-01 1 102.88 39.06 0.00 0.00 18 HF7 2223.94 AN639 2263.00 + Z123 SECTION001 1 102.29 45.64 0.00 0.00 21 PE33 1652.61 EB45 1698.25 + FI00 19 1 99.18 51.51 0.00 31.01 27 SW11 2093.49 A_4 2145.00 + AN671-16-1 1 96.98 89.95 0.00 0.00 10 FM1 1868.05 AN671 1958.00 + 1S1C1X1 1 94.53 88.87 0.00 0.00 9 PO07 2114.13 M_400 2203.00 + AN453-20-01 1 91.25 66.69 0.00 0.00 19 MFX11 1905.31 AN453 1972.00 + SECTION001 1 89.00 42.88 0.00 0.00 14 CUCC5_d_9 1668.12 CUCC_5 1711.00 + AN507-15-1 1 88.22 56.14 0.00 9.06 20 HL5 2089.46 AN507 2145.60 + FI02 16 1 86.80 64.76 0.00 0.00 10 LJ2 2127.24 AN62 2192.00 + SECTION001 1 86.60 56.50 0.00 0.00 11 CUCC4_d_8 1671.50 CUCC_4 1728.00 + AN708-19-1 1 79.05 31.86 0.00 2.19 23 JU2 2102.14 AN708 2134.00 + AN631 1 78.00 69.33 0.00 7.26 14 XB1 2175.67 AN631 2245.00 + 1S1C1X1 2S2C1X1 1 76.12 23.64 0.00 0.00 14 MARMI 2005.00 MARM1/12 2028.64 + C213 SECTION001 1 75.96 51.79 0.00 0.00 18 _d_C213_f_AA7 1838.21 C_213 1890.00 + LAK15 SECTION001 1 75.19 29.45 0.00 2.99 16 _d_LAK15_f_AA12 1505.55 LAK_15 1535.00 + SECTION001 1 74.90 61.87 0.00 0.00 10 IS6B_d_10 1667.13 IS_6B 1729.00 + AN616-15-1 1 69.84 53.77 0.00 0.00 14 UD2 1890.23 AN616 1944.00 + AN635-04-00 1 68.51 46.38 0.00 0.00 9 TD1 2268.62 AN635 2315.00 + AN627-14-21 1 67.93 15.78 0.00 11.22 25 FG6 2128.22 AN627 2144.00 + BB09 1 66.89 58.51 0.00 0.00 12 suite 1442.49 BB09 1501.00 + AN634 1 63.56 50.07 0.00 0.00 10 NA11 2283.93 AN634 2334.00 + AN564-17-1 1 60.62 30.84 0.00 0.00 10 FQ9 2124.16 AN564 2155.00 + AN455-23-01 1 59.25 38.27 0.00 5.26 21 OZ0 1929.73 AN_455 1968.00 + AN692-15-1 1 58.83 45.51 0.00 6.95 20 GF1 1917.63 CY13 1963.14 + AN5577-17-1 1 57.83 36.74 0.00 121.83 30 FS22 2080.11 FS6 2116.85 + BB27 1 57.60 26.51 17.50 0.00 22 15 1474.74 0 1501.25 + FI08 15 1 54.48 47.28 0.00 0.00 10 QC11 2114.72 AN646 2162.00 + AN536-FI12-07 1 54.27 10.39 0.00 13.33 19 BGG11 2099.25 BGG3 2109.64 + AN465-23-01 1 53.34 18.72 0.00 39.73 23 PX11 2106.35 PX14 2125.07 + AN480-21-01 1 50.56 47.11 0.00 0.00 9 ZC8 1897.89 AN480 1945.00 + Z108 SECTION001 1 49.64 9.59 0.00 0.00 15 _d_Z108_f_2.3 1675.08 _d_Z108_f_1.9 1684.67 + SECTION001 1 47.80 17.95 0.00 0.00 8 AP45_d_3A 1684.05 AP_45 1702.00 + AN622-14-05 1 44.78 23.44 0.00 19.82 16 EL2 2010.56 AN622 2034.00 + AN576 1 44.01 27.71 0.00 0.00 8 JD1 2121.29 AN576 2149.00 + Z100 SECTION001 1 43.32 34.66 0.00 0.00 7 - 1645.34 Z_100 1680.00 + SECTION001 1 43.13 30.43 0.00 0.00 9 GDP10/24 1755.57 IS9_00 1786.00 + SECTION001 1 37.25 15.23 0.00 0.00 7 AP_d_3B07 1734.77 AP_333 1750.00 + AN66 1 33.99 32.95 0.00 5.08 6 JEX1 2078.05 JEX6 2111.00 + AN45 SECTION001 1 32.50 28.67 0.00 0.00 7 AN45-7 1627.33 AN45 1656.00 + SECTION001 1 32.00 27.68 0.00 0.00 6 AN376 1718.32 AN37 1746.00 + AN532-FI00 22 1 31.50 3.67 0.00 0.00 11 UW10 2121.19 UW01 2124.86 + AN711-21-01 1 31.00 5.85 0.00 0.00 10 NE8 2106.15 AN557 2112.00 + Z444 SECTION001 1 26.44 6.21 0.00 0.00 9 _d_Z444_f_1.5 1679.79 QUI1.38 1686.00 + AN699-19-01 1 26.18 21.75 0.00 11.26 7 AH13 1984.25 AN699 2006.00 + BB50 SECTION001 1 25.00 21.87 0.00 39.41 27 _d_BB50_f_FOND 1515.13 BB_50 1537.00 + AN324 SECTION001 1 20.47 12.89 0.00 0.00 7 _d_AN324_f_5 1609.11 AN_324 1622.00 + AN325 SECTION001 1 17.74 10.15 0.00 0.00 6 _d_AN325_f_6 1592.85 AN_325 1603.00 + Lambert Square 1 0.00 40.00 0.00 120.00 6 LT345_79HH 1480.00 LT345_79DD 1520.00 + Lambert Square 1 0.00 20.00 0.00 60.00 6 LT346_80UH 1990.00 LT346_80UD 2010.00 + Lambert Square 1 0.00 20.00 0.00 60.00 6 LT346_80UH 1990.00 LT346_80UD 2010.00 + Lambert Square 1 0.00 20.00 0.00 60.00 6 LT346_80UH 1990.00 LT346_80UD 2010.00 + Lambert Square 1 0.00 20.00 0.00 60.00 6 LT346_80UH 1990.00 LT346_80UD 2010.00 + UTM Square 1 0.00 0.00 0.00 20.00 2 LT346_80 2000.00 LT346_80 2000.00 + UTM Square 1 0.00 0.00 0.00 20.00 2 LT346_80 2000.00 LT346_80 2000.00 + UTM Square 1 0.00 0.00 0.00 20.00 2 LT346_80 2000.00 LT346_80 2000.00 + UTM Square 1 0.00 0.00 0.00 20.00 2 LT346_80 2000.00 LT346_80 2000.00 + Entrées non racordées 1 0.00 40.00 120.00 0.00 6 4 2017.00 AN596 2057.00 + Entrées non racordées 1 0.00 40.00 120.00 0.00 6 AN456 1962.00 B 2002.00 + Entrées non racordées 1 0.00 40.00 120.00 0.00 6 G 1747.00 - 1787.00 + Entrées non racordées 1 0.00 40.00 120.00 0.00 6 CHI_d_38/1 1275.00 N 1315.00 + Entrée(s) sans topographie 5 0.00 245.00 0.00 0.00 0 LT345_79 1500.0 Z150_d_1_0 1745.00 Développement total topographié par année(s) - Année Dev.(m) Cumul (m) Dupl.(m) Cumul (m) Surf.(m) Cumul (m) - 1950 1724.74 1724.74 0.00 0.00 0.00 0.00 - 1971 2627.02 4351.76 116.43 116.43 0.00 0.00 - 1974 575.30 4927.06 0.00 116.43 0.00 0.00 - 1976 606.16 5533.22 0.00 116.43 0.00 0.00 - 1977 1411.32 6944.54 0.00 116.43 0.00 0.00 - 1978 2081.24 9025.78 0.00 116.43 0.00 0.00 - 1979 5031.79 14057.57 64.40 180.83 0.00 0.00 - 1980 940.79 14998.36 0.00 180.83 0.00 0.00 - 1981 4122.90 19121.26 0.00 180.83 0.00 0.00 - 1982 6422.46 25543.72 0.00 180.83 0.00 0.00 - 1983 8885.25 34428.97 1022.47 1203.30 0.00 0.00 - 1984 5635.70 40064.67 0.00 1203.30 0.00 0.00 - 1985 7594.11 47658.78 0.00 1203.30 0.00 0.00 - 1986 2747.84 50406.62 0.00 1203.30 38.50 38.50 - 1987 10648.06 61054.68 70.66 1273.96 0.00 38.50 - 1988 1310.71 62365.39 0.00 1273.96 0.00 38.50 - 1989 4088.49 66453.88 0.00 1273.96 0.00 38.50 - 1990 6920.12 73374.00 0.00 1273.96 0.00 38.50 - 1991 1164.14 74538.14 0.00 1273.96 0.00 38.50 - 1992 14467.22 89005.36 0.00 1273.96 0.00 38.50 - 1993 19380.69 108386.05 0.00 1273.96 0.00 38.50 - 1994 8749.22 117135.27 0.00 1273.96 0.00 38.50 - 1995 5661.53 122796.80 0.00 1273.96 0.00 38.50 - 1996 8964.07 131760.87 70.08 1344.04 0.00 38.50 - 1997 13193.45 144954.32 0.00 1344.04 0.00 38.50 - 1998 12640.07 157594.39 21.10 1365.14 0.00 38.50 - 1999 10657.59 168251.98 3706.31 5071.45 137.44 175.94 - 2000 6419.46 174671.44 1214.92 6286.37 409.80 585.74 - 2001 12440.67 187112.11 596.17 6882.54 27.39 613.13 - 2002 5107.89 192220.00 247.31 7129.85 45.44 658.57 - 2003 3927.29 196147.29 0.00 7129.85 406.12 1064.69 - 2004 2645.33 198792.62 11.06 7140.91 178.02 1242.71 - 2005 2733.71 201526.33 0.00 7140.91 405.03 1647.74 - 2006 7659.27 209185.60 80.00 7220.91 203.64 1851.38 - 2007 6496.08 215681.68 95.38 7316.29 9.35 1860.73 - 2008 4780.88 220462.56 0.00 7316.29 158.13 2018.86 - 2009 4993.39 225455.95 71.84 7388.13 875.47 2894.33 - 2010 4406.45 229862.40 404.20 7792.33 181.61 3075.94 - 2011 5698.22 235560.62 0.00 7792.33 309.63 3385.57 - 2012 9116.66 244677.28 0.00 7792.33 1382.85 4768.42 - 2013 9810.78 254488.06 7.42 7799.75 527.56 5295.98 - 2014 9800.55 264288.61 150.80 7950.55 286.91 5582.89 - 2015 8429.72 272718.33 1054.63 9005.18 1347.63 6930.52 - 2016 9689.42 282407.75 1381.39 10386.57 211.21 7141.73 - 2017 4858.50 287266.25 83.46 10470.03 294.39 7436.12 - 2018 7369.21 294635.46 395.87 10865.90 496.43 7932.55 - 2019 6017.18 300652.64 289.22 11155.12 266.20 8198.75 - 2020 5050.76 305703.40 265.07 11420.19 24.74 8223.49 - 2021 7945.59 313648.99 529.80 11949.99 315.77 8539.26 - 2022 6913.36 320562.35 1794.04 13744.03 42.40 8581.66 - 2023 6343.27 326905.62 1180.34 14924.37 79.70 8661.36 - 2024 7701.11 334606.73 547.76 15472.13 144.72 8806.08 - 2025 5695.94 340302.67 102.89 15575.02 150.53 8956.61 + Année Dev.(m) Cumul (m) Dupl.(m) Cumul (m) Surf.(m) Cumul (m) + 1950 1724.74 1724.74 0.00 0.00 0.00 0.00 + 1971 2627.02 4351.76 116.43 116.43 0.00 0.00 + 1974 575.30 4927.06 0.00 116.43 0.00 0.00 + 1976 606.16 5533.22 0.00 116.43 0.00 0.00 + 1977 1411.32 6944.54 0.00 116.43 0.00 0.00 + 1978 2081.24 9025.78 0.00 116.43 0.00 0.00 + 1979 5031.79 14057.57 64.40 180.83 0.00 0.00 + 1980 940.79 14998.36 0.00 180.83 0.00 0.00 + 1981 4122.90 19121.26 0.00 180.83 0.00 0.00 + 1982 6422.46 25543.72 0.00 180.83 0.00 0.00 + 1983 8885.25 34428.97 1022.47 1203.30 0.00 0.00 + 1984 5635.70 40064.67 0.00 1203.30 0.00 0.00 + 1985 7594.11 47658.78 0.00 1203.30 0.00 0.00 + 1986 2747.84 50406.62 0.00 1203.30 38.50 38.50 + 1987 10648.06 61054.68 70.66 1273.96 0.00 38.50 + 1988 1310.71 62365.39 0.00 1273.96 0.00 38.50 + 1989 4088.49 66453.88 0.00 1273.96 0.00 38.50 + 1990 6920.12 73374.00 0.00 1273.96 0.00 38.50 + 1991 1164.14 74538.14 0.00 1273.96 0.00 38.50 + 1992 14467.22 89005.36 0.00 1273.96 0.00 38.50 + 1993 19380.69 108386.05 0.00 1273.96 0.00 38.50 + 1994 8749.22 117135.27 0.00 1273.96 0.00 38.50 + 1995 5661.53 122796.80 0.00 1273.96 0.00 38.50 + 1996 8964.07 131760.87 70.08 1344.04 0.00 38.50 + 1997 13193.45 144954.32 0.00 1344.04 0.00 38.50 + 1998 12640.07 157594.39 21.10 1365.14 0.00 38.50 + 1999 10657.59 168251.98 3706.31 5071.45 137.44 175.94 + 2000 6419.46 174671.44 1214.92 6286.37 409.80 585.74 + 2001 12440.67 187112.11 596.17 6882.54 27.39 613.13 + 2002 5107.89 192220.00 247.31 7129.85 45.44 658.57 + 2003 3927.29 196147.29 0.00 7129.85 406.12 1064.69 + 2004 2645.33 198792.62 11.06 7140.91 178.02 1242.71 + 2005 2733.71 201526.33 0.00 7140.91 405.03 1647.74 + 2006 7659.27 209185.60 80.00 7220.91 203.64 1851.38 + 2007 6496.08 215681.68 95.38 7316.29 9.35 1860.73 + 2008 4780.88 220462.56 0.00 7316.29 158.13 2018.86 + 2009 4993.39 225455.95 71.84 7388.13 875.47 2894.33 + 2010 4406.45 229862.40 404.20 7792.33 181.61 3075.94 + 2011 5698.22 235560.62 0.00 7792.33 309.63 3385.57 + 2012 9116.66 244677.28 0.00 7792.33 1382.85 4768.42 + 2013 9810.78 254488.06 7.42 7799.75 527.56 5295.98 + 2014 9800.55 264288.61 150.80 7950.55 286.91 5582.89 + 2015 8429.72 272718.33 1054.63 9005.18 1347.63 6930.52 + 2016 9689.42 282407.75 1381.39 10386.57 211.21 7141.73 + 2017 4858.50 287266.25 83.46 10470.03 294.39 7436.12 + 2018 7369.21 294635.46 395.87 10865.90 496.43 7932.55 + 2019 6017.18 300652.64 289.22 11155.12 266.20 8198.75 + 2020 5050.76 305703.40 265.07 11420.19 24.74 8223.49 + 2021 7945.59 313648.99 529.80 11949.99 315.77 8539.26 + 2022 6913.36 320562.35 1794.04 13744.03 42.40 8581.66 + 2023 6343.27 326905.62 1180.34 14924.37 79.70 8661.36 + 2024 7701.11 334606.73 547.76 15472.13 144.72 8806.08 + 2025 5695.94 340302.67 102.89 15575.02 150.53 8956.61 diff --git a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.db b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.db index ed894ab..13dad5d 100644 Binary files a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.db and b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.db differ diff --git a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.md b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.md index 420d182..1f3fdd3 100644 --- a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.md +++ b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_stats.md @@ -6,8 +6,8 @@ | Version | 2026.09.03 | | Fichier source | ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql | | Dossier destination | ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats | -| Date | 2026-09-03 21h50m35s | -| Durée calcul |02 (m) 32 (s) sans erreur | +| Date | 2026-09-25 08h56m02s | +| Durée calcul |30 (m) 03 (s) avec erreur(s): 1 | -------------- ### Développement total (m) diff --git a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_year.pdf b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_year.pdf index fc73674..98271be 100644 Binary files a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_year.pdf and b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_year.pdf differ diff --git a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_yearCum.pdf b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_yearCum.pdf index cafee38..b902eaa 100644 Binary files a/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_yearCum.pdf and b/Outputs/DB_Synthese-PSM_LARRA_Stats/DB_Synthese-PSM_LARRA_yearCum.pdf differ diff --git a/Outputs/readme.md b/Outputs/readme.md new file mode 100644 index 0000000..6945c08 --- /dev/null +++ b/Outputs/readme.md @@ -0,0 +1,259 @@ +------------- +# Statistiques de `Synthèse générale des réseaux de la Pierre Saint Martin-Larra` +-------------- + +### Développement total + +Développement topographié: `340 302,67 (m)` +Développement topographie dupliqués: `15 575,02 (m)` +Développement topographie de surface: `8 956,61 (m)` +Soit un grand total de : `364 834,30 (m)` +> [!WARNING] `82` station(s) non comptabilisée(s) et raccordée(s) + + +-------------- +### Développement total par réseau +| Réseau | Entrée(s) | Nbre | Dev. (m) | Prof. (m) | Dupl. (m) | Surf. (m) | Visées | ID Stat. | Alt. min (m) | ID Stat. | Alt. max (m) | +|------------|------------|------------|------------|------------|------------|------------|------------|------------|------------|------------|------------| +| | **Totaux** | **194** | **340 302,68** | **2 016,00** | **15 575,02** | **8 956,61** | **45150** | **ILLA13B** | **318,00** | **AN634** | **2 334,00** | +| Complexe Arrestelia | 555S700C2X164, 565S800C1X157 | 2 | 61 230,74 | 866,88 | 0,00 | 0,00 | 6345 | LAR_d_15/16 | 568,12 | ERUSO | 1 435,00 | +| Complexe PSM GdP | C104, C2 Gouffre des quinquas, C104, C2 Gouffre des quinquas, C226 Sima grande, SECTION001 - Puits C50 , D9 Gouffre de la tête sauvage, Puits Lépineux, M31 Gouffre du Pourtet, M413 Gouffre des partages | 8 | 48 226,13 | 1 113,08 | 7 349,51 | 1,81 | 6021 | - | 1 010,92 | AN532 | 2 124,00 | +| Complexe Anialarra | AN454-21-01, AN509-1, AN51 01, AN519 A AN519 B, AN563-14-16, AN597-16-1, AN6-02-01, AN60-11-00, AN709-20-01, FR3-FI06 16 | 10 | 46 208,59 | 859,07 | 329,07 | 7 339,64 | 7484 | AN43GA2 | 1 319,13 | AN509 | 2 178,20 | +| Complexe BU56 Ilamina | ILAMINA - BU56 A60 Explo num 06, ILAMINA - BU56 A60 Explo num 62 | 2 | 41 760,25 | 1 204,65 | 3 557,47 | 0,00 | 5594 | S7-6 | 773,77 | P1 | 1 978,42 | +| | 12S15C2X1 - 9S9C2X1 | 1 | 12 791,76 | 491,99 | 0,00 | 0,00 | 1478 | ARP419/50 | 588,45 | ARP338/21 | 1 080,44 | +| | Grotte de l'Ours - Perdida del Becerro Explo num 32 | 1 | 10 493,84 | 667,68 | 1 481,76 | 0,00 | 1457 | HF3 | 856,53 | . | 1 524,21 | +| Complexe PSM GdP | VER SECTION001 VER SECTION002 Tunnel de la Verna, Xendako ziloa | 2 | 8 676,45 | 548,79 | 1 618,14 | 0,00 | 1062 | LAR_d_478/2 | 966,47 | _d_XEN_f_XX2 | 1 515,26 | +| AN008 | SECTION001, SECTION014 SECTION015 | 2 | 8 226,55 | 805,22 | 0,00 | 0,00 | 898 | AN8_d_1701 | 1 007,78 | AN9 | 1 813,00 | +| | Gouffre des arres planères AP7 | 1 | 7 233,06 | 377,95 | 116,43 | 0,00 | 1211 | A | 1 327,05 | AP_7 | 1 705,00 | +| | Sima del Tobozo (galerie 1) | 1 | 7 228,71 | 514,65 | 0,00 | 0,00 | 700 | 34 | 1 460,35 | 0 | 1 975,00 | +| | Gouffre des Bourrugues B3, entrée 01 : puits d'entrée | 1 | 6 615,73 | 667,24 | 0,00 | 0,00 | 740 | N-00 | 952,76 | B_3 | 1 620,00 | +| | 10S6C7X1 - 9S5C6X1 | 1 | 5 435,99 | 696,11 | 0,00 | 0,00 | 680 | DS495/172 | 853,89 | DS_49 | 1 550,00 | +| | 1S1C1X1 2S2C1X1 3S3C1X1 | 1 | 5 212,26 | 670,59 | 0,00 | 0,00 | 744 | BT6_d_2/641 | 947,41 | BT_6 | 1 618,00 | +| | 1S1C1X1 2S1C4X1 | 1 | 4 164,03 | 715,19 | 0,00 | 0,00 | 581 | UK4_d_25/16 | 1 083,81 | VB11 | 1 799,00 | +| | SECTION006 - SECTION009 | 1 | 4 054,16 | 108,40 | 0,00 | 15,50 | 435 | LAC_d_SORT27 | 529,73 | LAC_d_MS7 | 638,13 | +| | 10S10C1X1 - 9S9C1X1 | 1 | 3 512,87 | 553,48 | 0,00 | 0,00 | 572 | CHI_d_46/6 | 941,52 | CHIPI | 1 495,00 | +| | 1S1C1X1 - 9S9C1X1 | 1 | 3 338,53 | 208,44 | 0,00 | 0,00 | 395 | REN_d_1/34 | 396,01 | REN_d_2/15 | 604,45 | +| | SECTION001 | 1 | 3 278,77 | 356,85 | 0,00 | 0,00 | 675 | BG6322-31 | 1 029,15 | BG_63 | 1 386,00 | +| Complexe Lonné Peyret-Bourrugues | Gouffre du Lonné Peyret GL102 - Entrée, Gouffre du Cam de Caque GL04 | 2 | 3 026,31 | 471,24 | 111,58 | 0,00 | 323 | 25 | 1 164,76 | GL_4 | 1 636,00 | +| | 17S17C1X1 18S17C3X1 19S18C1X1 1S1C1X1 | 1 | 2 564,77 | 316,87 | 0,00 | 0,00 | 327 | UK557_d_5/56 | 1 828,13 | A_4 | 2 145,00 | +| | SECTION001 | 1 | 2 383,58 | 535,79 | 0,00 | 0,00 | 279 | B38 | 1 727,21 | AN639 | 2 263,00 | +| | 1S1C1X1 | 1 | 1 892,89 | 136,24 | 0,00 | 0,00 | 253 | ALA_d_6/11 | 795,76 | ALAHAIS | 932,00 | +| | SC 60 | 1 | 1 795,14 | 323,45 | 64,40 | 0,00 | 269 | 232 | 1 838,77 | 2.4 | 2 162,22 | +| | 1S1C1X1 2S2C1X1 3S3C1X1 5S4C1X1 7S5C1X1 | 1 | 1 667,15 | 384,30 | 0,00 | 0,00 | 289 | M3263/199 | 1 725,70 | M_326 | 2 110,00 | +| | L5 Entrée puits | 1 | 1 645,48 | 371,69 | 66,04 | 0,00 | 292 | FL386.138.71 | 1 651,31 | L_5 | 2 023,00 | +| | AN43SECTION001 | 1 | 1 540,03 | 376,73 | 0,00 | 0,00 | 248 | BG632-31 | 1 349,27 | AN43 | 1 726,00 | +| | SECTION001 | 1 | 1 412,20 | 379,71 | 0,00 | 0,00 | 117 | 39V | 1 349,71 | A60_111 | 1 729,42 | +| | Z127 SECTION001 | 1 | 1 400,82 | 529,78 | 0,00 | 0,00 | 262 | _d_Z127_f_264 | 1 128,22 | HP10 | 1 658,00 | +| | C214 Sima de la niebla | 1 | 1 064,44 | 420,12 | 0,00 | 0,00 | 157 | C214_d_130 | 1 513,88 | C_214 | 1 934,00 | +| | 10S10C1X1 - 9S9C1X1 | 1 | 1 011,10 | 404,84 | 0,00 | 0,00 | 115 | Z17_d_11/5 | 1 348,16 | - | 1 753,00 | +| | AN669-10-20 | 1 | 1 002,32 | 352,95 | 0,00 | 23,59 | 168 | FL15 | 1 870,75 | AN669 | 2 223,70 | +| Synthèse générale des réseaux de la Pierre Saint Martin-Larra | AN211-93 S1, AN596-16-1 | 2 | 882,32 | 344,27 | 0,00 | 21,77 | 114 | QR2_35 | 1 715,79 | HB20 | 2 060,06 | +| | 10S10C1X1 - 9S9C1X1 | 1 | 874,76 | 244,16 | 0,00 | 0,00 | 98 | MAR_d_10/4 | 575,84 | MARTIN | 820,00 | +| | Gouffre Z510 | 1 | 852,63 | 237,20 | 162,35 | 0,00 | 185 | M31_d_98/3 | 1 406,80 | - | 1 644,00 | +| | C230 Sima ricky et ses ours | 1 | 836,03 | 268,62 | 0,00 | 0,00 | 135 | _d_C230_f_164 | 1 616,38 | C_230 | 1 885,00 | +| | AN506 MO AN506 PF | 1 | 817,47 | 409,24 | 0,00 | 0,00 | 87 | PF10 | 1 754,06 | AN506 | 2 163,30 | +| | M414 (entrée) | 1 | 807,45 | 351,32 | 40,10 | 0,00 | 119 | M414_d_1/52 | 1 762,68 | AN109 | 2 114,00 | +| | 1S1C1X1 2S2C1X1 | 1 | 794,25 | 296,93 | 0,00 | 0,00 | 114 | BL118_d_2/89 | 726,07 | BL_118 | 1 023,00 | +| | Z112 SECTION001 | 1 | 767,20 | 261,03 | 0,00 | 0,00 | 90 | AN43DO11 | 1 377,97 | Z_112 | 1 639,00 | +| | 1S1C1X1 | 1 | 750,26 | 431,36 | 0,00 | 0,00 | 137 | GOR_d_6/32 | 1 172,64 | GORRIA | 1 604,00 | +| | C110 | 1 | 735,00 | 303,54 | 0,00 | 0,00 | 52 | . | 1 479,46 | C_110 | 1 783,00 | +| | Visée(s) non raccordées | 0 | 727,76 | - | 0,00 | 0,00 | 81 | AN514 | 2 324,00 | - | - | +| | C243 Sima de los cairns | 1 | 673,74 | 186,53 | 0,00 | 0,00 | 84 | C243_d_84 | 1 752,47 | UD13 | 1 939,00 | +| | SECTION001 | 1 | 658,53 | 256,95 | 0,00 | 0,00 | 107 | AN26DA7 | 1 462,05 | AN26 | 1 719,00 | +| | AN594-12-25 | 1 | 639,69 | 185,76 | 0,00 | 83,78 | 165 | VB17 | 1 770,24 | AN_594 | 1 956,00 | +| AN676-Helado | AN676-FI11-16, AN676-FI11-10 | 2 | 616,56 | 100,93 | 0,00 | 51,08 | 165 | BFF47 | 2 069,07 | AN52 | 2 170,00 | +| | AN326SECTION001 | 1 | 598,25 | 271,81 | 0,00 | 119,58 | 129 | AN326CF11 | 1 350,19 | AN_324 | 1 622,00 | +| | AN595-FI10-25 | 1 | 570,06 | 291,30 | 0,00 | 92,15 | 92 | FZ28 | 1 957,20 | AN595 | 2 248,50 | +| | 1S1C1X1 - 7S8C1X1 | 1 | 537,38 | 164,47 | 0,00 | 0,00 | 49 | STALAC | 530,00 | STA_d_2/2 | 694,47 | +| | 1S1C1X1 4S4C1X1 5S5C1X1 6S6C1X1 7S7C1X1 | 1 | 530,65 | 281,98 | 0,00 | 0,00 | 67 | BEAU2/10 | 1 458,02 | E20_d_226 | 1 740,00 | +| | 1748 SECTION001 | 1 | 515,00 | 263,50 | 0,00 | 0,00 | 17 | _d_1748_f_5.7 | 1 484,50 | Sima_1748 | 1 748,00 | +| | C108 Sima H | 1 | 509,80 | 194,09 | 0,00 | 0,00 | 26 | C1085_1 | 1 702,91 | C_108 | 1 897,00 | +| | 1S1C1X1 2S2C1X1 3S3C1X1 4S4C1X1 5S5C1X1 | 1 | 503,29 | 241,69 | 0,00 | 0,00 | 86 | - | 1 383,31 | FL386.160 | 1 625,00 | +| | SECTION001 SECTION002 | 1 | 479,60 | 120,00 | 0,00 | 0,00 | 52 | ILLA13B | 318,00 | ILLAMI | 438,00 | +| | 1S1C1X1 | 1 | 474,60 | 23,51 | 0,00 | 0,00 | 63 | CAS_d_1/63 | 539,66 | LAC_d_RD | 563,17 | +| | 1S1C1X1 2S2C1X1 | 1 | 464,88 | 294,26 | 0,00 | 0,00 | 49 | GDP1050/9 | 1 687,74 | M_13 | 1 982,00 | +| | AN109 S1 - AN109 S6 | 1 | 436,21 | 253,70 | 0,00 | 0,00 | 73 | QO2_13 | 1 860,30 | AN109 | 2 114,00 | +| Synthèse générale des réseaux de la Pierre Saint Martin-Larra | AN702-19-01, AN704-19-01 | 2 | 426,96 | 216,55 | 17,01 | 0,00 | 80 | MHX33 | 1 766,73 | CX15 | 1 983,28 | +| | SECTION001 | 1 | 410,70 | 312,59 | 0,00 | 0,00 | 43 | E22_d_38 | 1 948,41 | E22_00 | 2 261,00 | +| | AN588-FI10-12 | 1 | 385,24 | 220,08 | 0,00 | 0,00 | 56 | QS2 | 1 862,92 | AN588 | 2 083,00 | +| | AN58-2024-02 | 1 | 373,97 | 127,99 | 0,00 | 24,34 | 81 | XX17 | 2 072,01 | AN58 | 2 200,00 | +| | AN514-08 14 | 1 | 361,91 | 182,14 | 0,00 | 60,83 | 82 | XI3 | 2 143,31 | QU6 | 2 325,45 | +| | SC 223 | 1 | 347,61 | 177,54 | 0,00 | 0,00 | 58 | 18 | 1 981,10 | SC212 | 2 158,64 | +| | SECTION001 | 1 | 316,00 | 175,12 | 0,00 | 0,00 | 21 | Z11113 | 1 509,88 | Z_111 | 1 685,00 | +| | AN3-2023-01 AN3-2023-02 | 1 | 310,92 | 205,15 | 0,00 | 44,73 | 53 | QE18 | 1 839,85 | AN3 | 2 045,00 | +| | 1S1C1X1 | 1 | 297,11 | 144,44 | 0,00 | 0,00 | 52 | BOU_d_4/6 | 1 432,56 | BOUQUE | 1 577,00 | +| | AN534-01 AN534-02 | 1 | 291,51 | 133,81 | 0,00 | 178,10 | 64 | QW19 | 2 001,19 | AN534 | 2 135,00 | +| | K7 Hourat det soure | 1 | 278,70 | 190,43 | 0,00 | 0,00 | 15 | MA22 | 1 750,57 | K7_00 | 1 941,00 | +| | AN591-FI11 20 | 1 | 268,36 | 102,32 | 0,00 | 0,00 | 55 | IZ40 | 2 044,68 | AN591 | 2 147,00 | +| | 1S1C1X1 2S2C1X1 | 1 | 255,79 | 185,38 | 0,00 | 0,00 | 46 | M405_d_2/46 | 1 939,62 | AN107 | 2 125,00 | +| | A106 SECTION001 | 1 | 253,98 | 126,55 | 0,00 | 0,00 | 61 | A106_d_EA1 | 1 521,45 | A_106 | 1 648,00 | +| | AN73-86-05 | 1 | 248,35 | 210,40 | 0,00 | 38,50 | 23 | ESF1 | 1 861,60 | AN73 | 2 072,00 | +| | 30S100C1X11 | 1 | 243,24 | 68,25 | 0,00 | 0,00 | 33 | ARP100/33 | 985,75 | ROBINET | 1 054,00 | +| | AN107-03 12 | 1 | 242,97 | 161,77 | 0,00 | 14,50 | 48 | AH6X | 1 963,23 | AN107 | 2 125,00 | +| | 1S1C1X1 2S2C2X2 3S3C2X2 | 1 | 240,75 | 158,68 | 0,00 | 0,00 | 18 | LIN_d_1/10 | 1 697,32 | ERE_80 | 1 856,00 | +| | BB26 zone d'entree | 1 | 227,19 | 71,56 | 62,66 | 4,80 | 71 | 32d | 1 448,44 | LT345_79DD | 1 520,00 | +| | AN61 01 AN61 02 | 1 | 224,45 | 139,93 | 0,00 | 2,78 | 44 | XA40 | 2 076,57 | AN61 | 2 216,50 | +| | 1S1C1X1 - 9S5C1X1 | 1 | 220,56 | 120,89 | 0,00 | 0,00 | 40 | F.44 | 1 809,11 | E3_TSR3 | 1 930,00 | +| | Oueils exondé étiage | 1 | 218,33 | 72,59 | 0,00 | 0,00 | 18 | l1 | 617,41 | oueils | 690,00 | +| | 1S1C1X1 | 1 | 209,48 | 187,18 | 0,00 | 0,00 | 19 | UT140_d_1/19 | 940,82 | UT_140 | 1 128,00 | +| | SECTION001 | 1 | 208,06 | 118,44 | 0,00 | 0,00 | 25 | AP_d_7A19 | 1 631,56 | AP_333 | 1 750,00 | +| | 1S1C2X1 - 7S6C1X1 | 1 | 206,95 | 70,13 | 0,00 | 0,00 | 53 | UK559_d_1/22 | 1 967,87 | UK_559 | 2 038,00 | +| | AN103 1 | 1 | 204,38 | 92,68 | 0,00 | 42,98 | 52 | KH7 | 2 045,32 | AN103 | 2 138,00 | +| | 1S1C1X1 - 9S8C1X1 | 1 | 191,26 | 61,02 | 0,00 | 0,00 | 48 | UKD6_d_1/11 | 1 963,32 | UKD6_d_2/7 | 2 024,34 | +| | Z143 SECTION001 | 1 | 187,50 | 113,00 | 0,00 | 0,00 | 22 | _d_Z143_f_14 | 1 561,00 | Z_143 | 1 674,00 | +| | AN456-21-01 | 1 | 156,69 | 107,52 | 0,00 | 0,00 | 36 | UV7 | 1 854,48 | AN456 | 1 962,00 | +| | SECTION001 | 1 | 154,46 | 35,34 | 0,00 | 0,00 | 58 | _d_PY_f_57 | 2 274,76 | _d_PY_f_3 | 2 310,10 | +| | AN548-FI03 04 | 1 | 153,85 | 50,43 | 5,62 | 10,18 | 30 | HH3 | 2 046,24 | BA11 | 2 096,67 | +| | 1S1C1X1 | 1 | 148,40 | 126,43 | 0,00 | 0,00 | 13 | A110_d_1/13 | 1 693,57 | A_110 | 1 820,00 | +| | AN1 | 1 | 143,33 | 111,32 | 0,00 | 0,00 | 28 | MD27 | 2 057,68 | AN1 | 2 169,00 | +| | Z208 SECTION001 Z208 SECTION002 | 1 | 140,65 | 47,61 | 0,00 | 0,00 | 21 | Z208_d_4 | 1 494,53 | JK01 | 1 542,14 | +| | AN57-FI07-03 | 1 | 140,39 | 77,17 | 95,38 | 0,00 | 50 | LK1 | 1 995,23 | BFF25 | 2 072,40 | +| | AN624-16-1 | 1 | 130,95 | 78,13 | 0,00 | 19,57 | 43 | HD2 | 1 870,87 | AN624 | 1 949,00 | +| | 1S1C1X1 2S2C1X1 3S3C1X1 | 1 | 128,55 | 43,84 | 0,00 | 0,00 | 19 | LACS | 535,00 | MOU_d_3/3 | 578,84 | +| | C299 Gouffre belle gueule | 1 | 128,51 | 46,27 | 0,00 | 0,00 | 53 | 50 | 1 966,53 | 2 | 2 012,80 | +| | FI00 21 FI00 21b | 1 | 128,43 | 76,76 | 0,00 | 0,00 | 20 | PO01 | 2 073,24 | AN542 | 2 150,00 | +| | AN546-FI00 18 | 1 | 124,15 | 84,79 | 0,00 | 0,00 | 20 | VX14 | 2 182,21 | AN546 | 2 267,00 | +| | AN619-13-16 | 1 | 122,42 | 65,84 | 0,00 | 0,00 | 19 | QD11 | 1 967,42 | QD2 | 2 033,26 | +| | AN672-FI10-06 | 1 | 116,60 | 79,29 | 0,00 | 0,00 | 27 | RO4 | 1 883,71 | AN672 | 1 963,00 | +| | FI02 05 | 1 | 112,67 | 75,18 | 0,00 | 0,00 | 17 | FH1 | 2 069,82 | A_4 | 2 145,00 | +| | 1S1C1X1 2S2C1X1 3S3C1X1 | 1 | 110,42 | 70,79 | 0,00 | 0,00 | 12 | F404_d_2/3 | 1 919,21 | LT346_80UH | 1 990,00 | +| | AN683-FI12-31 | 1 | 110,10 | 67,33 | 0,00 | 0,00 | 14 | CK12 | 2 082,67 | AN542 | 2 150,00 | +| | AN561 | 1 | 109,01 | 88,93 | 0,00 | 0,00 | 17 | AX18 | 2 137,07 | AN561 | 2 226,00 | +| | 1S1C1X1 | 1 | 106,39 | 80,56 | 0,00 | 0,00 | 17 | M108_d_1/15 | 1 949,44 | M_108 | 2 030,00 | +| | 1S1C1X1 2S2C1X1 3S3C1X1 | 1 | 105,60 | 58,28 | 0,00 | 0,00 | 9 | C103_d_1/5 | 1 796,91 | C103_d_1/1 | 1 855,19 | +| | Z107 SECTION001 | 1 | 103,65 | 49,77 | 0,00 | 0,00 | 23 | - | 1 610,23 | Z_107 | 1 660,00 | +| | AN639-15-01 | 1 | 102,88 | 39,06 | 0,00 | 0,00 | 18 | HF7 | 2 223,94 | AN639 | 2 263,00 | +| | Z123 SECTION001 | 1 | 102,29 | 45,64 | 0,00 | 0,00 | 21 | PE33 | 1 652,61 | EB45 | 1 698,25 | +| | FI00 19 | 1 | 99,18 | 51,51 | 0,00 | 31,01 | 27 | SW11 | 2 093,49 | A_4 | 2 145,00 | +| | AN671-16-1 | 1 | 96,98 | 89,95 | 0,00 | 0,00 | 10 | FM1 | 1 868,05 | AN671 | 1 958,00 | +| | 1S1C1X1 | 1 | 94,53 | 88,87 | 0,00 | 0,00 | 9 | PO07 | 2 114,13 | M_400 | 2 203,00 | +| | AN453-20-01 | 1 | 91,25 | 66,69 | 0,00 | 0,00 | 19 | MFX11 | 1 905,31 | AN453 | 1 972,00 | +| | SECTION001 | 1 | 89,00 | 42,88 | 0,00 | 0,00 | 14 | CUCC5_d_9 | 1 668,12 | CUCC_5 | 1 711,00 | +| | AN507-15-1 | 1 | 88,22 | 56,14 | 0,00 | 9,06 | 20 | HL5 | 2 089,46 | AN507 | 2 145,60 | +| | FI02 16 | 1 | 86,80 | 64,76 | 0,00 | 0,00 | 10 | LJ2 | 2 127,24 | AN62 | 2 192,00 | +| | SECTION001 | 1 | 86,60 | 56,50 | 0,00 | 0,00 | 11 | CUCC4_d_8 | 1 671,50 | CUCC_4 | 1 728,00 | +| | AN708-19-1 | 1 | 79,05 | 31,86 | 0,00 | 2,19 | 23 | JU2 | 2 102,14 | AN708 | 2 134,00 | +| | AN631 | 1 | 78,00 | 69,33 | 0,00 | 7,26 | 14 | XB1 | 2 175,67 | AN631 | 2 245,00 | +| | 1S1C1X1 2S2C1X1 | 1 | 76,12 | 23,64 | 0,00 | 0,00 | 14 | MARMI | 2 005,00 | MARM1/12 | 2 028,64 | +| | C213 SECTION001 | 1 | 75,96 | 51,79 | 0,00 | 0,00 | 18 | _d_C213_f_AA7 | 1 838,21 | C_213 | 1 890,00 | +| | LAK15 SECTION001 | 1 | 75,19 | 29,45 | 0,00 | 2,99 | 16 | _d_LAK15_f_AA12 | 1 505,55 | LAK_15 | 1 535,00 | +| | SECTION001 | 1 | 74,90 | 61,87 | 0,00 | 0,00 | 10 | IS6B_d_10 | 1 667,13 | IS_6B | 1 729,00 | +| | AN616-15-1 | 1 | 69,84 | 53,77 | 0,00 | 0,00 | 14 | UD2 | 1 890,23 | AN616 | 1 944,00 | +| | AN635-04-00 | 1 | 68,51 | 46,38 | 0,00 | 0,00 | 9 | TD1 | 2 268,62 | AN635 | 2 315,00 | +| | AN627-14-21 | 1 | 67,93 | 15,78 | 0,00 | 11,22 | 25 | FG6 | 2 128,22 | AN627 | 2 144,00 | +| | BB09 | 1 | 66,89 | 58,51 | 0,00 | 0,00 | 12 | suite | 1 442,49 | BB09 | 1 501,00 | +| | AN634 | 1 | 63,56 | 50,07 | 0,00 | 0,00 | 10 | NA11 | 2 283,93 | AN634 | 2 334,00 | +| | AN564-17-1 | 1 | 60,62 | 30,84 | 0,00 | 0,00 | 10 | FQ9 | 2 124,16 | AN564 | 2 155,00 | +| | AN455-23-01 | 1 | 59,25 | 38,27 | 0,00 | 5,26 | 21 | OZ0 | 1 929,73 | AN_455 | 1 968,00 | +| | AN692-15-1 | 1 | 58,83 | 45,51 | 0,00 | 6,95 | 20 | GF1 | 1 917,63 | CY13 | 1 963,14 | +| | AN5577-17-1 | 1 | 57,83 | 36,74 | 0,00 | 121,83 | 30 | FS22 | 2 080,11 | FS6 | 2 116,85 | +| | BB27 | 1 | 57,60 | 26,51 | 17,50 | 0,00 | 22 | 15 | 1 474,74 | 0 | 1 501,25 | +| | FI08 15 | 1 | 54,48 | 47,28 | 0,00 | 0,00 | 10 | QC11 | 2 114,72 | AN646 | 2 162,00 | +| | AN536-FI12-07 | 1 | 54,27 | 10,39 | 0,00 | 13,33 | 19 | BGG11 | 2 099,25 | BGG3 | 2 109,64 | +| | AN465-23-01 | 1 | 53,34 | 18,72 | 0,00 | 39,73 | 23 | PX11 | 2 106,35 | PX14 | 2 125,07 | +| | AN480-21-01 | 1 | 50,56 | 47,11 | 0,00 | 0,00 | 9 | ZC8 | 1 897,89 | AN480 | 1 945,00 | +| | Z108 SECTION001 | 1 | 49,64 | 9,59 | 0,00 | 0,00 | 15 | _d_Z108_f_2.3 | 1 675,08 | _d_Z108_f_1.9 | 1 684,67 | +| | SECTION001 | 1 | 47,80 | 17,95 | 0,00 | 0,00 | 8 | AP45_d_3A | 1 684,05 | AP_45 | 1 702,00 | +| | AN622-14-05 | 1 | 44,78 | 23,44 | 0,00 | 19,82 | 16 | EL2 | 2 010,56 | AN622 | 2 034,00 | +| | AN576 | 1 | 44,01 | 27,71 | 0,00 | 0,00 | 8 | JD1 | 2 121,29 | AN576 | 2 149,00 | +| | Z100 SECTION001 | 1 | 43,32 | 34,66 | 0,00 | 0,00 | 7 | - | 1 645,34 | Z_100 | 1 680,00 | +| | SECTION001 | 1 | 43,13 | 30,43 | 0,00 | 0,00 | 9 | GDP10/24 | 1 755,57 | IS9_00 | 1 786,00 | +| | SECTION001 | 1 | 37,25 | 15,23 | 0,00 | 0,00 | 7 | AP_d_3B07 | 1 734,77 | AP_333 | 1 750,00 | +| | AN66 | 1 | 33,99 | 32,95 | 0,00 | 5,08 | 6 | JEX1 | 2 078,05 | JEX6 | 2 111,00 | +| | AN45 SECTION001 | 1 | 32,50 | 28,67 | 0,00 | 0,00 | 7 | AN45-7 | 1 627,33 | AN45 | 1 656,00 | +| | SECTION001 | 1 | 32,00 | 27,68 | 0,00 | 0,00 | 6 | AN376 | 1 718,32 | AN37 | 1 746,00 | +| | AN532-FI00 22 | 1 | 31,50 | 3,67 | 0,00 | 0,00 | 11 | UW10 | 2 121,19 | UW01 | 2 124,86 | +| | AN711-21-01 | 1 | 31,00 | 5,85 | 0,00 | 0,00 | 10 | NE8 | 2 106,15 | AN557 | 2 112,00 | +| | Z444 SECTION001 | 1 | 26,44 | 6,21 | 0,00 | 0,00 | 9 | _d_Z444_f_1.5 | 1 679,79 | QUI1.38 | 1 686,00 | +| | AN699-19-01 | 1 | 26,18 | 21,75 | 0,00 | 11,26 | 7 | AH13 | 1 984,25 | AN699 | 2 006,00 | +| | BB50 SECTION001 | 1 | 25,00 | 21,87 | 0,00 | 39,41 | 27 | _d_BB50_f_FOND | 1 515,13 | BB_50 | 1 537,00 | +| | AN324 SECTION001 | 1 | 20,47 | 12,89 | 0,00 | 0,00 | 7 | _d_AN324_f_5 | 1 609,11 | AN_324 | 1 622,00 | +| | AN325 SECTION001 | 1 | 17,74 | 10,15 | 0,00 | 0,00 | 6 | _d_AN325_f_6 | 1 592,85 | AN_325 | 1 603,00 | +| | Lambert Square | 1 | 0,00 | 40,00 | 0,00 | 120,00 | 6 | LT345_79HH | 1 480,00 | LT345_79DD | 1 520,00 | +| | Lambert Square | 1 | 0,00 | 20,00 | 0,00 | 60,00 | 6 | LT346_80UH | 1 990,00 | LT346_80UD | 2 010,00 | +| | Lambert Square | 1 | 0,00 | 20,00 | 0,00 | 60,00 | 6 | LT346_80UH | 1 990,00 | LT346_80UD | 2 010,00 | +| | Lambert Square | 1 | 0,00 | 20,00 | 0,00 | 60,00 | 6 | LT346_80UH | 1 990,00 | LT346_80UD | 2 010,00 | +| | Lambert Square | 1 | 0,00 | 20,00 | 0,00 | 60,00 | 6 | LT346_80UH | 1 990,00 | LT346_80UD | 2 010,00 | +| | UTM Square | 1 | 0,00 | 0,00 | 0,00 | 20,00 | 2 | LT346_80 | 2 000,00 | LT346_80 | 2 000,00 | +| | UTM Square | 1 | 0,00 | 0,00 | 0,00 | 20,00 | 2 | LT346_80 | 2 000,00 | LT346_80 | 2 000,00 | +| | UTM Square | 1 | 0,00 | 0,00 | 0,00 | 20,00 | 2 | LT346_80 | 2 000,00 | LT346_80 | 2 000,00 | +| | UTM Square | 1 | 0,00 | 0,00 | 0,00 | 20,00 | 2 | LT346_80 | 2 000,00 | LT346_80 | 2 000,00 | +| | Entrées non racordées | 1 | 0,00 | 40,00 | 120,00 | 0,00 | 6 | 4 | 2 017,00 | AN596 | 2 057,00 | +| | Entrées non racordées | 1 | 0,00 | 40,00 | 120,00 | 0,00 | 6 | AN456 | 1 962,00 | B | 2 002,00 | +| | Entrées non racordées | 1 | 0,00 | 40,00 | 120,00 | 0,00 | 6 | G | 1 747,00 | - | 1 787,00 | +| | Entrées non racordées | 1 | 0,00 | 40,00 | 120,00 | 0,00 | 6 | CHI_d_38/1 | 1 275,00 | N | 1 315,00 | +| | Entrée(s) sans topographie | 5 | 0,00 | 245,00 | 0,00 | 0,00 | 0 | LT345_79 | 1 500,00 | Z150_d_1_0 | 1 745,00 | + + +-------------- + +### Développement total topographié par année(s) +| Année | Dev. (m) | Cumul (m) | Dupl. (m) | Cumul (m) | Surf. (m) | Cumul (m) | +|---|---|---|---|---|---|---| +| 1950 | 1 724,74 | 1 724,74 | 0,00 | 0,00 | 0,00 | 0,00 | +| 1971 | 2 627,02 | 4 351,76 | 116,43 | 116,43 | 0,00 | 0,00 | +| 1974 | 575,30 | 4 927,06 | 0,00 | 116,43 | 0,00 | 0,00 | +| 1976 | 606,16 | 5 533,22 | 0,00 | 116,43 | 0,00 | 0,00 | +| 1977 | 1 411,32 | 6 944,54 | 0,00 | 116,43 | 0,00 | 0,00 | +| 1978 | 2 081,24 | 9 025,78 | 0,00 | 116,43 | 0,00 | 0,00 | +| 1979 | 5 031,79 | 14 057,57 | 64,40 | 180,83 | 0,00 | 0,00 | +| 1980 | 940,79 | 14 998,36 | 0,00 | 180,83 | 0,00 | 0,00 | +| 1981 | 4 122,90 | 19 121,26 | 0,00 | 180,83 | 0,00 | 0,00 | +| 1982 | 6 422,46 | 25 543,72 | 0,00 | 180,83 | 0,00 | 0,00 | +| 1983 | 8 885,25 | 34 428,97 | 1 022,47 | 1 203,30 | 0,00 | 0,00 | +| 1984 | 5 635,70 | 40 064,67 | 0,00 | 1 203,30 | 0,00 | 0,00 | +| 1985 | 7 594,11 | 47 658,78 | 0,00 | 1 203,30 | 0,00 | 0,00 | +| 1986 | 2 747,84 | 50 406,62 | 0,00 | 1 203,30 | 38,50 | 38,50 | +| 1987 | 10 648,06 | 61 054,68 | 70,66 | 1 273,96 | 0,00 | 38,50 | +| 1988 | 1 310,71 | 62 365,39 | 0,00 | 1 273,96 | 0,00 | 38,50 | +| 1989 | 4 088,49 | 66 453,88 | 0,00 | 1 273,96 | 0,00 | 38,50 | +| 1990 | 6 920,12 | 73 374,00 | 0,00 | 1 273,96 | 0,00 | 38,50 | +| 1991 | 1 164,14 | 74 538,14 | 0,00 | 1 273,96 | 0,00 | 38,50 | +| 1992 | 14 467,22 | 89 005,36 | 0,00 | 1 273,96 | 0,00 | 38,50 | +| 1993 | 19 380,69 | 108 386,05 | 0,00 | 1 273,96 | 0,00 | 38,50 | +| 1994 | 8 749,22 | 117 135,27 | 0,00 | 1 273,96 | 0,00 | 38,50 | +| 1995 | 5 661,53 | 122 796,80 | 0,00 | 1 273,96 | 0,00 | 38,50 | +| 1996 | 8 964,07 | 131 760,87 | 70,08 | 1 344,04 | 0,00 | 38,50 | +| 1997 | 13 193,45 | 144 954,32 | 0,00 | 1 344,04 | 0,00 | 38,50 | +| 1998 | 12 640,07 | 157 594,39 | 21,10 | 1 365,14 | 0,00 | 38,50 | +| 1999 | 10 657,59 | 168 251,98 | 3 706,31 | 5 071,45 | 137,44 | 175,94 | +| 2000 | 6 419,46 | 174 671,44 | 1 214,92 | 6 286,37 | 409,80 | 585,74 | +| 2001 | 12 440,67 | 187 112,11 | 596,17 | 6 882,54 | 27,39 | 613,13 | +| 2002 | 5 107,89 | 192 220,00 | 247,31 | 7 129,85 | 45,44 | 658,57 | +| 2003 | 3 927,29 | 196 147,29 | 0,00 | 7 129,85 | 406,12 | 1 064,69 | +| 2004 | 2 645,33 | 198 792,62 | 11,06 | 7 140,91 | 178,02 | 1 242,71 | +| 2005 | 2 733,71 | 201 526,33 | 0,00 | 7 140,91 | 405,03 | 1 647,74 | +| 2006 | 7 659,27 | 209 185,60 | 80,00 | 7 220,91 | 203,64 | 1 851,38 | +| 2007 | 6 496,08 | 215 681,68 | 95,38 | 7 316,29 | 9,35 | 1 860,73 | +| 2008 | 4 780,88 | 220 462,56 | 0,00 | 7 316,29 | 158,13 | 2 018,86 | +| 2009 | 4 993,39 | 225 455,95 | 71,84 | 7 388,13 | 875,47 | 2 894,33 | +| 2010 | 4 406,45 | 229 862,40 | 404,20 | 7 792,33 | 181,61 | 3 075,94 | +| 2011 | 5 698,22 | 235 560,62 | 0,00 | 7 792,33 | 309,63 | 3 385,57 | +| 2012 | 9 116,66 | 244 677,28 | 0,00 | 7 792,33 | 1 382,85 | 4 768,42 | +| 2013 | 9 810,78 | 254 488,06 | 7,42 | 7 799,75 | 527,56 | 5 295,98 | +| 2014 | 9 800,55 | 264 288,61 | 150,80 | 7 950,55 | 286,91 | 5 582,89 | +| 2015 | 8 429,72 | 272 718,33 | 1 054,63 | 9 005,18 | 1 347,63 | 6 930,52 | +| 2016 | 9 689,42 | 282 407,75 | 1 381,39 | 10 386,57 | 211,21 | 7 141,73 | +| 2017 | 4 858,50 | 287 266,25 | 83,46 | 10 470,03 | 294,39 | 7 436,12 | +| 2018 | 7 369,21 | 294 635,46 | 395,87 | 10 865,90 | 496,43 | 7 932,55 | +| 2019 | 6 017,18 | 300 652,64 | 289,22 | 11 155,12 | 266,20 | 8 198,75 | +| 2020 | 5 050,76 | 305 703,40 | 265,07 | 11 420,19 | 24,74 | 8 223,49 | +| 2021 | 7 945,59 | 313 648,99 | 529,80 | 11 949,99 | 315,77 | 8 539,26 | +| 2022 | 6 913,36 | 320 562,35 | 1 794,04 | 13 744,03 | 42,40 | 8 581,66 | +| 2023 | 6 343,27 | 326 905,62 | 1 180,34 | 14 924,37 | 79,70 | 8 661,36 | +| 2024 | 7 701,11 | 334 606,73 | 547,76 | 15 472,13 | 144,72 | 8 806,08 | +| 2025 | 5 695,94 | 340 302,67 | 102,89 | 15 575,02 | 150,53 | 8 956,61 | + + +-------------- +### Bilan final +| | | +| :---------------- | :--- | +| Script pyThStat par | alexandre.pont@yahoo.fr | +| Version | 2026.09.25 | +| Fichier source | ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA.sql | +| Dossier destination | ~\Synthese-PSM_LARRA\Outputs\DB_Synthese-PSM_LARRA_Stats | +| Date | 2026-09-25 18h02m49s | +| Durée calcul |29 (m) 39 (s) sans erreur | + +-------------- diff --git a/Scripts/pyCreateTh.log b/Scripts/pyCreateTh.log new file mode 100644 index 0000000..6841730 --- /dev/null +++ b/Scripts/pyCreateTh.log @@ -0,0 +1,11 @@ +2026-09-09 13:12:03,027 - INFO - ###################################################################################################################################################### +2026-09-09 13:12:03,028 - INFO - # Files conversion th, dat, mak, tro and trox to therion files and folders # +2026-09-09 13:12:03,028 - INFO - # Script pyCreateTh by : alexandre.pont@yahoo.fr # +2026-09-09 13:12:03,028 - INFO - # Version : 2026.01.08 # +2026-09-09 13:12:03,033 - INFO - # Input file : . # +2026-09-09 13:12:03,033 - INFO - # Output folder : . # +2026-09-09 13:12:03,033 - INFO - # Log file : pyCreateTh.log # +2026-09-09 13:12:03,034 - INFO - # Config file : config.ini, profile : CRIOU # +2026-09-09 13:12:03,034 - INFO - # # +2026-09-09 13:12:03,034 - INFO - ###################################################################################################################################################### +2026-09-09 13:12:03,034 - CRITICAL - !!! No valid file selected, try again diff --git a/Scripts/pyCreateTh/Template/Outputs/Outputs.md b/Scripts/pyCreateTh/Template/Outputs/Outputs.md new file mode 100644 index 0000000..3cadd51 --- /dev/null +++ b/Scripts/pyCreateTh/Template/Outputs/Outputs.md @@ -0,0 +1,2 @@ +## Folder where Therion outputs are exported + diff --git a/Scripts/pyCreateTh/Template/Outputs/outputs.txt b/Scripts/pyCreateTh/Template/Outputs/outputs.txt deleted file mode 100644 index 4a3b6e4..0000000 --- a/Scripts/pyCreateTh/Template/Outputs/outputs.txt +++ /dev/null @@ -1,2 +0,0 @@ -Folder where Therion outputs are exported - diff --git a/Scripts/pyCreateTh/Template/Sources/Sources.md b/Scripts/pyCreateTh/Template/Sources/Sources.md new file mode 100644 index 0000000..84b4bb3 --- /dev/null +++ b/Scripts/pyCreateTh/Template/Sources/Sources.md @@ -0,0 +1,2 @@ +## Folder where you can put your originals files + diff --git a/Scripts/pyCreateTh/Template/template.thconfig b/Scripts/pyCreateTh/Template/template.thconfig index 292dc70..441d2b7 100644 --- a/Scripts/pyCreateTh/Template/template.thconfig +++ b/Scripts/pyCreateTh/Template/template.thconfig @@ -89,7 +89,7 @@ layout layout-Plan grid-size 50 50 50 m ## la topo est transparente (on peut voir les galeries en dessous) - ## C'est on par défaut, donc, pas vraiment besoin de specifier + ## C'est 'on' par défaut, donc, pas vraiment besoin de specifier transparency on ## Couleurs de la topographie @@ -103,7 +103,7 @@ layout layout-Plan #colour-legend off colour map-fg 90 - ## ça marche seulement si transparency est "on" 90% blanc= 10% noir + ## Ça marche seulement si 'transparency' est "on" 90% blanc= 10% noir opacity 75 #surface bottom #surface-opacity 100 @@ -123,7 +123,7 @@ layout layout-Plan ## ou une autre combinaison... map-header 2 -98 nw - ## arrière plan de la manchette + ## Arrière plan de la manchette map-header-bg on ## Légende pour expliciter les symboles. "on" imprimera seulement la légende des symboles dessinés @@ -260,7 +260,7 @@ layout layout-Extended #grid-size 250 250 250 m ## la topo est transparente (on peut voir les galeries inférieurs) - ## C'est on par défaut, donc, pas vraiment besoin de spécifier + ## C'est 'on' par défaut, donc, pas vraiment besoin de spécifier transparency on ## Couleurs de la topographie @@ -274,7 +274,7 @@ layout layout-Extended #colour-legend off colour map-fg 90 - ## ça marche seulement si transparency est "on" 90% blanc= 10% noir + ## Ça marche seulement si transparency est "on" 90% blanc= 10% noir opacity 75 #surface bottom #surface-opacity 100 @@ -294,7 +294,7 @@ layout layout-Extended ## ou une autre combinaison... map-header 98 98 ne - ## arrière plan de la manchette + ## Arrière plan de la manchette map-header-bg on ## Légende pour expliciter les symboles. "on" imprimera seulement la légende des symboles dessinés @@ -381,11 +381,11 @@ layout xviexport ## taille de la grille grid-size 2 2 2 m - ## mettre la grille en arrière plan + ## Mettre la grille en arrière plan grid bottom endlayout -## fin de la définition du layout +## Fin de la définition du layout ############################################################################################### ## 3-EXPORT ## @@ -423,8 +423,6 @@ endlayout # export database -fmt sql -o Outputs/{fileName}-Database.sql # export continuation-list -o Outputs/{fileName}-Continuations.html - - ############################################################################################### ## END FILE ## -############################################################################################### \ No newline at end of file +############################################################################################### diff --git a/Scripts/pyCreateTh/config.ini b/Scripts/pyCreateTh/config.ini index 7dbbb21..8147b3f 100644 --- a/Scripts/pyCreateTh/config.ini +++ b/Scripts/pyCreateTh/config.ini @@ -7,15 +7,15 @@ ############################################################################################# [Survey_Data] # Default Author = Alexandre Pont -Copyright1 = # Copyright (C) ARSIP {YEAR} +Copyright1 = # Copyright (C) {YEAR} Copyright2 = # This work is under the Creative Commons Attribution-NonCommercial-NoDerivatives License: Copyright3 = # Copyright_Short = License CC by-nc-nd : http://creativecommons.org/licenses/by-nc-nd/4.0/ -map_comment = Massif de la Pierre Saint Martin - Larra -club = ARSIP +map_comment = +club = thanksto = Merci à tout le monde -datat = https://github.com/Alex38Lyon/Synthese-PSM_LARRA -wpage = https://www.arsip.fr/ +datat = +wpage = cs = UTM30 [Survey_Data:Tritons] @@ -70,6 +70,19 @@ datat = wpage = cs = UTM48 +[Survey_Data:CRIOU] +Author = Alexandre Pont +Copyright1 = # Copyright (C) Collectif Mirolda {YEAR} +Copyright2 = # This work is under the Creative Commons Attribution-NonCommercial-NoDerivatives License: +Copyright3 = # +Copyright_Short = License CC by-nc-nd : http://creativecommons.org/licenses/by-nc-nd/4.0/ +map_comment = Collectif Mirolda {YEAR} +club = Collectif Mirolda {YEAR} +thanksto = Merci à tout le monde +datat = https://github.com/robertxa/Mirolda +wpage = https://github.com/robertxa/Mirolda +cs = UTM32 + ############################################################################################# # Configuration data ############################################################################################# @@ -82,7 +95,7 @@ parse_tro_files_by_explo = True final_therion_exe = True therion_path = C:\Program Files\Therion\therion.exe -# Survey prefix name use tu create Survey folders +# Survey prefix name use to create survey folders survey_prefix_name = Explo_ # Options for th2 files diff --git a/Scripts/pyCreateTh/therion.log b/Scripts/pyCreateTh/therion.log deleted file mode 100644 index c1d6f56..0000000 --- a/Scripts/pyCreateTh/therion.log +++ /dev/null @@ -1,7 +0,0 @@ -therion 6.3.4+999e03f9+dev (2026-03-16) - - using Proj 9.5.1, compiled against 9.7.1 -C:\Program Files\Therion\therion.exe: warning -- Proj version mismatch: using 9.5.1, compiled against 9.7.1 -initialization file: C:\Program Files\Therion/therion.ini -reading ... done -C:\Program Files\Therion\therion.exe: error -- can't open file for input -- Xendako.thconfig -Press ENTER to exit! \ No newline at end of file diff --git a/Scripts/pyThStat/Lib/__pycache__/global_data.cpython-314.pyc b/Scripts/pyThStat/Lib/__pycache__/global_data.cpython-314.pyc index b6993a7..301ef92 100644 Binary files a/Scripts/pyThStat/Lib/__pycache__/global_data.cpython-314.pyc and b/Scripts/pyThStat/Lib/__pycache__/global_data.cpython-314.pyc differ diff --git a/Scripts/pyThStat/Lib/global_data.py b/Scripts/pyThStat/Lib/global_data.py index a2fb861..777cb40 100644 --- a/Scripts/pyThStat/Lib/global_data.py +++ b/Scripts/pyThStat/Lib/global_data.py @@ -6,9 +6,11 @@ !#############################################################################################! """ -Version = "2026.09.03" +Version = "2026.09.25" ################################################################################################# # error_count = 0 # Compteur d'erreurs -debug_log = False \ No newline at end of file +debug_log = False + +outputFilename = "readme" \ No newline at end of file diff --git a/Scripts/pyThStat/pythStat.py b/Scripts/pyThStat/pythStat.py index a1abaf5..25376f1 100644 --- a/Scripts/pyThStat/pythStat.py +++ b/Scripts/pyThStat/pythStat.py @@ -17,6 +17,7 @@ import sqlite3, sys, os, re, argparse from pathlib import Path from os.path import isfile, join, abspath, splitext +from turtle import color import numpy as np import pandas as pd import matplotlib.pyplot as plt @@ -55,7 +56,7 @@ def importation_sql_data(fichier_sql): cursor = connection.cursor() # Lecture du fichier SQL et exécution des commandes - with open(fichier_sql, 'r') as sql_file: + with open(fichier_sql, 'r', encoding='utf-8') as sql_file: sql_script = sql_file.read() @@ -150,7 +151,8 @@ def construction_tables(): RESEAU_ID INTEGER, STATION_JONC INTEGER, ENT_1 INTEGER, - ENT_2 INTEGER) + ENT_2 INTEGER, + RESEAU_NAME) """) conn.commit() @@ -267,7 +269,7 @@ def construction_tables(): with alive_bar(compteur_ttl, title = f"{Colors.YELLOW}Progression{Colors.ENDC}", length = 20) as bar: while len(results) > 0: # type: ignore # print(f"{Colors.GREEN}{Colors.BOLD}Phase 4.{Count}: Remplissage des tables _JONCTION et _SERIE itération: {Count}, séries créée(s): {New_Serie_ID} ajoutée(s): {New_Serie_ID-New_Serie_IDOld} à traiter: {len(results)}{Colors.ENDC}") # type: ignore - bar.text(f"{Colors.YELLOW}itération(s): {Colors.ENDC}{Count}{Colors.YELLOW}, série(s) créée(s): {Colors.ENDC}{New_Serie_ID}") # type: ignore + bar.text(f"{Colors.YELLOW}itération(s): {Colors.ENDC}{Count}{Colors.YELLOW}, série(s) créée(s): {Colors.ENDC}{New_Serie_ID}{Colors.YELLOW}") # type: ignore cursor.execute("SELECT COUNT(*) AS nbre FROM _JONCTION WHERE STATION_TYPE IS NULL") _compteur = cursor.fetchall() compteur = int(_compteur[0][0]) @@ -377,16 +379,16 @@ def construction_tables(): orphelines_shot() jonction_RESEAU() + name_RESEAU() if compteur > 0 : log.warning(f"Phase 4: Fin du remplissage des tables,{Colors.WARNING} attention {Colors.ENDC}{compteur}{Colors.WARNING} station(s) non comptabilisé(s)") - error_count += 1 # else : # print(f"{Colors.GREEN}{Colors.BOLD}Phase 4: Fin du remplissage des tables voir {imported_database}{Colors.ENDC}") except sqlite3.Error as e: - log.error(f"Erreur lors de l'exécution d'une des requêtes (construction_tables) code:{Colors.ENDC} {e}") + log.error(f"Erreur lors de l'exécution d'une de la fonction construction_tables, code:{Colors.ENDC} {e}") error_count += 1 return @@ -430,7 +432,7 @@ def orphelines_shot(): conn.commit() orphelines = cursor.fetchall() - log.info(f"Intégrations des visées orphelines (entre 2 stations existantes) nbre: {Colors.ENDC}{len(orphelines)}") + log.info(f"Intégrations des visées orphelines (entre 2 stations existantes), nbre: {Colors.ENDC}{len(orphelines)}") for row in orphelines: _SERIE_LENGHT = 0 @@ -571,7 +573,70 @@ def jonction_RESEAU(): log.info(f"Réseau: {Colors.ENDC}{index_reseau}{Colors.INFO}, entrées jonctionnées: {Colors.ENDC}{len(liste_entrees_reseau)}{Colors.INFO}, {Colors.ENDC}{liste_entrees_reseau}") except sqlite3.Error as e: - log.error(f"Erreur lors de l'exécution de la requête Jonction_RESEAU code:{Colors.ENDC} {e}") + log.error(f"Erreur lors de l'exécution de la fonction Jonction_RESEAU, code:{Colors.ENDC} {e}") + error_count += 1 + + return + +##################################################################################################################################### +# Fonction pour nommer les réseaux d'après les survey name # +##################################################################################################################################### +def name_RESEAU(): + global error_count + + try: + cursor.execute(""" + SELECT + _RESEAU.ID AS _ID, + _RESEAU.RESEAU_ID AS _RESEAU_ID, + _RESEAU.ENT_1, + _RESEAU.ENT_2, + STATION_ENT_1.NAME AS S1_NAME, + STATION_ENT_2.NAME AS S2_NAME, + SURVEY_ENT_1.NAME AS SURVEY_NAME_ENT_1, + SURVEY_ENT_1.FULL_NAME AS SURVEY_FULL_NAME_ENT_1, + SURVEY_ENT_1.ID AS SURVEY_ID_ENT_1, + SURVEY_ENT_1.TITLE AS SURVEY_TITLE_NAME_ENT_1, + SURVEY_ENT_2.NAME AS SURVEY_NAME_ENT_2, + SURVEY_ENT_2.FULL_NAME AS SURVEY_FULL_NAME_ENT_2, + SURVEY_ENT_2.ID AS SURVEY_ID_ENT_2, + SURVEY_ENT_2.TITLE AS SURVEY_TITLE_NAME_ENT_2 + FROM _RESEAU AS _RESEAU + INNER JOIN STATION AS STATION_ENT_1 ON _RESEAU.ENT_1 = STATION_ENT_1.ID + LEFT JOIN STATION AS STATION_ENT_2 ON _RESEAU.ENT_2 = STATION_ENT_2.ID + INNER JOIN SURVEY AS SURVEY_ENT_1 ON STATION_ENT_1.SURVEY_ID = SURVEY_ENT_1.ID + INNER JOIN SURVEY AS SURVEY_ENT_2 ON STATION_ENT_2.SURVEY_ID = SURVEY_ENT_2.ID + ORDER BY _RESEAU_ID; + """) + + conn.commit() + name_reseau = cursor.fetchall() + + for row in name_reseau : + log.debug(f"{Colors.BLUE}Réseau ID {Colors.ENDC}{row[0]}{Colors.BLUE}, ENT_1 full name : {Colors.ENDC}{row[7]}{Colors.BLUE}, Survey ID {Colors.ENDC}{row[8]}{Colors.BLUE}, ENT_2 full name : {Colors.ENDC}{row[11]}{Colors.BLUE}, Survey ID {Colors.ENDC}{row[12]}{Colors.BLUE}") + + parent_ent_01 = sql_Parents_Survey(row[8]) + parent_ent_02 = sql_Parents_Survey(row[12]) + + # IDs communs aux deux listes, en parcourant depuis la racine vers l'enfant + ids_01 = [row[0] for row in parent_ent_01] # type: ignore + ids_02 = [row[0] for row in parent_ent_02] # type: ignore + + # Ancêtres communs = intersection + communs = set(ids_01) & set(ids_02) + + # Premier parent commun = celui le plus proche des enfants + # → dans les listes ordonnées enfant→racine, c'est le commun le plus "à gauche" + premier_commun = next( (row for row in parent_ent_01 if row[0] in communs), )# type: ignore + log.debug(f"{Colors.BLUE}Premier commun : {Colors.ENDC}{premier_commun}") + + cursor.execute("UPDATE _RESEAU SET RESEAU_NAME = ? WHERE RESEAU_ID = ?", (premier_commun[2], row[1])) + conn.commit() + + + + except sqlite3.Error as e: + log.error(f"Erreur lors de l'exécution de la fonction name_RESEAU, code:{Colors.ENDC} {e}") error_count += 1 return @@ -605,7 +670,7 @@ def SHOT_equates_station(): """) equate = cursor.fetchall() - log.info(f"Jonction de SHOT equates nbre: {Colors.ENDC}{len(equate)}") + log.info(f"Jonction de SHOT equates, nbre: {Colors.ENDC}{len(equate)}") for row in equate : sous_valeurs = row[0].split(',') # print(f": {sous_valeurs[0]} = ", end="") @@ -730,7 +795,7 @@ def duplicate_SHOT(): # filtre = cursor.fetchall() if len(duplicate) > 0: - log.info(f"Table des SHOT, visées dupliquées traités nbre: {Colors.ENDC}{len(duplicate)}") + log.info(f"Table des SHOT, visées dupliquées traités, nbre: {Colors.ENDC}{len(duplicate)}") # print(f"Visées dupliqués supprimés {duplicate}") else : @@ -768,7 +833,7 @@ def issue_SHOT(): if len(issue) > 0: - log.warning(f"Table des SHOT, visée(s) bloquante(s), même départ et arrivée, longueur nulle supprimée(s) nbre: {Colors.ENDC}{len(issue)}") + log.warning(f"Table des SHOT, visée(s) bloquante(s), même départ et arrivée, longueur nulle supprimée(s), nbre: {Colors.ENDC}{len(issue)}") # print(f"Visée(s) bloquante(s) supprimée(s) {issue}") else : log.info(f"Table des SHOT, aucune visée bloquante") @@ -797,7 +862,7 @@ def marquage_visee_station_habillage() : """ ) filtre = cursor.fetchall() - log.info(f"Marquage des visées et des stations d'habillage nbre: {Colors.ENDC}{len(filtre)}") + log.info(f"Marquage des visées et des stations d'habillage, nbre: {Colors.ENDC}{len(filtre)}") for row in filtre : cursor.execute(f"UPDATE _JONCTION SET STATION_TYPE = 'hab' WHERE STATION_ID = {row[0]}") cursor.execute(f"UPDATE _VISEE_FLAG SET SERIE_ID = -1 WHERE SHOT_ID = {row[1]}") @@ -1270,7 +1335,7 @@ def test_jonction(station, serie, entree) : _serie = cursor.fetchall() # print (f"Jonction à proximité de la Station_ID: {row[0]}, retour: {str(val)}, serie {serie} - {_serie[0][0]}, entrée {entree} - {retour[0][0]}") if (retour[0][0] != entree) and (retour[0][0] != None) : - log.info(f"Jonction à la Station_ID: {Colors.ENDC}{row[0]}{Colors.INFO} entre les entrées {Colors.ENDC}{entree}{Colors.INFO} et {Colors.ENDC}{retour[0][0]}") + log.info(f"Jonction à la Station_ID: {Colors.ENDC}{row[0]}{Colors.INFO} entre les entrées {Colors.ENDC}{entree}{Colors.INFO} et {Colors.ENDC}{retour[0][0]}{Colors.YELLOW}") cursor.execute(f"INSERT INTO _RESEAU ( STATION_JONC, ENT_1, ENT_2) VALUES (?, ?, ?)", (row[0], entree, retour[0][0])) conn.commit() # if _serie[0][0] != serie and (_serie[0][0] != None): @@ -1292,9 +1357,9 @@ def test_jonction(station, serie, entree) : _serie = cursor.fetchall() # print (f"Jonction à proximité de la Station_ID: {row[0]}, retour: {str(val)}, serie {serie} - {_serie[0][0]}, entrée {entree} - {retour[0][0]}") if retour[0][0] != entree : - log.info(f"Jonction à la Station_ID: {Colors.ENDC}{station}{Colors.INFO} entre les entrées {Colors.ENDC}{entree}{Colors.INFO} et {Colors.ENDC}{retour[0][0]}") + log.info(f"Jonction à la Station_ID: {Colors.ENDC}{station}{Colors.INFO} entre les entrées {Colors.ENDC}{entree}{Colors.INFO} et {Colors.ENDC}{retour[0][0]}{Colors.YELLOW}") if _serie[0][0] != serie : - log.info (f"Jonction à la Station_ID: {Colors.ENDC}{station}{Colors.INFO} entre les series {Colors.ENDC}{serie}{Colors.INFO} et {Colors.ENDC}{_serie[0][0]}") + log.info (f"Jonction à la Station_ID: {Colors.ENDC}{station}{Colors.INFO} entre les series {Colors.ENDC}{serie}{Colors.INFO} et {Colors.ENDC}{_serie[0][0]}{Colors.YELLOW}") return True except sqlite3.Error as e: @@ -1340,520 +1405,7 @@ def format_french_number(value): ##################################################################################################################################### # Fonction pour exécuter une requête et sauvegarder les résultats dans un fichier texte # ##################################################################################################################################### -def calcul_statsNew(output_file, filename= "None"): - global error_count - - try: - # ===================================================================== - # Phase 5 - Génération des statistiques - # ===================================================================== - - log.info( - f"{Colors.UNDERLINE}Phase 5:{Colors.ENDC}" - f"{Colors.INFO} Écriture des statistiques dans " - f"{Colors.ENDC}{safe_relpath(output_file, 2)}" - ) - - md = [] - csv = [] - - # --------------------------------------------------------------------- - # En-tête CSV - # --------------------------------------------------------------------- - - csv.extend(f"{titre[i].ljust(118)}*\n" for i in range(9)) - - # --------------------------------------------------------------------- - # En-tête Markdown - # --------------------------------------------------------------------- - - md.extend([ - f"# {titre[1].strip()[2:]}\n\n", - "## Informations générales\n\n", - f"| Information | Valeur |\n", - "|---|---|\n", - f"| Script | {titre[2].strip()[2:]} |\n", - f"| Version | {titre[3].strip()[2:]} |\n", - f"| Fichier source | `{titre[4].strip()[2:]}` |\n", - f"| Dossier destination | `{titre[5].strip()[2:]}` |\n", - f"| Date | {titre[6].strip()[2:]} |\n", - ]) - - # --------------------------------------------------------------------- - # Développement total - # --------------------------------------------------------------------- - - cursor.execute(""" - SELECT - ROUND(SUM(LENGTH), 2), - ROUND(SUM(DUPLICATE_LENGTH), 2), - ROUND(SUM(SURFACE_LENGTH), 2) - FROM CENTRELINE - """) - - total = cursor.fetchone() - - developpement = total[0] or 0 - duplique = total[1] or 0 - surface = total[2] or 0 - - md.extend([ - "\n## Synthèse\n\n", - "| Statistique | Valeur |\n", - "|---|---:|\n", - f"| Développement total | **{developpement:.2f} m** |\n", - f"| Développement dupliqué | {duplique:.2f} m |\n", - f"| Surface | {surface:.2f} m² |\n", - ]) - - csv.append( - f"**Développement total centerline (m):**\t" - f"développement: {developpement:.2f}\t" - f"dupliqué: {duplique:.2f}\t" - f"surface: {surface:.2f}\n" - ) - - # --------------------------------------------------------------------- - # Vérification des stations - # --------------------------------------------------------------------- - - cursor.execute( - "SELECT COUNT(*) FROM _JONCTION WHERE STATION_TYPE IS NULL" - ) - - compteur = int(cursor.fetchone()[0]) - - md.append("\n### Raccordement des stations\n\n") - - if compteur > 0: - md.append( - f"> [!WARNING]\n" - f"> **{compteur} station(s)** ne sont pas comptabilisées " - f"et sont raccordées.\n\n" - ) - - csv.append( - f"Attention, {compteur} station(s) non comptabilisée(s) " - f"et raccordée(s)\n" - ) - else: - md.append( - "> [!NOTE]\n" - "> Toutes les stations sont comptabilisées et raccordées.\n\n" - ) - - csv.append( - "Toutes les stations sont comptabilisées et raccordées\n" - ) - - # --------------------------------------------------------------------- - # Développement par réseaux - # --------------------------------------------------------------------- - - results = sql_bilan_reseaux() - - if results and results[0][0] is not None: - - headers = [ - "Entrée(s)", "Nbre", "Dev. (m)", "Prof. (m)", - "Dupl. (m)", "Surf. (m)", "Visées", - "ID min", "Alt. min (m)", "ID max", "Alt. max (m)" - ] - - md.extend([ - "## Développement par réseaux\n\n", - "
\n", - "Afficher le détail des réseaux\n\n", - "| " + " | ".join(headers) + " |\n", - "|" + "|".join(["---"] * len(headers)) + "|\n", - ]) - - csv.append("\nDéveloppement total par réseaux\n") - - for row in results: - csv.append("\t" + "\t".join(map(str, row)) + "\n") - - for row in results[1:]: - values = [str(v) for v in row] - - md.append("| " + " | ".join(values) + " |\n") - - md.extend([ - "\n
\n\n" - ]) - - # --------------------------------------------------------------------- - # Développement par année - # --------------------------------------------------------------------- - - results = sql_bilan_annee() - - if results and results[0][0] is not None: - - headers = [ - "Année", "Dev. (m)", "Cumul (m)", - "Dupl. (m)", "Cumul (m)", - "Surf. (m²)", "Cumul (m²)" - ] - - md.extend([ - "## Développement topographié par année\n\n", - "| " + " | ".join(headers) + " |\n", - "|" + "|".join(["---"] * len(headers)) + "|\n", - ]) - - csv.append("\nDéveloppement total topographié par année(s)\n") - - for row in results[1:]: - if ( - str(row[1]).strip() != "0.00" - or str(row[3]).strip() != "0.00" - or str(row[5]).strip() != "0.00" - ): - csv.append("\t" + "\t".join(map(str, row)) + "\n") - - md.append( - "| " + " | ".join(map(str, row)) + " |\n" - ) - - md.append("\n") - - # --------------------------------------------------------------------- - # Graphiques - # --------------------------------------------------------------------- - - Rose(output_file_name_rose) - Shot_lengths_histogram(output_file_name_histo) - - md.extend([ - "## Graphiques\n\n", - f"- [Rose des directions]({output_file_name_rose})\n", - f"- [Histogramme des longueurs]({output_file_name_histo})\n\n", - ]) - - # --------------------------------------------------------------------- - # Durée totale - # --------------------------------------------------------------------- - - duree = datetime.now() - maintenant - secondes_total = int(duree.total_seconds()) - - heures, reste = divmod(secondes_total, 3600) - minutes, secondes = divmod(reste, 60) - - if heures: - duree_formatee = f"{heures:02d} h {minutes:02d} min {secondes:02d} s" - elif minutes: - duree_formatee = f"{minutes:02d} min {secondes:02d} s" - else: - duree_formatee = f"{secondes:02d} s" - - if error_count == 0: - md.extend([ - "## Traitement\n\n", - f"> [!NOTE]\n" - f"> **Traitement terminé sans erreur.** " - f"Durée : **{duree_formatee}**.\n" - ]) - - csv[7] = ( - f"* Durée calcul : {duree_formatee} sans erreur" - ) - else: - md.extend([ - "## Traitement\n\n", - f"> [!WARNING]\n" - f"> **Traitement terminé avec {error_count} erreur(s).** " - f"Durée : **{duree_formatee}**.\n" - ]) - - csv[7] = ( - f"* Durée calcul : {duree_formatee} " - f"avec erreur(s): {error_count}" - ) - - csv[7] = csv[7].ljust(118) + "*\n" - - # --------------------------------------------------------------------- - # Écriture des fichiers - # --------------------------------------------------------------------- - - with open(output_file + ".md", "w", encoding="utf-8") as file: - file.writelines(md) - - with open(output_file + ".csv", "w", encoding="utf-8") as file: - file.writelines(csv) - - # --------------------------------------------------------------------- - # Journalisation - # --------------------------------------------------------------------- - - if error_count == 0: - log.info( - f"Phase 5: Fin de traitement en {Colors.ENDC}{duree_formatee}" - f"{Colors.INFO}, résultats enregistrés dans " - f"{Colors.ENDC}{safe_relpath(output_file, 2)}" - ) - else: - log.warning( - f"Phase 5: Fin de traitement en {Colors.ENDC}{duree_formatee}, " - f"{Colors.WARNING}avec {Colors.ENDC}{error_count}" - f"{Colors.WARNING} erreur(s), {Colors.INFO}" - f"résultats enregistrés dans {Colors.ENDC}" - f"{safe_relpath(output_file, 2)}" - ) - - except sqlite3.Error as e: - log.error( - f"Erreur lors de l'exécution des requêtes calcul_stats:" - f"{Colors.ENDC} {e}" - ) - error_count += 1 - - md.append( - f"\n> [!CAUTION]\n" - f"> **Erreur SQLite :** `{e}`\n" - ) - csv.append(f"Erreur lors de l'exécution de calcul_stats: {e}\n") - - with open(output_file + ".md", "w", encoding="utf-8") as file: - file.writelines(md) - - with open(output_file + ".csv", "w", encoding="utf-8") as file: - file.writelines(csv) - - except FileNotFoundError: - log.error( - f"Erreur d'ouverture du fichier: {Colors.ENDC}" - f"{safe_relpath(output_file)}" - ) - error_count += 1 - - except Exception as e: - log.error( - f"Erreur lors de l'exécution de calcul_stats:" - f"{Colors.ENDC} {e}" - ) - error_count += 1 - - md.append( - f"\n> [!CAUTION]\n" - f"> **Erreur lors de l'exécution de calcul_stats :** `{e}`\n" - ) - csv.append(f"Erreur lors de l'exécution de calcul_stats: {e}\n") - - with open(output_file + ".md", "w", encoding="utf-8") as file: - file.writelines(md) - - with open(output_file + ".csv", "w", encoding="utf-8") as file: - file.writelines(csv) - -def calcul_statsOld(output_file, filename= "None"): - global error_count - global _largeurCol - global _largeurColTete - - try: - ##################################################################################################################################### - # Phase 5 - # Enregistrement des résultats dans un fichier - ##################################################################################################################################### - log.info(f"{Colors.UNDERLINE}Phase 5:{Colors.ENDC}{Colors.INFO} Écriture des statistiques dans fichier {Colors.ENDC}{safe_relpath(output_file, 2)}") - - output_file_ligne_md = [] - output_file_ligne_csv = [] - - for i in range(9): - output_file_ligne_csv.append(titre[i].ljust(118)+"*\n") - - - output_file_ligne_md.extend([ - f"--------------\n", - f"# {titre[1].strip()[2:]}\n", - "|---|---|\n", - f"| Script | {titre[2].strip()[2:]} |\n", - f"| Version | {titre[3].strip()[2:]} |\n", - f"| Fichier source | `{titre[4].strip()[2:]}` |\n", - f"| Dossier destination | `{titre[5].strip()[2:]}` |\n", - f"| Date | {titre[6].strip()[2:]} |\n", - f"- {titre[2].strip()[2:]}\n", - f"- {titre[3].strip()[2:]}\n", - f"- {titre[4].strip()[2:]}\n", - f"- {titre[5].strip()[2:]}\n", - f"- {titre[6].strip()[2:]}\n", - f"- {titre[7].strip()[2:]}\n", - f"--------------\n\n", - ]) - - - sql_query1 = (""" - Select - round(sum(LENGTH), 2) as Lg, - round(sum(DUPLICATE_LENGTH),2) as Duplicate, - round(sum(SURFACE_LENGTH),2) as Surface - -- round(sum(LENGTH) + sum(DUPLICATE_LENGTH), 2) as Total - from CENTRELINE length - """) - - cursor.execute(sql_query1) - results = cursor.fetchall() - vide ="-".ljust(_largeurCol) - - output_file_ligne_csv.append( - f"**Développement total centerline (m):**\tdéveloppement: %s,\tdupliqué: %s,\tsurface: %s\n" - %(str("{:.2f}".format(results[0][0]).ljust(_largeurCol)), - str("{:.2f}".format(results[0][1]).ljust(_largeurCol)), - str("{:.2f}".format(results[0][2]).ljust(_largeurCol)), - )) - - output_file_ligne_md.append( - f"**Développement total des centerlines (m):**" - f" développement: `{results[0][0]:.2f}`" - f", dupliqué: `{results[0][1]:.2f}`" - f", surface: `{results[0][2]:.2f}`\n" - ) - - cursor.execute("SELECT COUNT(*) AS nbre FROM _JONCTION WHERE STATION_TYPE IS NULL") - _compteur = cursor.fetchall() - compteur = int(_compteur[0][0]) - - if compteur > 0 : # type: ignore - output_file_ligne_md.append(f"!!Attention, `{compteur}` station(s) non comptabilisée(s) et raccordée(s)\n\n") - output_file_ligne_csv.append(f"Attention, {compteur} station(s) non comptabilisée(s) et raccordée(s)\n\n") - else : - output_file_ligne_md.append(f"Toutes les stations sont comptabilisées et raccordées\n\n") - output_file_ligne_csv.append(f"Toutes les stations sont comptabilisées et raccordées\n\n") - - results=sql_bilan_reseaux() - - # def format_markdown_row(row_data): - # return '| ' + ' | '.join(f"{str(item):>10}" for item in row_data) + ' |' - - if results[0][0] != None :# type: ignore - output_file_ligne_csv.append("Développement total par réseaux\n") - for row in results: # type: ignore - formatted_row = '\t'.join(map(str, row)) - output_file_ligne_csv.append('\t' + formatted_row + '\n') - - #print('Développement total: ' + formatted_row + 'm') - - output_file_ligne_md.append(f"\n--------------\n") - output_file_ligne_md.append("**Développement total par réseaux**\n") - - headers = ["Entrée(s)", "Nbre", "Dev.(m)", "Prof.(m)", "Dupl.(m)", "Surf.(m)", "Visées", "ID Sta.", "Alt. min(m)", "ID Sta.", "Alt. max(m)"] - output_file_ligne_md.append("| " + " | ".join(headers) + " |\n") - output_file_ligne_md.append("|" + "|".join(["------"] * len(headers)) + "|\n") - - for row in results[1:]: # type: ignore - formatted_row = [str(v) for v in row] - output_file_ligne_md.append("| " + " | ".join(formatted_row) + " |\n") - - - results=sql_bilan_annee() - - if results[0][0] != None :# type: ignore - output_file_ligne_csv.append("\nDéveloppement total topographié par année(s)\n") - for row in results: # type: ignore - if row[1].strip() != "0.00" or row[3].strip() != "0.00" or row[5].strip() != "0.00" : - formatted_row = '\t'.join(map(str, row)) - output_file_ligne_csv.append('\t' + formatted_row + '\n') - #print('Développement total: ' + formatted_row + 'm') - - output_file_ligne_md.append(f"\n--------------\n") - output_file_ligne_md.append("\n**Développement total topographié par année(s)**\n") - headers = ["Année", "Dev.(m)", "Cumul (m)", "Dupl.(m)", "Cumul (m)", "Surf.(m)", "Cumul (m)"] - - output_file_ligne_md.append("| " + " | ".join(headers) + " |\n") - output_file_ligne_md.append("|" + "|".join(["---"] * len(headers)) + "|\n") - - for row in results[1:]: # type: ignore - if row[1].strip() != "0.00" or row[3].strip() != "0.00" or row[5].strip() != "0.00" : - formatted_row = [str(v) for v in row] - output_file_ligne_md.append("| " + " | ".join(formatted_row) + " |\n") - - - output_file_ligne_md.append(f"\n--------------\n") - - Rose(output_file_name_rose) - - Shot_lengths_histogram(output_file_name_histo) - - - findetraitement = datetime.now() - - duree = findetraitement - maintenant - jours, secondes = divmod(duree.seconds, 86400) # 86400 secondes dans une journée - heures, secondes = divmod(secondes, 3600) # 3600 secondes dans une heure - minutes, secondes = divmod(secondes, 60) # 60 secondes dans une minute - if duree.seconds > 3600: - duree_formatee = "{:02}(h){:02}(m){:02}(s)".format(heures, minutes, secondes) - - elif duree.seconds > 60: - duree_formatee = "{:02}(m){:02}(s)".format(minutes, secondes) - - else : - duree_formatee = "{:02}(s)".format(secondes) - - if error_count == 0: - output_file_ligne_csv[7] = "* Durée calcul : " + duree_formatee + " sans erreur" - output_file_ligne_md[7] = "- Durée calcul : " + duree_formatee + " sans erreur\n" - output_file_ligne_csv[7] = output_file_ligne_csv[7].ljust(118)+"*\n" - - else : - output_file_ligne_csv[7] = "* Durée calcul : " + duree_formatee + " avec erreur(s): " + str(error_count) - output_file_ligne_md[7] = "- Durée calcul : " + duree_formatee + "!! avec erreur(s): " + str(error_count) + "\n" - output_file_ligne_csv[7] = output_file_ligne_csv[7].ljust(118)+"*\n" - - with open(output_file + ".md", 'w', encoding='utf-8') as file: - file.writelines(output_file_ligne_md) - - with open(output_file + ".csv", 'w', encoding='utf-8') as file: - file.writelines(output_file_ligne_csv) - - if error_count == 0 : - log.info(f"Phase 5: Fin de traitement en {Colors.ENDC}" + duree_formatee + f"{Colors.INFO}, résultats enregistrés dans {Colors.ENDC}{safe_relpath(output_file, 2)}") - - else : - log.warning(f"Phase 5: Fin de traitement en {Colors.ENDC}" + duree_formatee - + f",{Colors.WARNING} avec {Colors.ENDC}{error_count}{Colors.WARNING} erreur(s), {Colors.INFO}résultats enregistrés dans {Colors.ENDC}{safe_relpath(output_file, 2)}") - - except sqlite3.Error as e: - log.error(f"Erreur lors de l'exécution des requêtes calcul_stats:{Colors.ENDC} {e}") - error_count += 1 - output_file_ligne_md.append(f"!!! Erreur lors de l'exécution des requêtes calcul_stats: {e}\n") - output_file_ligne_csv.append(f"Erreur lors de l'exécution des requêtes calcul_stats: {e}\n") - - with open(output_file + ".md", 'w', encoding='utf-8') as file: - file.writelines(output_file_ligne_md) - - with open(output_file + ".csv", 'w', encoding='utf-8') as file: - file.writelines(output_file_ligne_csv) - - return - - except FileNotFoundError: - log.error(f"Erreur d'ouverture du fichier: {Colors.ENDC}{safe_relpath(output_file)} ") - error_count += 1 - - return - - except Exception as e: - log.error(f"Erreur lors de l'exécution de calcul_stats:{Colors.ENDC} {e}") - error_count += 1 - output_file_ligne_md.append(f"!! Erreur lors de l'exécution de calcul_stats: {e}\n") - output_file_ligne_csv.append(f"Erreur lors de l'exécution de calcul_stats: {e}\n") - - with open(output_file + ".md", 'w', encoding='utf-8') as file: - file.writelines(output_file_ligne_md) - - with open(output_file + ".csv", 'w', encoding='utf-8') as file: - file.writelines(output_file_ligne_csv) - - return - - return - -def calcul_stats(output_file , filename= "None"): +def calcul_stats(output_file_csv , output_file_md, filename= "None", ): global error_count try: @@ -1861,7 +1413,7 @@ def calcul_stats(output_file , filename= "None"): # Phase 5 # Enregistrement des résultats dans un fichier ##################################################################################################################################### - log.info(f"{Colors.UNDERLINE}Phase 5:{Colors.ENDC}{Colors.INFO} Écriture des statistiques dans le fichier: {Colors.ENDC}{safe_relpath(output_file, 2)}") + log.info(f"{Colors.UNDERLINE}Phase 5:{Colors.ENDC}{Colors.INFO} Écriture des statistiques dans le fichier: {Colors.ENDC}{safe_relpath(output_file_md, 2)}") ############################################################################################################### # Général @@ -1875,6 +1427,8 @@ def calcul_stats(output_file , filename= "None"): Rose(output_file_name_rose) Shot_lengths_histogram(output_file_name_histo) + base_name= sql_base_name() + findetraitement = datetime.now() duree = findetraitement - maintenant @@ -1896,9 +1450,75 @@ def calcul_stats(output_file , filename= "None"): ############################################################################################################### output_file_ligne_md = [] + output_file_ligne_md.append(f"-------------\n") + output_file_ligne_md.append(f"# Statistiques de `{base_name}`\n") + output_file_ligne_md.append(f"--------------\n\n") + output_file_ligne_md.append( + f"### Développement total\n\n" + f"Développement topographié: \t`{format_french_number(results[0][0])} (m)`\n" # type: ignore + f"Développement topographie dupliqués: \t`{format_french_number(results[0][1])} (m)`\n" # type: ignore + f"Développement topographie de surface:\t`{format_french_number(results[0][2])} (m)`\n" # type: ignore + f"Soit un grand total de : \t`{format_french_number(results[0][0] + results[0][1] + results[0][2])} (m)`\n" # type: ignore + ) + + if compteur > 0 : # type: ignore + output_file_ligne_md.append(f"> [!WARNING] `{compteur}` station(s) non comptabilisée(s) et raccordée(s)\n\n") + + else : + output_file_ligne_md.append(f"Toutes les stations sont comptabilisées et raccordées\n\n") + + output_file_ligne_md.append(f"\n--------------\n") + + if results2[0][0] != None : # type: ignore + output_file_ligne_md.append("### Développement total par réseau\n") + + headers = [" Réseau ", " Entrée(s) ", " Nbre ", " Dev. (m) ", " Prof. (m) ", " Dupl. (m) ", "Surf. (m)", " Visées ", " ID Stat. ", " Alt. min (m) ", " ID Stat. ", " Alt. max (m) "] + output_file_ligne_md.append("| " + " | ".join(headers) + " |\n") + output_file_ligne_md.append("|" + "|".join(["------------"] * len(headers)) + "|\n") + + vals = results2[1] + + def fmt(v, idx): + if v is None: return "" + return format_french_number(v) if idx in (3,4,5,6,9,11) else str(v).replace(' ', '') + + first = fmt(vals[0], 0) if vals[0] is not None else " " + reste = " | ".join(f"**{fmt(v, i+1)}**" for i, v in enumerate(vals[1:])) + + output_file_ligne_md.append(f"| {first}" + (f" | {reste}" if reste else "") + " |\n") + + + for row in results2[2:]: # type: ignore + + clean_row = (v.strip() for v in row) + _row = [ + format_french_number(v) if idx in (3, 4, 5, 6, 9, 11) else str(v) + for idx, v in enumerate(clean_row) + ] + formatted_row = [str(v) for v in _row] + output_file_ligne_md.append("| " + " | ".join(formatted_row) + " |\n") + + if results3[0][0] != None : # type: ignore + output_file_ligne_md.append(f"\n\n--------------\n") + output_file_ligne_md.append("\n### Développement total topographié par année(s)\n") + headers = [" Année ", "Dev. (m)", "Cumul (m)", "Dupl. (m)", "Cumul (m)", "Surf. (m)", "Cumul (m)"] + + output_file_ligne_md.append("| " + " | ".join(headers) + " |\n") + output_file_ligne_md.append("|" + "|".join(["---"] * len(headers)) + "|\n") + + for row in results3[1:]: # type: ignore + if row[1].strip() != "0.00" or row[3].strip() != "0.00" or row[5].strip() != "0.00" : + _row = [ + format_french_number(v) if idx in (1, 2, 3, 4, 5, 6) else str(v) + for idx, v in enumerate(row) + ] + formatted_row = [str(v) for v in _row] + output_file_ligne_md.append("| " + " | ".join(formatted_row) + " |\n") + + output_file_ligne_md.append(f"\n\n--------------\n") + output_file_ligne_md.extend([ - f"--------------\n", - f"# Statistiques de la base {filename}\n", + f"### Bilan final\n", "| | |\n", "| :---------------- | :--- |\n", f"| {titre[2].strip()[2:].replace(":", "|")} |\n", @@ -1917,59 +1537,9 @@ def calcul_stats(output_file , filename= "None"): output_file_ligne_md.append("| Durée calcul |" + duree_formatee + " avec erreur(s): " + str(error_count) + " |\n") output_file_ligne_md.append(f"\n--------------\n") - - output_file_ligne_md.append( - f"### Développement total (m)\n\n" - f"Développement:\t`{format_french_number(results[0][0])}`" # type: ignore - f", dupliqué:\t`{format_french_number(results[0][1])}`" # type: ignore - f", surface:\t`{format_french_number(results[0][2])}`\n\n" # type: ignore - ) - - if compteur > 0 : # type: ignore - output_file_ligne_md.append(f"> [!WARNING] `{compteur}` station(s) non comptabilisée(s) et raccordée(s)\n\n") - else : - output_file_ligne_md.append(f"Toutes les stations sont comptabilisées et raccordées\n\n") - - output_file_ligne_md.append(f"\n--------------\n") - - if results2[0][0] != None : # type: ignore - output_file_ligne_md.append("### Développement total par réseaux\n") - - headers = [" Entrée(s) ", " Nbre ", " Dev. (m) ", " Prof. (m) ", " Dupl. (m) ", "Surf. (m)", " Visées ", " ID Stat. ", " Alt. min (m) ", " ID Stat. ", " Alt. max (m) "] - output_file_ligne_md.append("| " + " | ".join(headers) + " |\n") - output_file_ligne_md.append("|" + "|".join(["------------"] * len(headers)) + "|\n") - - for row in results2[1:]: # type: ignore - _row = [ - format_french_number(v) if idx in (2, 3, 4, 5, 8, 10) else str(v) - for idx, v in enumerate(row) - ] - formatted_row = [str(v) for v in _row] - output_file_ligne_md.append("| " + " | ".join(formatted_row) + " |\n") - - if results3[0][0] != None : # type: ignore - output_file_ligne_md.append(f"\n--------------\n") - output_file_ligne_md.append("\n### Développement total topographié par année(s)\n") - headers = [" Année ", "Dev. (m)", "Cumul (m)", "Dupl. (m)", "Cumul (m)", "Surf. (m)", "Cumul (m)"] - - output_file_ligne_md.append("| " + " | ".join(headers) + " |\n") - output_file_ligne_md.append("|" + "|".join(["---"] * len(headers)) + "|\n") - - for row in results3[1:]: # type: ignore - if row[1].strip() != "0.00" or row[3].strip() != "0.00" or row[5].strip() != "0.00" : - _row = [ - format_french_number(v) if idx in (1, 2, 3, 4, 5, 6) else str(v) - for idx, v in enumerate(row) - ] - formatted_row = [str(v) for v in _row] - output_file_ligne_md.append("| " + " | ".join(formatted_row) + " |\n") - - output_file_ligne_md.append(f"\n--------------\n") - - - with open(output_file + ".md", 'w', encoding='utf-8') as file: + with open(output_file_md + ".md", 'w', encoding='utf-8') as file: file.writelines(output_file_ligne_md) ############################################################################################################### @@ -2013,15 +1583,15 @@ def calcul_stats(output_file , filename= "None"): output_file_ligne_csv[7] = "* Durée calcul : " + duree_formatee + " avec erreur(s): " + str(error_count) output_file_ligne_csv[7] = output_file_ligne_csv[7].ljust(118)+"*\n" - with open(output_file + ".csv", 'w', encoding='utf-8') as file: + with open(output_file_csv + ".csv", 'w', encoding='utf-8') as file: file.writelines(output_file_ligne_csv) if error_count == 0 : - log.info(f"Phase 5: Fin de traitement en {Colors.ENDC}" + duree_formatee + f"{Colors.INFO}, résultats enregistrés dans {Colors.ENDC}{safe_relpath(output_file, 2)}") + log.info(f"Phase 5: Fin de traitement en {Colors.ENDC}" + duree_formatee + f"{Colors.INFO}, résultats enregistrés dans {Colors.ENDC}{safe_relpath(output_file_csv, 2)}") else : log.warning(f"Phase 5: Fin de traitement en {Colors.ENDC}" + duree_formatee - + f",{Colors.WARNING} avec {Colors.ENDC}{error_count}{Colors.WARNING} erreur(s), {Colors.INFO}résultats enregistrés dans {Colors.ENDC}{safe_relpath(output_file, 2)}") + + f",{Colors.WARNING} avec {Colors.ENDC}{error_count}{Colors.WARNING} erreur(s), {Colors.WARNING}résultats enregistrés dans {Colors.ENDC}{safe_relpath(output_file_csv, 2)}") except sqlite3.Error as e: log.error(f"Erreur lors de l'exécution des requêtes calcul_stats:{Colors.ENDC} {e}") @@ -2029,16 +1599,16 @@ def calcul_stats(output_file , filename= "None"): output_file_ligne_md.append(f"!!! Erreur lors de l'exécution des requêtes calcul_stats: {e}\n") output_file_ligne_csv.append(f"Erreur lors de l'exécution des requêtes calcul_stats: {e}\n") - with open(output_file + ".md", 'w', encoding='utf-8') as file: + with open(output_file_md + ".md", 'w', encoding='utf-8') as file: file.writelines(output_file_ligne_md) - with open(output_file + ".csv", 'w', encoding='utf-8') as file: + with open(output_file_csv + ".csv", 'w', encoding='utf-8') as file: file.writelines(output_file_ligne_csv) return except FileNotFoundError: - log.error(f"Erreur d'ouverture du fichier: {Colors.ENDC}{safe_relpath(output_file)} ") + log.error(f"Erreur d'ouverture du fichier: {Colors.ENDC}{safe_relpath(output_file_ligne_md)} ") error_count += 1 return @@ -2049,16 +1619,56 @@ def calcul_stats(output_file , filename= "None"): output_file_ligne_md.append(f"!! Erreur lors de l'exécution de calcul_stats: {e}\n") output_file_ligne_csv.append(f"Erreur lors de l'exécution de calcul_stats: {e}\n") - with open(output_file + ".md", 'w', encoding='utf-8') as file: + with open(output_file_md + ".md", 'w', encoding='utf-8') as file: file.writelines(output_file_ligne_md) - with open(output_file + ".csv", 'w', encoding='utf-8') as file: + with open(output_file_csv + ".csv", 'w', encoding='utf-8') as file: file.writelines(output_file_ligne_csv) return return +##################################################################################################################################### +# Requête : parents d'une survey # +##################################################################################################################################### +def sql_Parents_Survey(ID): + global error_count + + sql_query = (f""" + WITH RECURSIVE PARENTS AS ( + SELECT ID, PARENT_ID, NAME, TITLE + FROM SURVEY + WHERE ID = {ID} + + UNION ALL + + SELECT SURVEY.ID, SURVEY.PARENT_ID, SURVEY.NAME, SURVEY.TITLE + FROM SURVEY AS SURVEY + INNER JOIN PARENTS AS PARENTS ON SURVEY.ID = PARENTS.PARENT_ID + WHERE PARENTS.PARENT_ID <> 0 + ) + SELECT ID AS PARENT_ID, NAME, TITLE + FROM PARENTS + WHERE ID <> {ID}; + """) + + try: + cursor.execute(sql_query) + result_ent = cursor.fetchall() + + if len(result_ent) == 0 : + error_count += 1 + log.error(f"Attention aucun parents à l'ID {ID}") + + return result_ent + + except sqlite3.Error as e: + log.error(f"Erreur lors de l'exécution de la requête (sql_Parents_Survey):{Colors.ENDC} {e}") + error_count += 1 + return None + + ##################################################################################################################################### # Requête : Longueur totale des centerlines # ##################################################################################################################################### @@ -2092,7 +1702,6 @@ def sql_Centerline_length(): error_count += 1 return None - ##################################################################################################################################### # Requête : Table des entrées (Liste des entrées avec coordonnées) # ##################################################################################################################################### @@ -2141,7 +1750,7 @@ def sql_liste_entree(): error_count += 1 log.warning(f"Attention aucune entrée ou point fix comptabilisé") else : - log.info(f"Table des STATION, entrée et fix nbre: {Colors.ENDC}{len(result_ent)}") + log.info(f"Table des STATION entrée et fix, nbre: {Colors.ENDC}{len(result_ent)}") return result_ent @@ -2362,175 +1971,187 @@ def sql_bilan_reseaux(): ############################################################################################################### cursor.execute(f""" - -- Bilan table série By Réseaux - select - --SURVEY_RESEAU.TITLE as Réseau, - --SURVEY_RESEAU.NAME, - --SURVEY_RESEAU.ID, - RESEAU_ID, - --STATION.NAME as Nom, - -- sum(_SERIE.SERIE_LENGHT) as Total, - round(sum(_SERIE.SERIE_LENGHT) - sum(_SERIE.SERIE_LENGHT_SURFACE)- sum(_SERIE.SERIE_LENGHT_DUPLICATE), 2) as Long, - round(sum(_SERIE.SERIE_LENGHT_DUPLICATE),2) as Duplicate, - round(sum(_SERIE.SERIE_LENGHT_SURFACE),2) as Surface, - sum(_SERIE.SERIE_NBRE_SHOT) as Nbre_Shot - --COUNT(*) AS Nbre_serie - --round(max(STATION.Z),2) as Max_Z, - --round(min(STATION.Z),2) as Min_Z, - --max(STATION.Z) - min(STATION.Z) as Delta_Z - FROM _SERIE - JOIN STATION ON _SERIE.STATION_ENT_ID = STATION.ID - JOIN SURVEY AS SURVEY_JONCTION ON STATION.SURVEY_ID = SURVEY_JONCTION.ID - JOIN SURVEY AS SURVEY_RESEAU ON SURVEY_JONCTION.PARENT_ID = SURVEY_RESEAU.ID - WHERE RESEAU_ID is not NULL and RESEAU_ID !=0 - GROUP BY _SERIE.RESEAU_ID - ORDER BY Long DESC - """) + -- Bilan table série By Réseaux + select + --SURVEY_RESEAU.TITLE as Réseau, + --SURVEY_RESEAU.NAME, + --SURVEY_RESEAU.ID, + RESEAU_ID, + --STATION.NAME as Nom, + -- sum(_SERIE.SERIE_LENGHT) as Total, + round(sum(_SERIE.SERIE_LENGHT) - sum(_SERIE.SERIE_LENGHT_SURFACE)- sum(_SERIE.SERIE_LENGHT_DUPLICATE), 2) as Long, + round(sum(_SERIE.SERIE_LENGHT_DUPLICATE),2) as Duplicate, + round(sum(_SERIE.SERIE_LENGHT_SURFACE),2) as Surface, + sum(_SERIE.SERIE_NBRE_SHOT) as Nbre_Shot + --COUNT(*) AS Nbre_serie + --round(max(STATION.Z),2) as Max_Z, + --round(min(STATION.Z),2) as Min_Z, + --max(STATION.Z) - min(STATION.Z) as Delta_Z + FROM _SERIE + JOIN STATION ON _SERIE.STATION_ENT_ID = STATION.ID + JOIN SURVEY AS SURVEY_JONCTION ON STATION.SURVEY_ID = SURVEY_JONCTION.ID + JOIN SURVEY AS SURVEY_RESEAU ON SURVEY_JONCTION.PARENT_ID = SURVEY_RESEAU.ID + WHERE RESEAU_ID is not NULL and RESEAU_ID !=0 + GROUP BY _SERIE.RESEAU_ID + ORDER BY Long DESC + """) result = cursor.fetchall() if len(result) >0 : - # _ligne = [ ' - ', " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] - # _ligne[0]= 'Aucun réseau'.ljust(_largeurColTete) - # retour.append(_ligne) - # return retour for row in result: - ligne = [ ' - ', " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] + ligne = [ " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] result_shot = 0 cursor.execute(f""" - select - COALESCE(round(sum(SHOT.length), 2), 0) as ttl, - count(_VISEE_FLAG.ID) as count, - STATION_TO.NAME as To_Name - from _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG is null and _VISEE_FLAG.RESEAU_ID ={row[0]} - """) + select + COALESCE(round(sum(SHOT.length), 2), 0) as ttl, + count(_VISEE_FLAG.ID) as count, + STATION_TO.NAME as To_Name + from _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG is null and _VISEE_FLAG.RESEAU_ID ={row[0]} + """) _result_length = cursor.fetchall() result_length = float(_result_length[0][0]) result_shot = int(_result_length[0][1]) cursor.execute(f""" - select - COALESCE(round(sum(SHOT.length), 2), 0) as ttl, - count(_VISEE_FLAG.ID) as count, - STATION_TO.NAME as To_Name - from _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='dpl' and _VISEE_FLAG.RESEAU_ID ={row[0]} - """) - + select + COALESCE(round(sum(SHOT.length), 2), 0) as ttl, + count(_VISEE_FLAG.ID) as count, + STATION_TO.NAME as To_Name + from _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='dpl' and _VISEE_FLAG.RESEAU_ID ={row[0]} + """) _result_length_dpl = cursor.fetchall() result_length_dpl = float(_result_length_dpl[0][0]) result_shot += int(_result_length_dpl[0][1]) cursor.execute(f""" - select - COALESCE(round(sum(SHOT.length), 2), 0) as ttl, - count(_VISEE_FLAG.ID) as count, - STATION_TO.NAME as To_Name - from _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='srf' and _VISEE_FLAG.RESEAU_ID ={row[0]} - """) - + select + COALESCE(round(sum(SHOT.length), 2), 0) as ttl, + count(_VISEE_FLAG.ID) as count, + STATION_TO.NAME as To_Name + from _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='srf' and _VISEE_FLAG.RESEAU_ID ={row[0]} + """) _result_length_srf = cursor.fetchall() result_length_srf = float(_result_length_srf[0][0]) result_shot += int(_result_length_srf[0][1]) - - # ligne = [ 'none', 0, 0, 0, 0, 0, 0, 'none', 0, 'none', 0, 0] cursor.execute(f""" - -- Liste des entrée dans la table _RESEAU - SELECT - --_RESEAU.ENT_1 AS ENT_ID, - --_RESEAU.RESEAU_ID, - STATION.NAME - --STATION.Z - FROM _RESEAU - JOIN STATION ON _RESEAU.ENT_1 = STATION.ID - WHERE RESEAU_ID = {row[0]} - UNION --ALL - SELECT - --_RESEAU.ENT_2 AS ENT_ID, - --_RESEAU.RESEAU_ID, - STATION.NAME - --STATION.Z - FROM _RESEAU - JOIN STATION ON _RESEAU.ENT_2 = STATION.ID - WHERE RESEAU_ID = {row[0]} - GROUP BY STATION.NAME - ORDER BY STATION.NAME - --ORDER BY STATION.Z DESC - """) + SELECT DISTINCT + _RESEAU.RESEAU_NAME + FROM _RESEAU + WHERE _RESEAU.RESEAU_ID ={row[0]}; + """) + reseau = cursor.fetchall() + + if len(reseau) : + _reseau = ", ".join(row[0] for row in reseau if row[0]) + + else : _reseau = reseau[0] + + cursor.execute(f""" + -- Liste des entrée dans la table _RESEAU + SELECT + --_RESEAU.ENT_1 AS ENT_ID, + --_RESEAU.RESEAU_ID, + STATION.NAME, + SURVEY.NAME AS Survey_Name, + SURVEY.TITLE AS Survey_Title + --STATION.Z + FROM _RESEAU + JOIN STATION ON _RESEAU.ENT_1 = STATION.ID + JOIN SURVEY ON STATION.SURVEY_ID = SURVEY.ID + WHERE RESEAU_ID = {row[0]} + UNION --ALL + SELECT + --_RESEAU.ENT_2 AS ENT_ID, + --_RESEAU.RESEAU_ID, + STATION.NAME, + SURVEY.NAME AS Survey_Name, + SURVEY.TITLE AS Survey_Title + --STATION.Z + FROM _RESEAU + JOIN STATION ON _RESEAU.ENT_2 = STATION.ID + JOIN SURVEY ON STATION.SURVEY_ID = SURVEY.ID + WHERE RESEAU_ID = {row[0]} + GROUP BY STATION.NAME + ORDER BY STATION.NAME + --ORDER BY STATION.Z DESC + """) liste_entree = cursor.fetchall() - _liste_ent = liste_entree[0][0] + _liste_ent = liste_entree[0][2] index = 1 while index < len(liste_entree): - _liste_ent += ", " + liste_entree[index][0] + _liste_ent += ", " + liste_entree[index][2] index += 1 if len(_liste_ent) > _largeurColTete : _largeurColTete = len(_liste_ent) + 2 - ligne[0] =_liste_ent.ljust(_largeurColTete) # Liste Entrées - ligne[1] = str(len(liste_entree)) # Nre Entrées - ligne[2] = str("{:.2f}".format(result_length)) # Dev. - ligne[4] = str("{:.2f}".format(result_length_dpl)) # Dupl. - ligne[5] = str("{:.2f}".format(result_length_srf)) # Surf. - ligne[6] = str(result_shot) # Visées + ligne[0] = str(_reseau) + ligne[1] = str(_liste_ent.ljust(_largeurColTete)) # Liste Entrées + ligne[2] = str(len(liste_entree)) # Nre Entrées + ligne[3] = str("{:.2f}".format(result_length)) # Dev. + ligne[5] = str("{:.2f}".format(result_length_dpl)) # Dupl. + ligne[6] = str("{:.2f}".format(result_length_srf)) # Surf. + ligne[7] = str(result_shot) # Visées cursor.execute(f""" - -- Requête pour rechercher le point bas d'un réseau / entrée - SELECT - STATION.name, - STATION.Z as Min - from STATION - join ( - select Min(STATION.Z) as Val_Min - from STATION - join _JONCTION on STATION.ID = _JONCTION.STATION_ID - WHERE _JONCTION.RESEAU_ID = {row[0]} - ) min on STATION.Z = min.Val_Min - LIMIT 1 - """) + -- Requête pour rechercher le point bas d'un réseau / entrée + SELECT + STATION.name, + STATION.Z as Min + from STATION + join ( + select Min(STATION.Z) as Val_Min + from STATION + join _JONCTION on STATION.ID = _JONCTION.STATION_ID + WHERE _JONCTION.RESEAU_ID = {row[0]} + ) min on STATION.Z = min.Val_Min + LIMIT 1 + """) altitude_min = cursor.fetchall() - ligne[7] = altitude_min[0][0] - ligne[8] = str("{:.2f}".format(altitude_min[0][1])) + ligne[8] = str(altitude_min[0][0]) + ligne[9] = str("{:.2f}".format(altitude_min[0][1])) cursor.execute(f""" - -- Requête pour rechercher le point haut d'un réseau / entrée - SELECT - STATION.name, - STATION.Z as Max - from STATION - join ( - select Max(STATION.Z) as Val_Max - from STATION - join _JONCTION on STATION.ID = _JONCTION.STATION_ID - WHERE _JONCTION.RESEAU_ID = {row[0]} - ) max on STATION.Z = max.Val_Max - LIMIT 1 - """) + -- Requête pour rechercher le point haut d'un réseau / entrée + SELECT + STATION.name, + STATION.Z as Max + from STATION + join ( + select Max(STATION.Z) as Val_Max + from STATION + join _JONCTION on STATION.ID = _JONCTION.STATION_ID + WHERE _JONCTION.RESEAU_ID = {row[0]} + ) max on STATION.Z = max.Val_Max + LIMIT 1 + """) altitude_max = cursor.fetchall() - ligne[9] = altitude_max[0][0] - ligne[10] = str("{:.2f}".format(altitude_max[0][1])) - ligne[3] = "{:.2f}".format(altitude_max[0][1] - altitude_min[0][1]) + ligne[10] = str(altitude_max[0][0]) + ligne[11] = str("{:.2f}".format(altitude_max[0][1])) + ligne[4] = str("{:.2f}".format(altitude_max[0][1] - altitude_min[0][1])) - for i in range(9): ligne[i+1] = ligne[i+1].ljust(_largeurCol) + for i in range(10): ligne[i+1] = ligne[i+1].ljust(_largeurCol) retour.append(ligne) # print(f"Reseau num {row[0]}, {len(liste_entree)} entrée(s): {_liste_ent} ") @@ -2540,17 +2161,17 @@ def sql_bilan_reseaux(): # Liste des visées non raccordées ############################################################################################################### cursor.execute(f""" - SELECT - sum (SHOT.LENGTH) as Long - FROM _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - JOIN STATION AS STATION_FROM ON SHOT.FROM_ID = STATION_FROM.ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - JOIN _JONCTION AS JONCTION_FROM ON SHOT.FROM_ID = JONCTION_FROM.ID - JOIN _JONCTION AS JONCTION_TO ON SHOT.TO_ID = JONCTION_TO.ID - WHERE _VISEE_FLAG.SERIE_ID is NULL and SHOT_FLAG.FLAG is NULL - """) + SELECT + sum (SHOT.LENGTH) as Long + FROM _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + JOIN STATION AS STATION_FROM ON SHOT.FROM_ID = STATION_FROM.ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + JOIN _JONCTION AS JONCTION_FROM ON SHOT.FROM_ID = JONCTION_FROM.ID + JOIN _JONCTION AS JONCTION_TO ON SHOT.TO_ID = JONCTION_TO.ID + WHERE _VISEE_FLAG.SERIE_ID is NULL and SHOT_FLAG.FLAG is NULL + """) result_long = cursor.fetchall() if result_long[0][0] is None : @@ -2559,17 +2180,17 @@ def sql_bilan_reseaux(): _result_long = result_long[0][0] cursor.execute(f""" - SELECT - sum (SHOT.LENGTH) as Long - FROM _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - JOIN STATION AS STATION_FROM ON SHOT.FROM_ID = STATION_FROM.ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - JOIN _JONCTION AS JONCTION_FROM ON SHOT.FROM_ID = JONCTION_FROM.ID - JOIN _JONCTION AS JONCTION_TO ON SHOT.TO_ID = JONCTION_TO.ID - WHERE _VISEE_FLAG.SERIE_ID is NULL and SHOT_FLAG.FLAG ='dpl' - """) + SELECT + sum (SHOT.LENGTH) as Long + FROM _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + JOIN STATION AS STATION_FROM ON SHOT.FROM_ID = STATION_FROM.ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + JOIN _JONCTION AS JONCTION_FROM ON SHOT.FROM_ID = JONCTION_FROM.ID + JOIN _JONCTION AS JONCTION_TO ON SHOT.TO_ID = JONCTION_TO.ID + WHERE _VISEE_FLAG.SERIE_ID is NULL and SHOT_FLAG.FLAG ='dpl' + """) result_dpl = cursor.fetchall() if result_dpl[0][0] is None : @@ -2578,17 +2199,17 @@ def sql_bilan_reseaux(): _result_dpl = result_dpl[0][0] cursor.execute(f""" - SELECT - sum (SHOT.LENGTH) as Long - FROM _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - JOIN STATION AS STATION_FROM ON SHOT.FROM_ID = STATION_FROM.ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - JOIN _JONCTION AS JONCTION_FROM ON SHOT.FROM_ID = JONCTION_FROM.ID - JOIN _JONCTION AS JONCTION_TO ON SHOT.TO_ID = JONCTION_TO.ID - WHERE _VISEE_FLAG.SERIE_ID is NULL and SHOT_FLAG.FLAG ='srf' - """) + SELECT + sum (SHOT.LENGTH) as Long + FROM _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + JOIN STATION AS STATION_FROM ON SHOT.FROM_ID = STATION_FROM.ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + JOIN _JONCTION AS JONCTION_FROM ON SHOT.FROM_ID = JONCTION_FROM.ID + JOIN _JONCTION AS JONCTION_TO ON SHOT.TO_ID = JONCTION_TO.ID + WHERE _VISEE_FLAG.SERIE_ID is NULL and SHOT_FLAG.FLAG ='srf' + """) result_srf = cursor.fetchall() if result_srf[0][0] is None : _result_srf = 0.0 @@ -2596,17 +2217,17 @@ def sql_bilan_reseaux(): _result_srf = result_srf[0][0] cursor.execute(f""" - SELECT - count (SHOT.LENGTH) as Long - FROM _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - JOIN STATION AS STATION_FROM ON SHOT.FROM_ID = STATION_FROM.ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - JOIN _JONCTION AS JONCTION_FROM ON SHOT.FROM_ID = JONCTION_FROM.ID - JOIN _JONCTION AS JONCTION_TO ON SHOT.TO_ID = JONCTION_TO.ID - WHERE _VISEE_FLAG.SERIE_ID is NULL --and SHOT_FLAG.FLAG ='srf' - """) + SELECT + count (SHOT.LENGTH) as Long + FROM _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + JOIN STATION AS STATION_FROM ON SHOT.FROM_ID = STATION_FROM.ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + JOIN _JONCTION AS JONCTION_FROM ON SHOT.FROM_ID = JONCTION_FROM.ID + JOIN _JONCTION AS JONCTION_TO ON SHOT.TO_ID = JONCTION_TO.ID + WHERE _VISEE_FLAG.SERIE_ID is NULL --and SHOT_FLAG.FLAG ='srf' + """) result_count = cursor.fetchall() if result_count[0][0] is None : @@ -2615,30 +2236,31 @@ def sql_bilan_reseaux(): else : _result_count = result_count[0][0] - ligne = [ ' - ', " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] + ligne = [ " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] _liste_ent = "Visée(s) non raccordées" _liste_ent = _liste_ent.ljust(_largeurColTete) - ligne[0] = _liste_ent - ligne[1] = str("0") - ligne[2] = str("{:.2f}".format(_result_long)) - ligne[4] = str("{:.2f}".format(_result_dpl)) - ligne[5] = str("{:.2f}".format(_result_srf)) - ligne[6] = str(_result_count) + ligne[0] = str(" ") + ligne[1] = str(_liste_ent) + ligne[2] = str("0") + ligne[3] = str("{:.2f}".format(_result_long)) + ligne[5] = str("{:.2f}".format(_result_dpl)) + ligne[6] = str("{:.2f}".format(_result_srf)) + ligne[7] = str(_result_count) cursor.execute(f""" - -- Requête pour rechercher le point bas d'un réseau / entrée - SELECT - STATION.name, - STATION.Z as Min - from STATION - join ( - select Min(STATION.Z) as Val_Min - from STATION - join _JONCTION on STATION.ID = _JONCTION.STATION_ID - WHERE _JONCTION.SERIE_ID is null - ) min on STATION.Z = min.Val_Min - LIMIT 1 - """) + -- Requête pour rechercher le point bas d'un réseau / entrée + SELECT + STATION.name, + STATION.Z as Min + from STATION + join ( + select Min(STATION.Z) as Val_Min + from STATION + join _JONCTION on STATION.ID = _JONCTION.STATION_ID + WHERE _JONCTION.SERIE_ID is null + ) min on STATION.Z = min.Val_Min + LIMIT 1 + """) altitude_min = cursor.fetchall() if len(altitude_min) == 0 : @@ -2649,23 +2271,23 @@ def sql_bilan_reseaux(): _altitude_min = altitude_min[0][1] _altitude_min_name = str(altitude_min[0][0]) - ligne[7] = str(_altitude_min_name) - ligne[8] = str("{:.2f}".format(_altitude_min)) + ligne[8] = str(_altitude_min_name) + ligne[9] = str("{:.2f}".format(_altitude_min)) cursor.execute(f""" - -- Requête pour rechercher le point haut d'un réseau / entrée - SELECT - STATION.name, - STATION.Z as Max - from STATION - join ( - select Max(STATION.Z) as Val_Max - from STATION - join _JONCTION on STATION.ID = _JONCTION.STATION_ID - WHERE _JONCTION.SERIE_ID is null - ) max on STATION.Z = max.Val_Max - LIMIT 1 - """) + -- Requête pour rechercher le point haut d'un réseau / entrée + SELECT + STATION.name, + STATION.Z as Max + from STATION + join ( + select Max(STATION.Z) as Val_Max + from STATION + join _JONCTION on STATION.ID = _JONCTION.STATION_ID + WHERE _JONCTION.SERIE_ID is null + ) max on STATION.Z = max.Val_Max + LIMIT 1 + """) altitude_max = cursor.fetchall() if len(altitude_max) == 0 : @@ -2676,12 +2298,12 @@ def sql_bilan_reseaux(): _altitude_max = altitude_max[0][1] _altitude_max_name = str(altitude_max[0][0]) - ligne[7] = str(_altitude_max_name) - ligne[8] = str("{:.2f}".format(_altitude_max)) - ligne[3] = "-" #"{:.2f}".format(altitude_max[0][1] - altitude_min[0][1]) + ligne[8] = str(_altitude_max_name) + ligne[9] = str("{:.2f}".format(_altitude_max)) + ligne[4] = str("-") #"{:.2f}".format(altitude_max[0][1] - altitude_min[0][1]) - for i in range(9): ligne[i+1] = ligne[i+1].ljust(_largeurCol) + for i in range(10): ligne[i+1] = ligne[i+1].ljust(_largeurCol) if _result_long !=0 or _result_dpl != 0 or _result_srf !=0 or _result_count !=0: retour.append(ligne) @@ -2692,63 +2314,63 @@ def sql_bilan_reseaux(): result_shot = 0 cursor.execute(f""" - select - COALESCE(round(sum(SHOT.length), 2), 0) as ttl, - count(_VISEE_FLAG.ID) as count, - STATION_TO.NAME as To_Name - from _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG is null - """) - _result_length = cursor.fetchall() + select + COALESCE(round(sum(SHOT.length), 2), 0) as ttl, + count(_VISEE_FLAG.ID) as count, + STATION_TO.NAME as To_Name + from _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG is 'apx' OR SHOT_FLAG.FLAG is NULL + """) + _result_length = cursor.fetchall() # Visées normales & Approximates (apx) result_length = float(_result_length[0][0]) result_shot = int(_result_length[0][1]) cursor.execute(f""" - SELECT - COALESCE(round(sum(SHOT.length), 2), 0) as ttl, - count(_VISEE_FLAG.ID) as count, - STATION_TO.NAME as To_Name - FROM _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='dpl' - """) + SELECT + COALESCE(round(sum(SHOT.length), 2), 0) as ttl, + count(_VISEE_FLAG.ID) as count, + STATION_TO.NAME as To_Name + FROM _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='dpl' + """) _result_length_dpl = cursor.fetchall() result_length_dpl = float(_result_length_dpl[0][0]) result_shot += int(_result_length_dpl[0][1]) cursor.execute(f""" - SELECT - COALESCE(round(sum(SHOT.length), 2), 0) as ttl, - count(_VISEE_FLAG.ID) as count, - STATION_TO.NAME as To_Name - FROM _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='srf' - """) + SELECT + COALESCE(round(sum(SHOT.length), 2), 0) as ttl, + count(_VISEE_FLAG.ID) as count, + STATION_TO.NAME as To_Name + FROM _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='srf' + """) _result_length_srf = cursor.fetchall() result_length_srf = float(_result_length_srf[0][0]) result_shot += int(_result_length_srf[0][1]) cursor.execute(f""" - -- Bilan table _VISEE_FLAG By entrées - select - ENTREE_ID - --STATION.NAME - FROM _VISEE_FLAG - JOIN STATION ON _VISEE_FLAG.ENTREE_ID = STATION.ID - WHERE SERIE_ID >0 - GROUP BY _VISEE_FLAG.ENTREE_ID - """) + -- Bilan table _VISEE_FLAG By entrées + select + ENTREE_ID + --STATION.NAME + FROM _VISEE_FLAG + JOIN STATION ON _VISEE_FLAG.ENTREE_ID = STATION.ID + WHERE SERIE_ID >0 + GROUP BY _VISEE_FLAG.ENTREE_ID + """) _result_entrees = cursor.fetchall() _total_entrees_topo = len(_result_entrees) @@ -2757,53 +2379,54 @@ def sql_bilan_reseaux(): _total_entrees_non_topo = len(result2) - _total_entrees_topo # type: ignore if _result_length[0][1] != None : - ligne = [ ' - ', " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] + ligne = [ " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] - ligne[0] = "Totaux (entrées et points fixes)".ljust(_largeurColTete) # Liste Entrées - ligne[1] = str("{:.0f}".format(len(result2))) # type: ignore # Nre Ent. - ligne[2] = str("{:.2f}".format(result_length)) # Dev. - ligne[4] = str("{:.2f}".format(result_length_dpl)) # Dupl. - ligne[5] = str("{:.2f}".format(result_length_srf)) # Surf. - ligne[6] = str(result_shot) # Visées + ligne[0] = str(" ") + ligne[1] = str("Totaux".ljust(_largeurColTete)) # Liste Entrées + ligne[2] = str("{:.0f}".format(len(result2))) # type: ignore # Nre Ent. + ligne[3] = str("{:.2f}".format(result_length)) # Dev. + ligne[5] = str("{:.2f}".format(result_length_dpl)) # Dupl. + ligne[6] = str("{:.2f}".format(result_length_srf)) # Surf. + ligne[7] = str(result_shot) # Visées cursor.execute(f""" - -- Requête pour rechercher le point bas d'un réseau / entrée - SELECT - STATION.name, - STATION.Z as Min - from STATION - join ( - select Min(STATION.Z) as Val_Min - from STATION - join _JONCTION on STATION.ID = _JONCTION.STATION_ID - ) min on STATION.Z = min.Val_Min - LIMIT 1 - """) + -- Requête pour rechercher le point bas d'un réseau / entrée + SELECT + STATION.name, + STATION.Z as Min + from STATION + join ( + select Min(STATION.Z) as Val_Min + from STATION + join _JONCTION on STATION.ID = _JONCTION.STATION_ID + ) min on STATION.Z = min.Val_Min + LIMIT 1 + """) altitude_min = cursor.fetchall() - ligne[7] = altitude_min[0][0] - ligne[8] = str(altitude_min[0][1]) + ligne[8] = str(altitude_min[0][0]) + ligne[9] = str(altitude_min[0][1]) cursor.execute(f""" - -- Requête pour rechercher le point haut d'un réseau / entrée - SELECT - STATION.name, - STATION.Z as Max - from STATION - join ( - select Max(STATION.Z) as Val_Max - from STATION - join _JONCTION on STATION.ID = _JONCTION.STATION_ID - ) max on STATION.Z = max.Val_Max - LIMIT 1 - """) + -- Requête pour rechercher le point haut d'un réseau / entrée + SELECT + STATION.name, + STATION.Z as Max + from STATION + join ( + select Max(STATION.Z) as Val_Max + from STATION + join _JONCTION on STATION.ID = _JONCTION.STATION_ID + ) max on STATION.Z = max.Val_Max + LIMIT 1 + """) altitude_max = cursor.fetchall() - ligne[9] = altitude_max[0][0] - ligne[10] = str("{:.2f}".format(altitude_max[0][1])) - ligne[3] = "{:.2f}".format(altitude_max[0][1] - altitude_min[0][1]) + ligne[10] = str(altitude_max[0][0]) + ligne[11] = str("{:.2f}".format(altitude_max[0][1])) + ligne[4] = str("{:.2f}".format(altitude_max[0][1] - altitude_min[0][1])) - for i in range(9): ligne[i+1] = ligne[i+1].ljust(_largeurCol) + for i in range(10): ligne[i+1] = ligne[i+1].ljust(_largeurCol) retour.append(ligne) else : @@ -2815,65 +2438,70 @@ def sql_bilan_reseaux(): # Liste des entrées uniques ############################################################################################################### cursor.execute(f""" - -- Bilan table _VISEE_FLAG By entrées - select - ENTREE_ID, - STATION.NAME - FROM _VISEE_FLAG - JOIN STATION ON _VISEE_FLAG.ENTREE_ID = STATION.ID - WHERE RESEAU_ID ==0 or RESEAU_ID is null and SERIE_ID >0 - GROUP BY _VISEE_FLAG.ENTREE_ID - """) + -- Bilan table _VISEE_FLAG By entrées + select + ENTREE_ID, + STATION.NAME, + STATION.SURVEY_ID, + SURVEY.NAME AS Survey_Name, + SURVEY.TITLE AS Survey_Title + FROM _VISEE_FLAG + JOIN STATION ON _VISEE_FLAG.ENTREE_ID = STATION.ID + JOIN SURVEY ON STATION.SURVEY_ID = SURVEY.ID + WHERE RESEAU_ID ==0 or RESEAU_ID is null and SERIE_ID >0 + GROUP BY _VISEE_FLAG.ENTREE_ID + """) + result = cursor.fetchall() for row in result : - ligne = [ ' - ', " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] + ligne = [ " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] result_shot = 0 cursor.execute(f""" - select - COALESCE(round(sum(SHOT.length), 2), 0) as ttl, - count(_VISEE_FLAG.ID) as count, - STATION_TO.NAME as To_Name - from _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG is null and _VISEE_FLAG.ENTREE_ID ={row[0]} - """) + select + COALESCE(round(sum(SHOT.length), 2), 0) as ttl, + count(_VISEE_FLAG.ID) as count, + STATION_TO.NAME as To_Name + from _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG is null and _VISEE_FLAG.ENTREE_ID ={row[0]} + """) _result_length = cursor.fetchall() result_length = float(_result_length[0][0]) result_shot = int(_result_length[0][1]) cursor.execute(f""" - select - COALESCE(round(sum(SHOT.length), 2), 0) as ttl, - count(_VISEE_FLAG.ID) as count, - STATION_TO.NAME as To_Name - from _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='dpl' and _VISEE_FLAG.ENTREE_ID ={row[0]} - """) + select + COALESCE(round(sum(SHOT.length), 2), 0) as ttl, + count(_VISEE_FLAG.ID) as count, + STATION_TO.NAME as To_Name + from _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='dpl' and _VISEE_FLAG.ENTREE_ID ={row[0]} + """) _result_length_dpl = cursor.fetchall() result_length_dpl = float(_result_length_dpl[0][0]) result_shot += int(_result_length_dpl[0][1]) cursor.execute(f""" - select - COALESCE(round(sum(SHOT.length), 2), 0) as ttl, - count(_VISEE_FLAG.ID) as count, - STATION_TO.NAME as To_Name - from _VISEE_FLAG - JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID - JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID - LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID - WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='srf' and _VISEE_FLAG.ENTREE_ID ={row[0]} - """) + select + COALESCE(round(sum(SHOT.length), 2), 0) as ttl, + count(_VISEE_FLAG.ID) as count, + STATION_TO.NAME as To_Name + from _VISEE_FLAG + JOIN SHOT ON SHOT.ID = _VISEE_FLAG.SHOT_ID + JOIN STATION AS STATION_TO ON SHOT.TO_ID = STATION_TO.ID + LEFT JOIN SHOT_FLAG ON SHOT.ID = SHOT_FLAG.SHOT_ID + WHERE To_Name!='.' AND To_Name!='-' AND SHOT_FLAG.FLAG ='srf' and _VISEE_FLAG.ENTREE_ID ={row[0]} + """) _result_length_srf = cursor.fetchall() result_length_srf = float(_result_length_srf[0][0]) @@ -2881,112 +2509,115 @@ def sql_bilan_reseaux(): if result_length_srf == 0.0 and result_length == 0.0 and result_length_dpl == 0.0 : _total_entrees_non_topo+=1 + else : - ligne[0] = str((row[1])).ljust(_largeurColTete) - ligne[1] = str("1") - ligne[2] = str("{:.2f}".format(result_length)) # Dev. - ligne[4] = str("{:.2f}".format(result_length_dpl)) # Dupl. - ligne[5] = str("{:.2f}".format(result_length_srf)) # Surf. - ligne[6] = str(result_shot) # Visées + ligne[0] = str(" ") + ligne[1] = str((row[4])).ljust(_largeurColTete) + ligne[2] = str("1") + ligne[3] = str("{:.2f}".format(result_length)) # Dev. + ligne[5] = str("{:.2f}".format(result_length_dpl)) # Dupl. + ligne[6] = str("{:.2f}".format(result_length_srf)) # Surf. + ligne[7] = str(result_shot) # Visées cursor.execute(f""" - -- Requête pour rechercher le point bas d'un réseau / entrée - SELECT - STATION.name, - STATION.Z as Min - from STATION - join ( - select Min(STATION.Z) as Val_Min - from STATION - join _JONCTION on STATION.ID = _JONCTION.STATION_ID - WHERE _JONCTION.ENTREE_ID = {row[0]} - ) min on STATION.Z = min.Val_Min - LIMIT 1 - """) + -- Requête pour rechercher le point bas d'un réseau / entrée + SELECT + STATION.name, + STATION.Z as Min + from STATION + join ( + select Min(STATION.Z) as Val_Min + from STATION + join _JONCTION on STATION.ID = _JONCTION.STATION_ID + WHERE _JONCTION.ENTREE_ID = {row[0]} + ) min on STATION.Z = min.Val_Min + LIMIT 1 + """) altitude_min = cursor.fetchall() - ligne[7] = altitude_min[0][0] - ligne[8] = str("{:.2f}".format(altitude_min[0][1])) + ligne[8] = str(altitude_min[0][0]) + ligne[9] = str("{:.2f}".format(altitude_min[0][1])) cursor.execute(f""" - -- Requête pour rechercher le point haut d'un réseau / entrée - SELECT - STATION.name, - STATION.Z as Max - from STATION - join ( - select Max(STATION.Z) as Val_Max - from STATION - join _JONCTION on STATION.ID = _JONCTION.STATION_ID - WHERE _JONCTION.ENTREE_ID = {row[0]} - ) max on STATION.Z = max.Val_Max - LIMIT 1 - """) + -- Requête pour rechercher le point haut d'un réseau / entrée + SELECT + STATION.name, + STATION.Z as Max + from STATION + join ( + select Max(STATION.Z) as Val_Max + from STATION + join _JONCTION on STATION.ID = _JONCTION.STATION_ID + WHERE _JONCTION.ENTREE_ID = {row[0]} + ) max on STATION.Z = max.Val_Max + LIMIT 1 + """) altitude_max = cursor.fetchall() - ligne[9] = altitude_max[0][0] - ligne[10] = str("{:.2f}".format(altitude_max[0][1])) - ligne[3] = "{:.2f}".format(altitude_max[0][1] - altitude_min[0][1]) + ligne[10] = str(altitude_max[0][0]) + ligne[11] = str("{:.2f}".format(altitude_max[0][1])) + ligne[4] = str("{:.2f}".format(altitude_max[0][1] - altitude_min[0][1])) - for i in range(9): ligne[i+1] = ligne[i+1].ljust(_largeurCol) + for i in range(10): ligne[i+1] = ligne[i+1].ljust(_largeurCol) retour.append(ligne) ############################################################################################################### # Entrées sans topo ############################################################################################################### - ligne = [ ' - ', " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] + ligne = [ " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - ", " - "] if _total_entrees_non_topo >=1 : - ligne[0] = "Entrée(s) sans topographie".ljust(_largeurColTete) - ligne[1] = str(_total_entrees_non_topo) - ligne[2] = "0.00" - ligne[3] = "0.00" - ligne[4] = "0.00" - ligne[5] = "0.00" - ligne[6] = "0" + ligne[0] = str(" ") + ligne[1] = str("Entrée(s) sans topographie".ljust(_largeurColTete)) + ligne[2] = str(_total_entrees_non_topo) + ligne[3] = str("0.00") + ligne[4] = str("0.00") + ligne[5] = str("0.00") + ligne[6] = str("0.00") + ligne[7] = str("0") cursor.execute(f""" - -- Requête pour rechercher le points bas d'un réseau / entrée - SELECT - STATION.name, - STATION.Z as Min - from STATION - join ( - select Min(STATION.Z) as Val_Min - from STATION - join _JONCTION on STATION.ID = _JONCTION.STATION_ID - WHERE _JONCTION.SERIE_ENT = -1 AND _JONCTION.STATION_TYPE = 'ent' - ) min on STATION.Z = min.Val_Min - LIMIT 1 - """) + -- Requête pour rechercher le points bas d'un réseau / entrée + SELECT + STATION.name, + STATION.Z as Min + from STATION + join ( + select Min(STATION.Z) as Val_Min + from STATION + join _JONCTION on STATION.ID = _JONCTION.STATION_ID + WHERE _JONCTION.SERIE_ENT = -1 AND _JONCTION.STATION_TYPE = 'ent' + ) min on STATION.Z = min.Val_Min + LIMIT 1 + """) altitude_min = cursor.fetchall() - ligne[7] = altitude_min[0][0] - ligne[8] = str(altitude_min[0][1]) + ligne[8] = str(altitude_min[0][0]) + ligne[9] = str(altitude_min[0][1]) cursor.execute(f""" - -- Requête pour rechercher le point haut d'un réseau / entrée - SELECT - STATION.name, - STATION.Z as Max - from STATION - join ( - select Max(STATION.Z) as Val_Max - from STATION - join _JONCTION on STATION.ID = _JONCTION.STATION_ID - WHERE _JONCTION.SERIE_ENT = -1 AND _JONCTION.STATION_TYPE = 'ent' - ) max on STATION.Z = max.Val_Max - LIMIT 1 - """) + -- Requête pour rechercher le point haut d'un réseau / entrée + SELECT + STATION.name, + STATION.Z as Max + from STATION + join ( + select Max(STATION.Z) as Val_Max + from STATION + join _JONCTION on STATION.ID = _JONCTION.STATION_ID + WHERE _JONCTION.SERIE_ENT = -1 AND _JONCTION.STATION_TYPE = 'ent' + ) max on STATION.Z = max.Val_Max + LIMIT 1 + """) altitude_max = cursor.fetchall() - ligne[9] = altitude_max[0][0] - ligne[10] = str("{:.2f}".format(altitude_max[0][1])) - ligne[3] = "{:.2f}".format(altitude_max[0][1] - altitude_min[0][1]) + ligne[10] = str(altitude_max[0][0]) + ligne[11] = str("{:.2f}".format(altitude_max[0][1])) + ligne[4] = str("{:.2f}".format(altitude_max[0][1] - altitude_min[0][1])) - for i in range(9): ligne[i+1] = ligne[i+1].ljust(_largeurCol) + for i in range(10): ligne[i+1] = ligne[i+1].ljust(_largeurCol) retour.append(ligne) @@ -2995,10 +2626,10 @@ def sql_bilan_reseaux(): # Tri et résultats ############################################################################################################### - entetes = [ 'Entrée(s)', "Nbre", "Dev.(m)", "Prof.(m)", "Dupl.(m)", "Surf.(m)", "Visées", "ID Sta.", "Alt. min(m)", "ID Sta.", "Alt. max(m)" ] + entetes = [ "Réseaux", "Entrée(s)", "Nbre", "Dev.(m)", "Prof.(m)", "Dupl.(m)", "Surf.(m)", "Visées", "ID Sta.", "Alt. min(m)", "ID Sta.", "Alt. max(m)" ] entetes[0] = entetes[0].ljust(_largeurColTete) - for i in range(9): entetes[i+1] = entetes[i+1].ljust(_largeurCol) + for i in range(10): entetes[i+1] = entetes[i+1].ljust(_largeurCol) _corps_retour = sorted(retour, key=cle_tri, reverse=True) @@ -3080,7 +2711,37 @@ def sql_optimisation(): # Clé de tri # ##################################################################################################################################### def cle_tri(element): - return float(element[2]) + return float(element[3]) + +##################################################################################################################################### +# Nom de base de la base de donnée # +##################################################################################################################################### +def sql_base_name(): + global error_count + + try: + + cursor.execute(f""" + SELECT + SURVEY.TITLE + FROM SURVEY + WHERE PARENT_ID = 1 + """) + result = cursor.fetchall() + + return str(result[0][0]) + + + except sqlite3.Error as e: + log.error(f"Exécution de la requête (sql_base_name):{Colors.ENDC} {e}") + error_count += 1 + return None + + except Exception as e: + log.error(f"Exécution de sql_base_name:{Colors.ENDC} {e}") + error_count += 1 + + return None ##################################################################################################################################### # Bilan topo par années # @@ -3094,11 +2755,11 @@ def sql_bilan_annee(): retour = [] cursor.execute(f""" - select strftime('%Y', TOPO_DATE) as annee - from CENTRELINE - Where TOPO_DATE is not NULL - order by TOPO_DATE - """) + select strftime('%Y', TOPO_DATE) as annee + from CENTRELINE + Where TOPO_DATE is not NULL + order by TOPO_DATE + """) result = cursor.fetchall() entetes = [ "Année" , "Dev.(m)", "Cumul (m)", "Dupl.(m)", "Cumul (m)", "Surf.(m)", "Cumul (m)" ] @@ -3111,13 +2772,13 @@ def sql_bilan_annee(): # topo sans année cursor.execute(f""" - select - COALESCE( sum(LENGTH), 0), - COALESCE (sum(DUPLICATE_LENGTH), 0), - COALESCE( sum(SURFACE_LENGTH), 0) - from CENTRELINE - where TOPO_DATE IS NULL - """) + select + COALESCE( sum(LENGTH), 0), + COALESCE (sum(DUPLICATE_LENGTH), 0), + COALESCE( sum(SURFACE_LENGTH), 0) + from CENTRELINE + where TOPO_DATE IS NULL + """) bilan_annee = cursor.fetchall() if ( len(bilan_annee) >= 1 ) and (( float(bilan_annee[0][0]) > 0.0) or (float(bilan_annee[0][1]) > 0.0 ) or (float(bilan_annee[0][2]) > 0.0 )): @@ -3146,13 +2807,13 @@ def sql_bilan_annee(): for annee in range(debut, fin + 1, 1 ): cursor.execute(f""" - select - COALESCE (sum(LENGTH), 0), - COALESCE (sum(DUPLICATE_LENGTH), 0), - COALESCE (sum(SURFACE_LENGTH), 0) - from CENTRELINE - where TOPO_DATE between '{annee}-01-01' and '{annee}-12-31'; - """) + select + COALESCE (sum(LENGTH), 0), + COALESCE (sum(DUPLICATE_LENGTH), 0), + COALESCE (sum(SURFACE_LENGTH), 0) + from CENTRELINE + where TOPO_DATE between '{annee}-01-01' and '{annee}-12-31'; + """) bilan_annee = cursor.fetchall() ligne = [ " - ", " - ", " - ", " - ", " - ", " - ", " - " ] @@ -3175,12 +2836,12 @@ def sql_bilan_annee(): except sqlite3.Error as e: - log.error(f"Erreur lors de l'exécution de la requête (sql_bilan_annee):{Colors.ENDC} {e}") + log.error(f"Exécution de la requête (sql_bilan_annee):{Colors.ENDC} {e}") error_count += 1 return None except Exception as e: - log.error(f"Erreur lors de l'exécution de sql_bilan_annee:{Colors.ENDC} {e}") + log.error(f"Exécution de sql_bilan_annee:{Colors.ENDC} {e}") error_count += 1 return None @@ -3410,15 +3071,16 @@ def PlotExploYears(graph_name, rangeyear = [1959, datetime.now().year], systems return - +##################################################################################################################################### ##################################################################################################################################### # # # Main # # # ##################################################################################################################################### +##################################################################################################################################### if __name__ == '__main__': - _largeurColTete = 35 - _largeurCol = 15 + _largeurColTete = 40 + _largeurCol = 20 avt_compteur = 0 error_count = 0 visee_suprimmees= [ 0.0, 0.0, 0.0, 0] # Lg, Lg dpl, Lg surf @@ -3502,6 +3164,8 @@ if __name__ == '__main__': output_file_name_histo = outputfolder + input_file[:-4] + "_histo.pdf" output_file_name_year = outputfolder + input_file[:-4] + "_year" imported_database = outputfolder + input_file[:-4] + "_stats.db" + + output_file_md = os.path.join(os.path.dirname(input_file_name), globalDat.outputFilename) log = setup_logger(output_file_name_log, globalDat.debug_log) @@ -3530,12 +3194,12 @@ if __name__ == '__main__': cursor = conn.cursor() construction_tables() sql_optimisation() - calcul_stats(output_file_name, input_file[:-4]) + calcul_stats(output_file_name, output_file_md, input_file[:-4]) elif args.option == "update" : conn = sqlite3.connect(imported_database) # Connexion à la base de données SQLite cursor = conn.cursor() - calcul_stats(output_file_name, input_file[:-4]) + calcul_stats(output_file_name, output_file_md, input_file[:-4]) elif args.option == "test" : conn = sqlite3.connect(imported_database) # Connexion à la base de données SQLite @@ -3551,13 +3215,13 @@ if __name__ == '__main__': minutes, secondes = divmod(secondes, 60) # 60 secondes dans une minute if duree.seconds > 3600: - duree_formatee = f"{heures:02d}{Colors.INFO}(h){Colors.ENDC}{minutes:02d}{Colors.INFO}(m){Colors.ENDC}{secondes:02d}{Colors.INFO}(s)" + duree_formatee = f"{heures:02d}{Colors.ENDC}(h){Colors.ENDC}{minutes:02d}{Colors.ENDC}(m){Colors.ENDC}{secondes:02d}{Colors.ENDC}(s)" elif duree.seconds > 60: - duree_formatee = f"{minutes:02d}{Colors.INFO}(m){Colors.ENDC}{secondes:02d}{Colors.INFO}(s)" + duree_formatee = f"{minutes:02d}{Colors.ENDC}(m){Colors.ENDC}{secondes:02d}{Colors.ENDC}(s)" else : - duree_formatee = f"{secondes:02d}{Colors.INFO}(s)" + duree_formatee = f"{secondes:02d}{Colors.ENDC}(s)" if error_count == 0 : log.info(f"Execution terminée sans erreur en {Colors.ENDC}{duree_formatee}{Colors.INFO}")