Layer Postgis: Multiplygon o Poligon a seconda della versione di Qgis usata.

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Layer Postgis: Multiplygon o Poligon a seconda della versione di Qgis usata.

mando
Salve a tutti,
sto provando per la prima volta a disegnare con Qgis 2.0.1 su un livello postgis che risiede su di un server postgres centralizzato per tutto l'ufficio[1], ma al salvataggio ricevo il seguente errore:

[0]

Impossibile applicare le modifiche al vettore pyunitastratigrafiche


Errori: ERRORE: 1 geometria non aggiunta.

Errori della sorgente dati:

Errore PostGIS nell'aggiunta delle geometrie: ERROR: Geometry type (Polygon) does not match column type (MultiPolygon)



----

Quando carico il layer (Layer-aggiungi vettore postgis) con Qgis1.8 (provato prima) il layer risulta essere Multiolygon, lo si può editare e salvare tranquillamente.


Ora se provo a caricare il medesimo Layer (Layer-aggiungi vettore postgis) con la 2.0.1 Il layer viene presentato 2 volte contemporaneamente: sia come Multipolygon che come Polygon.


Il Multiplolygin non è selezionabile


Il Polygon si...però nel momento in cui lo si carica e ci si disegna al salvataggio si ritorna all'errore[0]


mmm...e ora come ne esco?


Suggerimenti su cosa è potuto accadere nel passaggio tra la 1.8 e la 2.0? E' evidente


Help me!

Ciao

Luca


[1] Postgres 8.4.2 on x_86_64-pc-linux-gnu


_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013
Reply | Threaded
Open this post in threaded view
|

Re: Layer Postgis: Multiplygon o Poligon a seconda della versione di Qgis usata.

Luigi Pirelli-2
hai due vie... la piu' semplice e' usare QgsGeometry.setMultipart() (se ricordobene il comando)  per dire di pensare la geometria come multi geometria. okkio al valore di ritorno... torna false se e' gia' multipart

oppure esporti con QgsGeometry.asMultipolygon() e poi ricrei la geometria... roba piu' soggetta a casistiche di errore.

tutto questo prima di salvare postgis

ciao ginetto




2013/11/26 Luca Mandolesi <[hidden email]>
Salve a tutti,
sto provando per la prima volta a disegnare con Qgis 2.0.1 su un livello postgis che risiede su di un server postgres centralizzato per tutto l'ufficio[1], ma al salvataggio ricevo il seguente errore:

[0]

Impossibile applicare le modifiche al vettore pyunitastratigrafiche


Errori: ERRORE: 1 geometria non aggiunta.

Errori della sorgente dati:

Errore PostGIS nell'aggiunta delle geometrie: ERROR: Geometry type (Polygon) does not match column type (MultiPolygon)



----

Quando carico il layer (Layer-aggiungi vettore postgis) con Qgis1.8 (provato prima) il layer risulta essere Multiolygon, lo si può editare e salvare tranquillamente.


Ora se provo a caricare il medesimo Layer (Layer-aggiungi vettore postgis) con la 2.0.1 Il layer viene presentato 2 volte contemporaneamente: sia come Multipolygon che come Polygon.


Il Multiplolygin non è selezionabile


Il Polygon si...però nel momento in cui lo si carica e ci si disegna al salvataggio si ritorna all'errore[0]


mmm...e ora come ne esco?


Suggerimenti su cosa è potuto accadere nel passaggio tra la 1.8 e la 2.0? E' evidente


Help me!

Ciao

Luca


[1] Postgres 8.4.2 on x_86_64-pc-linux-gnu


_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013


_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013
Reply | Threaded
Open this post in threaded view
|

Re: Layer Postgis: Multiplygon o Poligon a seconda della versione di Qgis usata.

mando
Ciao Gino,
grazie per la risposta.

Il dilemma è che nella vista geometry_colums il layer è Multipolygon. Quando Qgis 2.0.1 lo va a caricare mi presenta sia un multipolygon non selezionabile a patto di assegnargli manualmente srid. Tuttavia una volta caricato presenta dati in tabella ma non vengono visualizzate le geometrie.

Di contro il medesimo layer appare anche come layer Polygon, caricabile ed editabile, ma che non accetta (e penso Giustamente!) un nuovo poligono disegnato.

E' possibile che in qualche modo abbia inserito, magari con copia e incolla, delle geometrie polygon dentro al layer Multipolygon?

Ipotizzo che avrei bisogno di una query sql per sistemare tali errori. Con le funzioni Qgs che mi hai suggerito dovrei lavorare da dentro python ma non è questo il mio caso.

O sbaglio?

Grazie mille
Luca


