Message posté par : T. Rossini
----------------------------------------
-----------------
Citation :
Si je mets :: numeric à la place de :: text, cela ne fonctionne pas.
-----------------
Oui c'est logique, vu que votre serveur Postgres utilise "." comme
séparateur décimal, il refusera de transformer un texte du type 'X,Y'
en numérique.
D'autant plus que l'on y concatene le texte " m²" !
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324041#p324041
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : Jean Cascalès
----------------------------------------
Si je mets :: numeric à la place de :: text, cela ne fonctionne pas.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324040#p324040
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : francis_31
----------------------------------------
La méthode indiquée dans Options - Options avancées du logiciel excel est intéressante et doit résoudre le problème, à voir sur combien de poste il va falloir qu'il aille réaliser le changement et si ça va poser problème chez les utilisateurs après car ils ont éventuellement des fichiers avec le séparateur "." provenant d'autres sources .
A ma connaissance on peut le faire aussi en réglage Windows mais là attention car ça peut poser des problèmes sur d'autres logiciels, de ce fait j'y toucherais pas si j'avais ce type de problème.
Je suis tout à fait d'accord sur l'optimisation de la requête sql.
Disons que ça fait un bon exercice pour comprendre le fonctionnement des requêtes avec l'utilisation des fonctions et typages :-)
Courage. La solution à l'air proche !
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324039#p324039
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : T. Rossini
----------------------------------------
-----------------
Citation :
Juste une chose là-dessus que je ne suis pas absolument sur : j'aurais utilisé round pour qu'il arrondisse la dernière décimale car je ne sais pas si fonctio trunc le fait (après peu d'importance à mon avis car vous ne devez pas être à 1 cm carré près).
-----------------
Trunc n'arrondit pas en effet, il tronque après n décimales.
Si on désire arrondir, on peut utiliser comme vous l'indiquez
la fonction round.
Pour ce qui est du formatage :
J'ai testé sous excel (2007), le fait d'encadrer
la valeur par des double quotes (") n'affecte pas
le formatage des chiffres à virgule,
excel les formate bien en valeurs numériques.
Est ce que le séparateur de décimal dans excel
est bien , ?
Il faut regarder dans Options>Options avancées
Sur le fait qu'Excel évalue tout de même la somme
de valeurs "textes", ben, c'est une fonctionnalité
je pense, Excel tente de convertir le texte en numérique
de manière cachée.
Ca permet à Excel d'être souple, et de
pas forcer l'utilisateur à spécifier le bon format de données
pour avoir un résultat rapide, comme une somme.
Ca permet de pas être hyper rigoureux.
Par contre, y'a pas grande utilité à caster un flottant/numeric
en text, remplacer le separateur de décimale par ",",
pour ensuite le re caster en numeric, à part si on a des
actions chez Intel et qu'on veut user le processeur
de la machine plus rapidement.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324034#p324034
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : francis_31
----------------------------------------
oui ça devrait être bon.
je dirais même avec trunc(st_area(parcelle.geom)::numeric, 2). En fait, sans rien cela devrait donner du numeric. Voir http://www.postgresqltutorial.com/postgresql-trunc/
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324032#p324032
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : Jean Cascalès
----------------------------------------
Pour répondre à la deuxième question elle reste en texte car vous l'explicitez vous-même dans trunc(st_area(parcelle.geom)::numeric, 2)::text c'est le ::text qui type la colonne
--> Donc si je suis ton raisonnement, je mets ::numeric à la place de ::text?
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324029#p324029
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : francis_31
----------------------------------------
à mon avis à lire ce que vous envoyez il faut refaire le test de la manière suivante:
il faut d'abord faire un "DROP" de la vue (la supprimer) et surtout bien conserver la requête avant pour la recréer après.
Puis recréer la vue avec CREATE VIEW etc.
S'il écrit à nouveau un message de type qu'il ne peut pas convertir la valeur de l'attribut 'superficie' en numeric je pense que c'est bien ça c'est que pour la base de données le séparateur de décimale est le point et pas la virgule. Donc pour avoir un nombre avec deux décimales il faudra conserver le point en séparateur je ne vois pas quoi faire d'autre dans la base de données ou en tout cas je ne connais pas (lié aux options de création de la base de données au tout début à mon sens).
Pour répondre à la deuxième question elle reste en texte car vous l'explicitez vous-même dans trunc(st_area(parcelle.geom)::numeric, 2)::text c'est le ::text qui type la colonne
Juste une chose là-dessus que je ne suis pas absolument sur : j'aurais utilisé round pour qu'il arrondisse la dernière décimale car je ne sais pas si fonctio trunc le fait (après peu d'importance à mon avis car vous ne devez pas être à 1 cm carré près).
Enfin, concernant l'option de pgadmin 4, oui c'est une bonne idée sauf que ça ne réponds pas à son souci car à la fin il souhaite que ce soit un export déclenché depuis un logiciel SIG Web et non pas via pgAdmin.
C'est pour ça que je suggérais de regarder dans un premier temps le module cadastre de vmap qui fournit peut-être en standard l'information qu'il souhaite (une fois les parcelles au panier cliquer sur Générer un rapport et tester les différents rapports dont certains qui sont déjà lisibles dans excel).
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324028#p324028
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : Jean Cascalès
----------------------------------------
Je pense que le plus simple pour les utilisateurs est qu'ils ouvrent l'export sous excel.
Mais sous excel, la superficie est toujours considérée comme du texte.
Je réitère ma question : pourquoi la superficie est considérée comme du texte alors qu'elle est calculée?
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324027#p324027
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : T. Rossini
----------------------------------------
Oui, Francis a raison,
l'éditeur de texte de pgAdmin4 est moyen,
mieux vaut écrire ses requêtes avec quelque chose de plus
ergonomique.
Pour votre problème de format de données,
dans l'export au format csv de pgAdmin4,
vous pouvez modifier le caractère délimiteur de champ
par défaut ",". Une autre valeur commune est ";"
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324026#p324026
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : Jean Cascalès
----------------------------------------
Ce que je ne comprends pas, c'est lorsque l'on demande de calculer la superficie, la superficie est effectivement calculée mais pourquoi reste-t-elle sous format texte?
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324025#p324025
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net