#1 Mon 18 June 2012 15:17
- Emilie B190A
- Juste Inscrit !
- Date d'inscription: 18 Jun 2012
- Messages: 4
QGIS 1.7 : Mise à jour de colonne
Bonjour,
Je découvre Q-GIS et j'essaye de réaliser la même mise à jour qu'avec MapInfo, mais je bloque.. ici, je pense qu'il faut passer par la calculatrice de champ 'Mise à Jour' mais je ne trouve pas la formule à appliquer..
Je ne parviens pas non plus à placer le résultat de la séléction obtenues dans une nouvelle table. (ex : tous les types "1" dans une seule table)
J'ai une table avec plusieurs colonnes, dans l'une d'elle (Type) il y a un chiffre (en caractère) 1, 2, 3... qui correspond à une entité hydrologiques, dans une autre colonne (Nom) j'aimerais inscrire automatiquement le nom de l'entité.
Par exemple, Si Type = 1 , alors Nom = Canal ; si Type = 2 , alors Nom = Fleuve,...
Si quelqu'un a déjà rencontrer ce problème et peut m'aider ce serait super,
Emilie.
Hors ligne
#3 Mon 18 June 2012 17:26
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3944
Re: QGIS 1.7 : Mise à jour de colonne
Bonjour,
1/ Pour copier les entités sélectionnées dans une nouvelle table, :
- soit clic droit sur la couche mère, sauvegarder la sélection sous ... et vous choisissez le format, la projection, la localisation....
- soit, si la couche de destination existe déjà, faire un copier-coller des entités : en étant sur la couche d'origine, Edition>Copier les entités, sélectionner la couche de destination, Edition > Coller les entités. L'idéal est que les deux couches aient la même structure, pour ne pas avoir à retraiter certains champs.
2/ Pour sélectionner plusieurs entités avec une fonction (ex: tous les objets de type 1), ouvrir la table d'attributs, tapez 1 dans la zone de texte en face de "cherchez pour au bas de la fenêtre, sélectionnez le champ "Type" en face et cliquez sur Cherchez. vous sélectionnez ainsi toutes vos entités de Type="1".
On peut aussi ranger le champ en question et sélectionner le premier, Shift + le dernier de la liste.
3/ Pour ce qui est du remplissage automatisé d'un champ, je ne sais pas si QGis propose des fonctions de remplissage préalable à la création de l'entité. Mais il propose un outil de modification en masse d'un champ. c'est effectivement la calculatrice de champs. Dans votre cas, ce qu'il y a lieu de faire, une fois que vos entités sont sélectionnées (veillez à bien être en mode édition sur la couche), dans la calculatrice de champ:
- gardez coché "Mise à jour des entités sélectionnées";
- cochez "champ de mise à jour existant" et choisissez le champ "Nom" en face
- tapez 'Canal' (avec les apostrophes) dans la zone de texte "expression de la calculatrice" en bas. Ainsi toutes les entités de type 1 que vous avez sélectionnées auront dans leur champ "Nom", la valeur "Canal".
Il faudra ensuite faire le même exercice pour les autres types.
En espérant avoir compris votre souci et apporté des éclairages...
Hors ligne
#4 Mon 18 June 2012 17:43
- Emilie B190A
- Juste Inscrit !
- Date d'inscription: 18 Jun 2012
- Messages: 4
Re: QGIS 1.7 : Mise à jour de colonne
Merci c'est tout à fait ça ! C'est renseigné et la table est propre! le problème de la jointure est qu'elle ajoute des champs que l'on ne peut pas supprimer avec QGIS seulement..
J'avais trouvé la fonction replace(type, 1 , canal) mais sans faire de sélection avant, donc ça effaçait les mises à jours précédentes..! Du coup j'ai enregistré chaque Type dans une table et je ne parvenais pas à les fusionner (erreur Python apparement..?) Ta solution règle tout le problème, merci.
Emile
Hors ligne
#5 Tue 19 June 2012 13:50
- geofff
- Participant occasionnel
- Date d'inscription: 8 Sep 2008
- Messages: 23
Re: QGIS 1.7 : Mise à jour de colonne
Merci c'est tout à fait ça ! C'est renseigné et la table est propre! le problème de la jointure est qu'elle ajoute des champs que l'on ne peut pas supprimer avec QGIS seulement..
Emile
L'extension "table manager", accessible via le menu Extension/Installateurs d’extensions python, permet de modifier la table : suppression de colonnes, modifications de l'ordre etc.
Hors ligne