2013/11/26 Gino Pirelli <[hidden email]>
hai due vie... la piu' semplice e' usare QgsGeometry.setMultipart() (se ricordobene il comando)  per dire di pensare la geometria come multi geometria. okkio al valore di ritorno... torna false se e' gia' multipart

oppure esporti con QgsGeometry.asMultipolygon() e poi ricrei la geometria... roba piu' soggetta a casistiche di errore.

tutto questo prima di salvare postgis

ciao ginetto




2013/11/26 Luca Mandolesi <[hidden email]>
Salve a tutti,
sto provando per la prima volta a disegnare con Qgis 2.0.1 su un livello postgis che risiede su di un server postgres centralizzato per tutto l'ufficio[1], ma al salvataggio ricevo il seguente errore:

[0]

Impossibile applicare le modifiche al vettore pyunitastratigrafiche


Errori: ERRORE: 1 geometria non aggiunta.

Errori della sorgente dati:

Errore PostGIS nell'aggiunta delle geometrie: ERROR: Geometry type (Polygon) does not match column type (MultiPolygon)



----

Quando carico il layer (Layer-aggiungi vettore postgis) con Qgis1.8 (provato prima) il layer risulta essere Multiolygon, lo si può editare e salvare tranquillamente.


Ora se provo a caricare il medesimo Layer (Layer-aggiungi vettore postgis) con la 2.0.1 Il layer viene presentato 2 volte contemporaneamente: sia come Multipolygon che come Polygon.


Il Multiplolygin non è selezionabile


Il Polygon si...però nel momento in cui lo si carica e ci si disegna al salvataggio si ritorna all'errore[0]


mmm...e ora come ne esco?


Suggerimenti su cosa è potuto accadere nel passaggio tra la 1.8 e la 2.0? E' evidente


Help me!

Ciao

Luca


[1] Postgres 8.4.2 on x_86_64-pc-linux-gnu


_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013



_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013
Reply | Threaded
Open this post in threaded view
|

Re: Layer Postgis: Multiplygon o Poligon a seconda della versione di Qgis usata.

mando
Aggiungo una cosa:

Ho provato il validatore sulla feature incriminata che dovrebbe essere un Multipolygon:

di 53242 record 53235 risultano Multipolygon.

Ne deduco che ve ne sono 7 che non sono multipolygon e che forse creano il danno... mi chiedo come ci siano finite a questo punto mentre usavo Qgis 1.8.

Che ne pensate?


2013/11/26 Luca Mandolesi <[hidden email]>
Ciao Gino,
grazie per la risposta.

Il dilemma è che nella vista geometry_colums il layer è Multipolygon. Quando Qgis 2.0.1 lo va a caricare mi presenta sia un multipolygon non selezionabile a patto di assegnargli manualmente srid. Tuttavia una volta caricato presenta dati in tabella ma non vengono visualizzate le geometrie.

Di contro il medesimo layer appare anche come layer Polygon, caricabile ed editabile, ma che non accetta (e penso Giustamente!) un nuovo poligono disegnato.

E' possibile che in qualche modo abbia inserito, magari con copia e incolla, delle geometrie polygon dentro al layer Multipolygon?

Ipotizzo che avrei bisogno di una query sql per sistemare tali errori. Con le funzioni Qgs che mi hai suggerito dovrei lavorare da dentro python ma non è questo il mio caso.

O sbaglio?

Grazie mille
Luca


2013/11/26 Gino Pirelli <[hidden email]>
hai due vie... la piu' semplice e' usare QgsGeometry.setMultipart() (se ricordobene il comando)  per dire di pensare la geometria come multi geometria. okkio al valore di ritorno... torna false se e' gia' multipart

oppure esporti con QgsGeometry.asMultipolygon() e poi ricrei la geometria... roba piu' soggetta a casistiche di errore.

tutto questo prima di salvare postgis

ciao ginetto




2013/11/26 Luca Mandolesi <[hidden email]>
Salve a tutti,
sto provando per la prima volta a disegnare con Qgis 2.0.1 su un livello postgis che risiede su di un server postgres centralizzato per tutto l'ufficio[1], ma al salvataggio ricevo il seguente errore:

[0]

Impossibile applicare le modifiche al vettore pyunitastratigrafiche


Errori: ERRORE: 1 geometria non aggiunta.

Errori della sorgente dati:

Errore PostGIS nell'aggiunta delle geometrie: ERROR: Geometry type (Polygon) does not match column type (MultiPolygon)



----

Quando carico il layer (Layer-aggiungi vettore postgis) con Qgis1.8 (provato prima) il layer risulta essere Multiolygon, lo si può editare e salvare tranquillamente.


Ora se provo a caricare il medesimo Layer (Layer-aggiungi vettore postgis) con la 2.0.1 Il layer viene presentato 2 volte contemporaneamente: sia come Multipolygon che come Polygon.


Il Multiplolygin non è selezionabile


Il Polygon si...però nel momento in cui lo si carica e ci si disegna al salvataggio si ritorna all'errore[0]


mmm...e ora come ne esco?


Suggerimenti su cosa è potuto accadere nel passaggio tra la 1.8 e la 2.0? E' evidente


Help me!

Ciao

Luca


[1] Postgres 8.4.2 on x_86_64-pc-linux-gnu


_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013




_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013
Reply | Threaded
Open this post in threaded view
|

Re: Layer Postgis: Multiplygon o Poligon a seconda della versione di Qgis usata.

Marco Li Volsi
Ciao.
Quello che riporti mi sembra molto strano... la tabella incriminata ha una constraint sul campo geometrico che fissa il tipo geometrico?
Se puoi mandare comandi SQL al tuo DB prova con
SELECT DISTINCT GeometryType([campogeometrico]) FROM [schema].[tabella];
e dovresti conoscere la lista dei tipi geometrici in tabella.
Salutos.

Il 26/11/2013 18:57, Luca Mandolesi ha scritto:
Aggiungo una cosa:

Ho provato il validatore sulla feature incriminata che dovrebbe essere un Multipolygon:

di 53242 record 53235 risultano Multipolygon.

Ne deduco che ve ne sono 7 che non sono multipolygon e che forse creano il danno... mi chiedo come ci siano finite a questo punto mentre usavo Qgis 1.8.

Che ne pensate?


2013/11/26 Luca Mandolesi <[hidden email]>
Ciao Gino,
grazie per la risposta.

Il dilemma è che nella vista geometry_colums il layer è Multipolygon. Quando Qgis 2.0.1 lo va a caricare mi presenta sia un multipolygon non selezionabile a patto di assegnargli manualmente srid. Tuttavia una volta caricato presenta dati in tabella ma non vengono visualizzate le geometrie.

Di contro il medesimo layer appare anche come layer Polygon, caricabile ed editabile, ma che non accetta (e penso Giustamente!) un nuovo poligono disegnato.

E' possibile che in qualche modo abbia inserito, magari con copia e incolla, delle geometrie polygon dentro al layer Multipolygon?

Ipotizzo che avrei bisogno di una query sql per sistemare tali errori. Con le funzioni Qgs che mi hai suggerito dovrei lavorare da dentro python ma non è questo il mio caso.

O sbaglio?

Grazie mille
Luca


2013/11/26 Gino Pirelli <[hidden email]>
hai due vie... la piu' semplice e' usare QgsGeometry.setMultipart() (se ricordobene il comando)  per dire di pensare la geometria come multi geometria. okkio al valore di ritorno... torna false se e' gia' multipart

oppure esporti con QgsGeometry.asMultipolygon() e poi ricrei la geometria... roba piu' soggetta a casistiche di errore.

tutto questo prima di salvare postgis

ciao ginetto




2013/11/26 Luca Mandolesi <[hidden email]>
Salve a tutti,
sto provando per la prima volta a disegnare con Qgis 2.0.1 su un livello postgis che risiede su di un server postgres centralizzato per tutto l'ufficio[1], ma al salvataggio ricevo il seguente errore:

[0]

Impossibile applicare le modifiche al vettore pyunitastratigrafiche


Errori: ERRORE: 1 geometria non aggiunta.

Errori della sorgente dati:

Errore PostGIS nell'aggiunta delle geometrie: ERROR: Geometry type (Polygon) does not match column type (MultiPolygon)



----

Quando carico il layer (Layer-aggiungi vettore postgis) con Qgis1.8 (provato prima) il layer risulta essere Multiolygon, lo si può editare e salvare tranquillamente.


Ora se provo a caricare il medesimo Layer (Layer-aggiungi vettore postgis) con la 2.0.1 Il layer viene presentato 2 volte contemporaneamente: sia come Multipolygon che come Polygon.


Il Multiplolygin non è selezionabile


Il Polygon si...però nel momento in cui lo si carica e ci si disegna al salvataggio si ritorna all'errore[0]


mmm...e ora come ne esco?


Suggerimenti su cosa è potuto accadere nel passaggio tra la 1.8 e la 2.0? E' evidente


Help me!

Ciao

Luca


[1] Postgres 8.4.2 on x_86_64-pc-linux-gnu


_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013





_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013


_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013
Reply | Threaded
Open this post in threaded view
|

Re: Layer Postgis: Multiplygon o Poligon a seconda della versione di Qgis usata.

mando
Annammo Bene...mi restituisce tutto come Multipolygon...e quindi? Come fa QGis 2.0.1 a vederla come Polygon? Leggerissimo Panico...non ci posso lavorare...
Help!
Grazie mille
Luca


Da PgAdmin la query della Tabella è così:

