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é ?

Annonce

Rencontres QGIS 2025

Les inscriptions sont ouvertes !

#1 Sat 22 March 2025 12:08

Glo
Participant occasionnel
Date d'inscription: 23 May 2021
Messages: 19

QGIS 3.40: Reattribuer des donnees a des empreintes tempo

Bonjour,

Petite question pour ceux d'entre-vous qui auraient l'habitude de "jouer" et sauvegarder des projets avec beaucoup de couches temporaires siouplait..! :

J'ai fabriqué cette semaine un projet avec un fond raster, une couche issue d'un csv, et beaucoup de couches temporaires créées avec des traitements de la boîte à outils à partir de ma couche issue de mon csv.

J'ai fini mon travail avec un peu moins de 200 couches temporaires.

J'ai enregistré mon projet (.ggz) mais évidemment les couches temporaires sont restées temporaires.
J'ai essayé de voir comment sauvegarder en lot toutes mes couches temporaires avec les outils natifs de Qgis, mais je n'ai pas trouvé.

J'ai ensuite trouvé le plugin Save All, et je pensais que ça avait marché mais en fait il m'a (après un peu de patience) sauvegardé mon projet et mes couches dans un nouveau dossier, avec un projet nouvellement créé sous forme de .qgs, un fichier zip blabla_attachments.zip, toutes mes couches temporaires au format .gpkg (j'aurais plutôt préféré du dbf), mon raster de fond apparemment réécrit et prenant maintenant 3 fois sa taille, etc.
Pas terrible donc.

A la fermeture de mon projet initial, il ne m'a pas fait "d'avertissement" vis à vis des couches temporaires (d'ailleurs elles n'étaient plus marquées en temporaires, il n'y avait plus le petit symbole avec le petit processeur à leur droite), donc je pensais que c'était tout bon.

Mais maintenant quand je réouvre mon projet initial en qgz, toutes les couches sont encore marquées comme présentes, mais elles ont récupéré le petit symbole de processeur pour dire qu'elles sont temporaires, et surprise elles ne s'affichent plus sur la carte même en les cochant-décochant. Si je ferme le projet, il ne m'affiche aucun avertissement non plus, alors que toutes les couches sont soit-disant encore temporaires dans l'inventaire des couches (même si en fait j'ai l'impression qu'elles ne sont plus là), et que donc logiquement il devrait m'avertir avant fermeture. (Et si je rerallume-rééteins, rien ne change)

Ma question, du coup :
Y a t-il moyen "facilement" (en lot quoi) de rafraichir les idées à toutes ces couches temporaires apparemment vides pour leur dire où sont leurs données (données qui avaient été stockées en gpkg dans un autre projet par le plugin Save All, donc qui ne sont pas complètement perdues).
Certes je pourrais tout supprimer ces fantômes de couches dans mon projet initial, et réimporter à la main tous les gpkg qui avaient été créés par Save All, mais dans ce cas là je devrais tout réorganiser l'ordre des couches à la main (l'ordre dans lequel je les veux, et dans lequel sont encore ordonnés les fantômes de couches, n'est pas alphabétique) ?

Merci à tous ceux qui auront éventuellement des idées pour m'aider et bonne aprem à tout le monde !

Hors ligne

 

#2 Thu 27 March 2025 11:42

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 4038

Re: QGIS 3.40: Reattribuer des donnees a des empreintes tempo

Bonjour,

Glo a écrit:

J'ai fini mon travail avec un peu moins de 200 couches temporaires.


Ah oui, quand même! Elles sont vraiment toutes utiles?

J'ai essayé de voir comment sauvegarder en lot toutes mes couches temporaires avec les outils natifs de Qgis, mais je n'ai pas trouvé.


Non, QGIS n'a pas d'outils natifs pour sauvegarder les couches temporaires en tant que couches temporaires dans un projet, parce que justement, elles sont réputées temporaires et appelées à disparaître. Je ne pense pas que ce soit une posture temporaire, le sujet ayant été abordé quelques fois déjà dans les tickets.
Je ne connais pas "Save all" mais l'outil de référence pour sauvegarder les couches temporaires telles quelles dans un fichier projet est le plugin "Memory layer saver".
Mais si par sauvegarder, vous entendez "créer un nouveau fichier de même contenu", l'algorithme "Sauvegarder les entités d'une couche vectorielle vers fichier" en mode lot devrait faire le job.

Y a t-il moyen "facilement" (en lot quoi) de rafraichir les idées à toutes ces couches temporaires apparemment vides pour leur dire où sont leurs données


Pour ce qui est de récupérer les données dans les tables temporaires vides (càd, l'action inverse en quelque sorte), ce pourrait être possible dans un futur proche (QGIS 3.44) en utilisant l'algorithme sus-nommé en mode lot, avec la nouvelle fonctionnalité d'output en couche temporaire (https://github.com/qgis/QGIS/pull/60984). Mais j'ai pas testé. Et là je suppose que vos couches temporaires le sont encore, ce qui est pas sûr vu qu'il n'y a pas l’icône.

En l'état actuel des choses, je ne vois que la substitution des couches dysfonctionnelles par les gpkg sauvegardées: clic droit sur la couche, modifier la source de données. Le hic, c'est peut-être pas faisable en 200 fois. Mais, si vous êtes aventureux, on peut imaginer que vous le fassiez pour deux ou trois couches dans une copie du fichier projet (.qgs), et à l'aide d'un éditeur de texte, et en observant le modèle de construction des références aux couches, faire du rechercher remplacer (en mode étendu) pour insérer vos gpkg. Mais ça, ça revient au même résultat que le fichier projet généré par "save all", d'où ma question: "pourquoi n'utilisez-vous pas ce fichier?".

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo