Message posté par : francis_31
----------------------------------------
dsl j'étais entrain décrire, je n'ai pas vu la réponse de 17h15 (tumasgiu) mais ça semble être à peu près la même solution.
bonne fin d'apm !
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324045#p324045
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 :
si vous avez mis : trunc(st_area(parcelle.geom)::numeric, 2) sans le replace avant ça doit donner du numeric à la fin
si vous avez mis: trunc(st_area(parcelle.geom)::numeric, 2)::numeric sans le replace ça sert pas vous aurez aussi du numeric
si vous avez mis: replace(trunc(st_area(parcelle.geom)::numeric, 2)::text,'.', ',') AS superficie ça donne du texte
si vous avez mis: replace(trunc(st_area(parcelle.geom)::numeric, 2)::text,'.', ',')::numeric AS superficie soit ça fonctionne et ça donne du numeric et ça répond à votre question (mais à mon sens ça risque de pas passer car postgresql ne voudra pas typer une colonne en nombre si pour lui une virgule n'est pas un séparateur de décimale, ça reste à tester on ne sait jamais).
si vous avez mis: replace(trunc(st_area(parcelle.geom)::numeric, 2),'.', ',')::numeric AS superficie ça risque de pas fonctionner parceque la fonction replace attend à mon avis une chaine de caractère en premier paramètre et non pas un numeric ce qui est le cas ici.
Ainsi, et au vu des différents messages ce serait moi je ferai :
round(st_area(parcelle.geom)::numeric, 2) ce qui donnera une valeur qui est un nombre et pas un texte, qui sera arrondi à la dernière décimale mais qui conservera le point comme séparateur de décimale.
Ensuite, je testerai l'option indiquée par tumasgiu dans excel et les options avancées.
C'est ce qui me semble dans votre cas le plus adapté à défaut d'une solution idéale.
Après il faudrait passer probablement par un développement spécifique VMap qui vous permettrait via un fichier xsl fop d'avoir une colonne typée avec le séparateur que vous souhaitez mais là on entre dans du plus compliqué car il faudrait à priori du code php associé à un fichier xsl.
C'est pour cela que je vous suggérai de voir si un export VMap associé au module cadastre déjà mis à disposition ne pourrait pas convenir car le travail est peut-être fait.
En espérant que ces éléments pourront vous aider.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324044#p324044
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
----------------------------------------
Ce que vous devriez faire c'est :
1. Regarder quel est le sep. décimal utilisé par excel.
2. Utiliser le même symbole dans votre vue.
Comme l'a dit francis, il faut que tout vous utilisateurs
partagent le même symbole de sep. decimal.
Le meilleur selon moi, si c'est possible,
serait de laisser le type de la colonne
de votre vue en numeric, et pouvoir spécifier
dans votre export le symbole a utiliser.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324043#p324043
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 : neskuik01
----------------------------------------
Bonjour,
Est-il possible de changer le SRID d'une table qui est utilisé dans une vue ?
J'ai tenté de faire :
ALTER TABLE nom_table
ALTER COLUMN geom TYPE geometry(LineString,3948)
USING ST_SetSRID(geom,3948);
=> j'ai un message d'erreur "ne peut pas modifier le type d'une colonne utilisée dans une vue ou une règle"
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=324042#p324042
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 :
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