banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

#1 Mon 12 January 2026 18:52

image95
Participant assidu
Date d'inscription: 6 Sep 2014
Messages: 315

QGIS Modeler: Suppresion / Ecrasement auto des fichiers de sortie ?

Bonjour,
Je travaille avec Qgis 3.40.
J'ai mis en place un petite modeler qgis avec plusieurs entrées, algorithmes, sorties intermédiaires et résultat final (sortie du modèle). Pour les sorties d'algorithmes intermédiaires, j'ai à chaque défini une "valeur precalculée" en chemin relatif. Je joins une capture écran : un exemple de définition d'output que j'ai défini pour un algorithme.

Je colle ci dessous l'expression définie :

Code:

@project_home || '/intermediaire' || '/segmentation_raster' || '.tif'

Ainsi, toutes mes sorties intermédiaires sont stockées dans le dossier dénommé "intermédiaire". Et chaque fichier de sortie porte un nom et une extension prédéfinie.
Celà fonctionne. Mais j'aimerais que ces fichiers 'intermédiaires' se suppriment automatiquement dès que se réalise une nouvelle exécution du modeler.
Que lors d'une nouvelle exécution du modeler, les nouveaux fichiers intermédiaires générés puissent écraser (supprimer/remplacer) les fichiers de sortie résultants de la précédente exécution du modeler. Sauriez vous me dire comment définir celà ?
Un grand merci.


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#2 Thu 15 January 2026 11:35

mdxp
Juste Inscrit !
Date d'inscription: 15 Jan 2026
Messages: 3
Site web

Re: QGIS Modeler: Suppresion / Ecrasement auto des fichiers de sortie ?

Bonjour,

De mémoire, il n’y a pas de mécanisme natif dans le modeleur QGIS qui permette de "purger" automatiquement les sorties intermédiaires d’une exécution précédente avant de relancer le modèle. Le comportement que vous observez est donc normal.

Deux points importants toutefois. Si les fichiers intermédiaires portent exactement le même nom et le même chemin que lors de l’exécution précédente, QGIS est capable de les écraser, à condition que l’option d’écrasement des fichiers de sortie soit autorisée dans les paramètres de traitement. Dans ce cas, il n’y a pas de suppression explicite, mais un remplacement des fichiers existants, ce qui revient au même fonctionnellement.

En revanche, si les fichiers sont verrouillés par une couche encore chargée dans le projet, ou si QGIS considère la sortie comme déjà existante et protégée, l’écrasement peut échouer. C’est souvent ce point qui pose problème, surtout avec des rasters.

La solution la plus robuste reste d’utiliser des sorties temporaires pour toutes les couches réellement intermédiaires, et de ne sauvegarder sur disque que le résultat final. Les sorties temporaires sont automatiquement nettoyées à la fin de l’exécution du modèle et évitent totalement ce type de gestion.

Si vous avez absolument besoin de conserver des fichiers intermédiaires sur disque, l’autre approche consiste à ajouter une étape au début du modèle via un petit script Python ou un algorithme de type "supprimer un fichier/ dossier", qui vide explicitement le répertoire « intermédiaire » avant de lancer les traitements. Ce n’est pas très élégant, mais c’est actuellement la seule manière fiable d’automatiser le nettoyage.

Hors ligne

 

#3 Mon 19 January 2026 09:14

GlaDal
Participant assidu
Date d'inscription: 30 Aug 2013
Messages: 1206

Re: QGIS Modeler: Suppresion / Ecrasement auto des fichiers de sortie ?

Bonjour,

Pour compléter, voici 2 extensions ProcessingPowerPack et Append Features to Layer qui ne répondent pas tout à fait à votre besoin mais qui peut-être vous aideront dans la construction de vos modèles. De mon côté, pour pouvoir générer mes résultats de modèles, je créé des dossier dont le nom est basé sur l'heure d'execution comme ça, je peux créé autant de fichiers temporaires que je veux et sur certains, j'ai du mettre une option du style 'cocher cette case si couche définitive' et je change le chemin de sortie si coché.
L'expression pour la date (enregistré dans une variable projet - et c'est le résultat de cette variable projet que je réutilise dans mes autres expressions  : format_date( $now,
'hh_mm_ss')
Tout n'est peut-être pas clair, j'espère donner des pistes...

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo