<div dir="ltr"><div><div><div><div><div><div><div><div><div>ciao,<br></div>adesso non so se sia il tuo caso, ma spesso questo problema è dato dal fatto che il campo chiave della vista geometrica risultante non è univoco.<br>
<br></div>prova a fare:<br></div>select gid, count(*) from tabella1 group by gid having count(*) >1;<br><br></div>dove gid per me è il campo chiave della tabella che contiene le geometrie.<br><br></div>qGis ha bisogno che questo campo sia univoco e come dice giustamente Andrea, <br>
un LEFT JOIN (in funzione dei dati) non mantiene (giustamente) l'univocità.<br></div><div>ad esempio, mapserver non ha questo "limite", e puo' mostrare un layer da una vista senza avere una chiave primaria univoca.<br>
</div><div>ma per qGis è ben diverso perche' per aprire la tabella degli attributi ha bisogno di riferirsi ai singoli record e questo è dato solamente dalla presenza di un campo i cui valori indentifichino univocamente i singoli record.<br>
</div><div><br></div>in questi casi io risolvo creando questo campo univoco per la vista risultante, semplicemente con il numero del record:<br><br>select row_number() OVER ()::integer AS gid, etc...<br><br></div>ovviamente se ti puoi permettere il lusso di non avere nella vista risultante il campo gid originario della tabella geometrica.<br>
<br></div>spero di essere stato utile (e chiaro).<br><br></div>saluti,<br>francesco<br><div><div><br><br><br><div><br><br><br><br><br><div><div><div><div><br></div></div></div></div></div></div></div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">Il giorno 04 febbraio 2014 00:43, Andrea Peri <span dir="ltr"><<a href="mailto:aperi2007@gmail.com" target="_blank">aperi2007@gmail.com</a>></span> ha scritto:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div><div>In effetti dice veramente poco.<br></div>A lume di naso, direi che probabilmente hai qualcosa di malfunzionante sul tuo qgis, ma dire cosa e come risolvere è difficile.<br>Prova a sentire sulla ML di qgis se sanno darti qualche maggiore informazione.<br>

E' veramente curioso questo fatto che con DB-Manager non dia problemi mentre con il provider di qgis li dia.<br><br></div><div>spiacente di non esserti di maggiore aiuto.<br><br></div>A.<br><br></div><div class="gmail_extra">

<br><br><div class="gmail_quote">Il giorno 03 febbraio 2014 22:39, Marco Li Volsi <span dir="ltr"><<a href="mailto:marco.livolsi@gmail.com" target="_blank">marco.livolsi@gmail.com</a>></span> ha scritto:<div><div class="h5">
<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div>Il log non è molto parlante<br>
      <small><small>dbname='miodb' host=192.168.1.4 port=5432
          user='postgres' password='xxxx' sslmode=disable key='addrpid'
          srid=4326 type=POINT table="public"."v_poi_airport" (geom)
          sql= è un layer non valido; non caricato</small></small><br>
      <br>
      Il 03/02/2014 20:30, Andrea Peri ha scritto:<br>
    </div><div><div>
    <blockquote type="cite">
      <div dir="ltr">puoi postare l'errore che ti da' ?<br>
      </div>
      <div class="gmail_extra"><br>
        <br>
        <div class="gmail_quote">Il giorno 03 febbraio 2014 19:54, Marco
          Li Volsi <span dir="ltr"><<a href="mailto:marco.livolsi@gmail.com" target="_blank">marco.livolsi@gmail.com</a>></span>
          ha scritto:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div text="#000000" bgcolor="#FFFFFF">
              <div>Ciao Andrea.<br>
                Provato come dici tu... ma continua a dare errore.<br>
                <br>
                Il 03/02/2014 00:32, Andrea Peri ha scritto:<br>
              </div>
              <div>
                <div>
                  <blockquote type="cite">
                    <div dir="ltr">
                      <div>
                        <div>
                          <div>Su db-manager non so che dirti.<br>
                            <br>
                            Pero' puoi fare una controprova.<br>
                            <br>
                          </div>
                          definisci sulla tabella principale un campo di
                          tipo "serial" il quale si auto-riempira' con
                          dei progressivi.<br>
                          <br>
                          alter table tabella1 add column id_2 serial;<br>
                          <br>
                          definisci su tale colonna un indice unique:<br>
                          <br>
                          create unique index idx-1 on tabella1(id_2);<br>
                          <br>
                          Poi ridefinisci la vista aggiungendovi tale
                          campo nuovo.<br>
                          <br>
                          E infine prova a riaggiungere la vista a qgis.<br>
                        </div>
                        A quel punto qgis trova il campo di tipo int4
                        che cercava con tantodi indice unique e se
                        accetta di aggiungerla alla canvas, almeno <br>
                        hai trovato dove sta' il problema.<br>
                        Altrimenti è da una altra parte.<br>
                        <br>
                      </div>
                      <div>A.<br>
                      </div>
                      <br>
                    </div>
                    <div class="gmail_extra"><br>
                      <br>
                      <div class="gmail_quote">Il giorno 03 febbraio
                        2014 00:10, Marco Li Volsi <span dir="ltr"><<a href="mailto:marco.livolsi@gmail.com" target="_blank">marco.livolsi@gmail.com</a>></span>
                        ha scritto:<br>
                        <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                          <div text="#000000" bgcolor="#FFFFFF">
                            <div>Il campo PRIMARY KEY (... quello bigint
                              per intenderci) è presente sulla vista,
                              purtroppo ho proprio bisogno di un
                              bigint... mi sono arrivati questi id
                              interi composti da 14 cifre. La tua
                              risposta è coerente... rimane il dubbio
                              del perchè funzioni con DB Manager ?:-)<br>
                              <br>
                              Il 03/02/2014 00:00, Andrea Peri ha
                              scritto:<br>
                            </div>
                            <div>
                              <div>
                                <blockquote type="cite">
                                  <div dir="ltr">
                                    <div>
                                      <div>
                                        <div>A quello che ricordo, la
                                          regola di qgis è un campo di
                                          tipo int4 e bigint non gli va
                                          bene.<br>
                                        </div>
                                        Inoltre il campo deve essere
                                        presente tra quelli esposti
                                        nella vista, probabilmente lo è,
                                        ma dalla tua risposta
                                        sembrerebbe che esso è presente
                                        nella tabella LEFT non è in
                                        output sulla vista.<br>
                                        :)<br>
                                        <br>
                                      </div>
                                      In ogni caso almeno fino a qgis
                                      1.8 sicuramente un campo bigint
                                      non gli sarebbe andato bene.<br>
                                      Non so se con qgis 2 è cambiato
                                      qualcosa, ma non credo..<br>
                                      <br>
                                    </div>
                                    <div>qgis vuole tra i campi esposti
                                      in output nella vista un campo di
                                      tipo int4 con valori univoci e un
                                      indice unique (una pk va
                                      benissimo)<br>
                                      <br>
                                    </div>
                                    A.<br>
                                    <br>
                                  </div>
                                  <div class="gmail_extra"><br>
                                    <br>
                                    <div class="gmail_quote">Il giorno
                                      02 febbraio 2014 23:47, Marco Li
                                      Volsi <span dir="ltr"><<a href="mailto:marco.livolsi@gmail.com" target="_blank">marco.livolsi@gmail.com</a>></span>
                                      ha scritto:<br>
                                      <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                                        <div text="#000000" bgcolor="#FFFFFF">
                                          <div>Ciao Ragà.<br>
                                            La tabella "LEFT" ha un
                                            campo id numerico di tipo
                                            bigint ed ha una constraint
                                            di PRIMARY KEY.<br>
                                            Per quanto riguarda le varie
                                            LEFT JOIN, non fanno altro
                                            che collegare chiavi
                                            primarie delle tabelle
                                            "RIGHT" con le chiavi
                                            esterne nella tabella
                                            "LEFT".<br>
                                            Ho fatto eseguire sulla
                                            vista la seguente query e
                                            non ha dato conteggi
                                            maggiori di 1.<br>
                                            <small><small><font color="#cc0000">SELECT
                                                  id, COUNT(id)<br>
                                                    FROM v_poi_airport<br>
                                                   GROUP BY id<br>
                                                  ORDER BY COUNT(id)
                                                  DESC;</font></small></small><br>
                                            <br>
                                            Il 02/02/2014 23:14, Luca
                                            Mandolesi ha scritto:<br>
                                          </div>
                                          <div>
                                            <div>
                                              <blockquote type="cite">
                                                <div dir="ltr">Mi ha
                                                  battuto sul tempo
                                                  Andrea... io nelle mie
                                                  view setto sempre la
                                                  query con Join per
                                                  evitare tale problema.
                                                  Se ad un punto
                                                  corrispondo più record
                                                  della tabella
                                                  alfanumerica, puoi
                                                  provare a dare dentro
                                                  al provider di postgis
                                                  come id singolo la
                                                  chiave primaria e
                                                  quindi unica della
                                                  tabella 2.</div>
                                                <div class="gmail_extra"><br>
                                                  <br>
                                                  <div class="gmail_quote">2014-02-02

                                                    Andrea Peri <span dir="ltr"><<a href="mailto:aperi2007@gmail.com" target="_blank">aperi2007@gmail.com</a>></span>:<br>
                                                    <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                                                      <div dir="ltr">
                                                        <div>
                                                          <div>ok.<br>
                                                          <br>
                                                          </div>
                                                          Un altro
                                                          suggerimento:<br>
                                                          <br>
                                                        </div>
                                                        <div>qgis per il
                                                          postgres vole
                                                          disporre di un
                                                          campo che sia
                                                          di tipo intero
                                                          e con una
                                                          primary-key.<br>
                                                          Oppure con un
                                                          indice di tipo
                                                          unique.<br>
                                                        </div>
                                                        <div>Verifica
                                                          che questa
                                                          condizione sia
                                                          verificata su
                                                          uno dei campi
                                                          che definisci
                                                          nella vista.<br>
                                                          Stai attento
                                                          che la
                                                          condizione
                                                          LEFTJOIN
                                                          potrebbe
                                                          falsare questa
                                                          consizione
                                                          provocando la
                                                          ripetizione di
                                                          records.<br>
                                                          <br>
                                                        </div>
                                                        <div><br>
                                                        </div>
                                                      </div>
                                                      <div class="gmail_extra"><br>
                                                        <br>
                                                        <div class="gmail_quote">Il

                                                          giorno 02
                                                          febbraio 2014
                                                          22:58, Marco
                                                          Li Volsi <span dir="ltr"><<a href="mailto:marco.livolsi@gmail.com" target="_blank">marco.livolsi@gmail.com</a>></span>
                                                          ha scritto:
                                                          <div>
                                                          <div><br>
                                                          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                                                          <div text="#000000" bgcolor="#FFFFFF">
                                                          <div>Grazie
                                                          Andrea... ho
                                                          provato ma non
                                                          funge :-(<br>
                                                          <br>
                                                          Il 02/02/2014
                                                          22:43, Andrea
                                                          Peri ha
                                                          scritto:<br>
                                                          </div>
                                                          <div>
                                                          <div>
                                                          <blockquote type="cite">
                                                          <div dir="ltr">
                                                          <div>Prova a
                                                          modificare la
                                                          view definendo
                                                          la geometria
                                                          in quesot
                                                          modo:<br>
                                                          <br>
                                                          ..,
                                                          tabella1.campogeometrico::geometry(Geometry,
                                                          3003) As geom<br>
                                                          <br>
                                                          </div>
                                                          Io ho scritto
                                                          3003
                                                          ipotizzando
                                                          che il dato
                                                          sia in
                                                          GaussBoaga, se
                                                          è utm usa
                                                          25832 o altro
                                                          codice epsg.<br>
                                                          <br>
                                                          <div><br>
                                                          </div>
                                                          </div>
                                                          <div class="gmail_extra"><br>
                                                          <br>
                                                          <div class="gmail_quote">Il


                                                          giorno 02
                                                          febbraio 2014
                                                          21:47, Marco
                                                          Li Volsi <span dir="ltr"><<a href="mailto:marco.livolsi@gmail.com" target="_blank">marco.livolsi@gmail.com</a>></span>
                                                          ha scritto:<br>
                                                          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                                                          <div text="#000000" bgcolor="#FFFFFF"> Buona sera a tutti Voi.<br>
                                                          Ho un
                                                          comportamento
                                                          molto strano
                                                          riguardo al
                                                          caricamento di
                                                          una vista
                                                          geografica su
                                                          PostGIS.<br>
                                                          Ho creato una
                                                          vista su
                                                          PostGIS del
                                                          tipo<br>
                                                          <font color="#cc0000"><small><small>CREATE



                                                          OR REPLACE
                                                          VIEW vista1<br>
                                                              SELECT
                                                          tabella1.campo1,
tabella2.campo2,<big><big> </big></big></small></small><small><small>tabella1.campo2<big><big>,</big><small>
                                                          ...</small>,</big>
tabella1.campogeometrico<br>
                                                              FROM
                                                          tabella1<br>
                                                              LEFT JOIN
                                                          tabella2 ON
                                                          ...<br>
                                                              WHERE
                                                          tabella1.campo2
                                                          = valore;</small></small></font><br>
                                                          La vista viene
                                                          correttamente
                                                          trovata nella
                                                          vista
                                                          geometry_columns.<br>
                                                          Ho provato a
                                                          caricare
                                                          questo layer
                                                          dal tasto
                                                          "Aggiungi
                                                          vettore
                                                          PostGIS" e mi
                                                          viene
                                                          restituito un
                                                          messaggio di
                                                          alert.
                                                          Verificando il
                                                          registro degli
                                                          eventi il
                                                          layer risulta
                                                          non valido. Se
                                                          provo a
                                                          caricare il
                                                          layer dal DB
                                                          Manager tutto
                                                          va come deve
                                                          andare.<br>
                                                          Il sistema in
                                                          questione è
                                                          QGIS
                                                          2.0.1-Dufour e
                                                          POSTGIS="2.0.1
                                                          r9979"
                                                          GEOS="3.3.3-CAPI-1.7.4"
                                                          PROJ="Rel.
                                                          4.8.0, 6 March
                                                          2012"
                                                          GDAL="GDAL
                                                          1.9.2,
                                                          released
                                                          2012/10/08"
                                                          LIBXML="2.7.8"
                                                          RASTER.<br>
                                                          Qualcuno
                                                          saprebbe dirmi
                                                          se sbaglio
                                                          qualcosa?<br>
                                                          </div>
                                                          <br>
_______________________________________________<br>
                                                          <a href="mailto:Gfoss@lists.gfoss.it" target="_blank">Gfoss@lists.gfoss.it</a><br>
                                                          <a href="http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss" target="_blank">http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss</a><br>
                                                          Questa e' una
                                                          lista di
                                                          discussione
                                                          pubblica
                                                          aperta a
                                                          tutti.<br>
                                                          I messaggi di
                                                          questa lista
                                                          non hanno
                                                          relazione
                                                          diretta con le
                                                          posizioni
                                                          dell'Associazione
                                                          GFOSS.it.<br>
                                                          666 iscritti
                                                          al 22.7.2013<br>
                                                          </blockquote>
                                                          </div>
                                                          <br>
                                                          <br clear="all">
                                                          <br>
                                                          -- <br>
-----------------<br>
                                                          Andrea Peri<br>
                                                          . . . . . . .
                                                          . . <br>
                                                          qwerty àèìòù<br>
-----------------<br>
                                                          </div>
                                                          </blockquote>
                                                          <br>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          <br>
_______________________________________________<br>
                                                          <a href="mailto:Gfoss@lists.gfoss.it" target="_blank">Gfoss@lists.gfoss.it</a><br>
                                                          <a href="http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss" target="_blank">http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss</a><br>
                                                          Questa e' una
                                                          lista di
                                                          discussione
                                                          pubblica
                                                          aperta a
                                                          tutti.<br>
                                                          I messaggi di
                                                          questa lista
                                                          non hanno
                                                          relazione
                                                          diretta con le
                                                          posizioni
                                                          dell'Associazione
                                                          GFOSS.it.<br>
                                                          666 iscritti
                                                          al 22.7.2013<br>
                                                          </blockquote>
                                                          </div>
                                                          </div>
                                                        </div>
                                                        <div>
                                                          <div><br>
                                                          <br clear="all">
                                                          <br>
                                                          -- <br>
-----------------<br>
                                                          Andrea Peri<br>
                                                          . . . . . . .
                                                          . . <br>
                                                          qwerty àèìòù<br>
-----------------<br>
                                                          </div>
                                                        </div>
                                                      </div>
                                                      <br>
_______________________________________________<br>
                                                      <a href="mailto:Gfoss@lists.gfoss.it" target="_blank">Gfoss@lists.gfoss.it</a><br>
                                                      <a href="http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss" target="_blank">http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss</a><br>
                                                      Questa e' una
                                                      lista di
                                                      discussione
                                                      pubblica aperta a
                                                      tutti.<br>
                                                      I messaggi di
                                                      questa lista non
                                                      hanno relazione
                                                      diretta con le
                                                      posizioni
                                                      dell'Associazione
                                                      GFOSS.it.<br>
                                                      666 iscritti al
                                                      22.7.2013<br>
                                                    </blockquote>
                                                  </div>
                                                  <br>
                                                </div>
                                              </blockquote>
                                              <br>
                                            </div>
                                          </div>
                                        </div>
                                        <br>
_______________________________________________<br>
                                        <a href="mailto:Gfoss@lists.gfoss.it" target="_blank">Gfoss@lists.gfoss.it</a><br>
                                        <a href="http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss" target="_blank">http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss</a><br>
                                        Questa e' una lista di
                                        discussione pubblica aperta a
                                        tutti.<br>
                                        I messaggi di questa lista non
                                        hanno relazione diretta con le
                                        posizioni dell'Associazione
                                        GFOSS.it.<br>
                                        666 iscritti al 22.7.2013<br>
                                      </blockquote>
                                    </div>
                                    <br>
                                    <br clear="all">
                                    <br>
                                    -- <br>
                                    -----------------<br>
                                    Andrea Peri<br>
                                    . . . . . . . . . <br>
                                    qwerty àèìòù<br>
                                    -----------------<br>
                                  </div>
                                </blockquote>
                                <br>
                              </div>
                            </div>
                          </div>
                          <br>
_______________________________________________<br>
                          <a href="mailto:Gfoss@lists.gfoss.it" target="_blank">Gfoss@lists.gfoss.it</a><br>
                          <a href="http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss" target="_blank">http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss</a><br>
                          Questa e' una lista di discussione pubblica
                          aperta a tutti.<br>
                          I messaggi di questa lista non hanno relazione
                          diretta con le posizioni dell'Associazione
                          GFOSS.it.<br>
                          666 iscritti al 22.7.2013<br>
                        </blockquote>
                      </div>
                      <br>
                      <br clear="all">
                      <br>
                      -- <br>
                      -----------------<br>
                      Andrea Peri<br>
                      . . . . . . . . . <br>
                      qwerty àèìòù<br>
                      -----------------<br>
                    </div>
                  </blockquote>
                  <br>
                </div>
              </div>
            </div>
            <br>
            _______________________________________________<br>
            <a href="mailto:Gfoss@lists.gfoss.it" target="_blank">Gfoss@lists.gfoss.it</a><br>
            <a href="http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss" target="_blank">http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss</a><br>
            Questa e' una lista di discussione pubblica aperta a tutti.<br>
            I messaggi di questa lista non hanno relazione diretta con
            le posizioni dell'Associazione GFOSS.it.<br>
            666 iscritti al 22.7.2013<br>
          </blockquote>
        </div>
        <br>
        <br clear="all">
        <br>
        -- <br>
        -----------------<br>
        Andrea Peri<br>
        . . . . . . . . . <br>
        qwerty àèìòù<br>
        -----------------<br>
      </div>
    </blockquote>
    <br>
  </div></div></div>

<br>_______________________________________________<br>
<a href="mailto:Gfoss@lists.gfoss.it" target="_blank">Gfoss@lists.gfoss.it</a><br>
<a href="http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss" target="_blank">http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss</a><br>
Questa e' una lista di discussione pubblica aperta a tutti.<br>
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.<br>
666 iscritti al 22.7.2013<br></blockquote></div></div></div><div><div class="h5"><br><br clear="all"><br>-- <br>-----------------<br>Andrea Peri<br>. . . . . . . . . <br>qwerty àèìòù<br>-----------------<br>
</div></div></div>
<br>_______________________________________________<br>
<a href="mailto:Gfoss@lists.gfoss.it">Gfoss@lists.gfoss.it</a><br>
<a href="http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss" target="_blank">http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss</a><br>
Questa e' una lista di discussione pubblica aperta a tutti.<br>
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.<br>
666 iscritti al 22.7.2013<br></blockquote></div><br></div>