-- Table: public.pyunitastratigrafiche

-- DROP TABLE public.pyunitastratigrafiche;

CREATE TABLE public.pyunitastratigrafiche
(
  gid integer NOT NULL DEFAULT nextval('pyunitastratigrafiche_gid_seq'::regclass),
  area_s integer,
  scavo_s character varying(80),
  us_s integer,
  the_geom geometry(MultiPolygon),
  stratigraph_index_us integer,
  tipo_us_s character varying,
  rilievo_orginale character varying,
  disegnatore character varying,
  data date,
  CONSTRAINT pyunitastratigrafiche_pkey PRIMARY KEY (gid)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE public.pyunitastratigrafiche OWNER TO postgres;

-- Index: public.sidx_pyunitastratigrafiche_the_geom

-- DROP INDEX public.sidx_pyunitastratigrafiche_the_geom;

CREATE INDEX sidx_pyunitastratigrafiche_the_geom
  ON public.pyunitastratigrafiche
  USING gist
  (the_geom);





2013/11/27 Marco Li Volsi <[hidden email]>
Ciao.
Quello che riporti mi sembra molto strano... la tabella incriminata ha una constraint sul campo geometrico che fissa il tipo geometrico?
Se puoi mandare comandi SQL al tuo DB prova con
SELECT DISTINCT GeometryType([campogeometrico]) FROM [schema].[tabella];
e dovresti conoscere la lista dei tipi geometrici in tabella.
Salutos.

Il 26/11/2013 18:57, Luca Mandolesi ha scritto:
Aggiungo una cosa:

Ho provato il validatore sulla feature incriminata che dovrebbe essere un Multipolygon:

di 53242 record 53235 risultano Multipolygon.

Ne deduco che ve ne sono 7 che non sono multipolygon e che forse creano il danno... mi chiedo come ci siano finite a questo punto mentre usavo Qgis 1.8.

Che ne pensate?


2013/11/26 Luca Mandolesi <[hidden email]>
Ciao Gino,
grazie per la risposta.

Il dilemma è che nella vista geometry_colums il layer è Multipolygon. Quando Qgis 2.0.1 lo va a caricare mi presenta sia un multipolygon non selezionabile a patto di assegnargli manualmente srid. Tuttavia una volta caricato presenta dati in tabella ma non vengono visualizzate le geometrie.

Di contro il medesimo layer appare anche come layer Polygon, caricabile ed editabile, ma che non accetta (e penso Giustamente!) un nuovo poligono disegnato.

E' possibile che in qualche modo abbia inserito, magari con copia e incolla, delle geometrie polygon dentro al layer Multipolygon?

Ipotizzo che avrei bisogno di una query sql per sistemare tali errori. Con le funzioni Qgs che mi hai suggerito dovrei lavorare da dentro python ma non è questo il mio caso.

O sbaglio?

Grazie mille
Luca


2013/11/26 Gino Pirelli <[hidden email]>
hai due vie... la piu' semplice e' usare QgsGeometry.setMultipart() (se ricordobene il comando)  per dire di pensare la geometria come multi geometria. okkio al valore di ritorno... torna false se e' gia' multipart

oppure esporti con QgsGeometry.asMultipolygon() e poi ricrei la geometria... roba piu' soggetta a casistiche di errore.

tutto questo prima di salvare postgis

ciao ginetto




2013/11/26 Luca Mandolesi <[hidden email]>
Salve a tutti,
sto provando per la prima volta a disegnare con Qgis 2.0.1 su un livello postgis che risiede su di un server postgres centralizzato per tutto l'ufficio[1], ma al salvataggio ricevo il seguente errore:

[0]

Impossibile applicare le modifiche al vettore pyunitastratigrafiche


Errori: ERRORE: 1 geometria non aggiunta.

Errori della sorgente dati:

Errore PostGIS nell'aggiunta delle geometrie: ERROR: Geometry type (Polygon) does not match column type (MultiPolygon)



----

Quando carico il layer (Layer-aggiungi vettore postgis) con Qgis1.8 (provato prima) il layer risulta essere Multiolygon, lo si può editare e salvare tranquillamente.


Ora se provo a caricare il medesimo Layer (Layer-aggiungi vettore postgis) con la 2.0.1 Il layer viene presentato 2 volte contemporaneamente: sia come Multipolygon che come Polygon.


Il Multiplolygin non è selezionabile


Il Polygon si...però nel momento in cui lo si carica e ci si disegna al salvataggio si ritorna all'errore[0]


mmm...e ora come ne esco?


Suggerimenti su cosa è potuto accadere nel passaggio tra la 1.8 e la 2.0? E' evidente


Help me!

Ciao

Luca


[1] Postgres 8.4.2 on x_86_64-pc-linux-gnu


_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013





_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013


_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013


_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013