<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Ok, dopo 9 ore di sonno (non ancora
      completate), posso continuare.<br>
      Dopo aver creato la tabella di relazione n-n<br>
      <small><small><font color="#cc0000">CREATE TABLE rlt_progetti_aree<br>
            (<br>
              id_progetti integer NOT NULL,<br>
              id_aree integer NOT NULL,<br>
              CONSTRAINT pk_rlt_aree_progetti PRIMARY KEY (id_progetti,
            id_aree)<br>
            );</font></small></small><br>
      utilizza questo pezzetto di codice pl/pgsql per popolare la
      tabella<br>
      <font color="#cc0000"><small><small>DO $$<br>
            DECLARE<br>
                separator text;<br>
                cur_progetti CURSOR FOR SELECT {id progetto}, {aree
            progetto} FROM {schema}.{tabella progetti} ORDER BY {id
            progetto};<br>
                cur_aree CURSOR (narea_progetto text) IS SELECT {id
            area} FROM {schema}.{tabella aree} WHERE {nome area} =
            narea_progetto ORDER BY {id area};<br>
                aree_id integer;<br>
                aree_values text[];<br>
                aree_avalue text;<br>
            BEGIN<br>
                separator := '/';<br>
                FOR rec_progetti IN cur_progetti LOOP<br>
                    aree_id := rec_progetti.id;<br>
                    aree_values :=
            regexp_split_to_array(rec_progetti.aree, separator);<br>
                    FOREACH aree_avalue IN ARRAY aree_values LOOP<br>
                        FOR rec_aree IN cur_aree(trim(both ' ' from
            aree_avalue)) LOOP<br>
                            EXECUTE 'INSERT INTO
            {schema}.rlt_progetti_aree (id_progetti, id_aree) VALUES ('
            || aree_id ||', ' || rec_aree.{id area} || ')';<br>
                        END LOOP;<br>
                    END LOOP;<br>
                END LOOP;<br>
            END $$;</small></small></font><br>
      sostituisci alle parti tra {} i nomi dei campi, delle tabelle e
      dello schema delle tue tabelle di progetti e aree.<br>
      Questo codice ha delle limitazioni:<br>
      i nomi delle aree scritte nel campo della tabella progetti deve
      essere PERFETTAMENTE IDENTICO con il nome riportato nella tabella
      delle aree (carattere per carattere, anche le
      maiuscole/minuscole), altrimenti la relazione tra aree e progetti
      verrà saltata<br>
      Esegui il codice in una finestrella SQL di PgAdminIII e dovresti
      avere la tabella di relazione popolata.<br>
      Ciao.<br>
      <br>
      Il 17/11/2014 21:15, <a class="moz-txt-link-abbreviated"
        href="mailto:nora_tassetti@libero.it">nora_tassetti@libero.it</a>
      ha scritto:<br>
    </div>
    <blockquote
cite="mid:471172574.6049361416255356229.JavaMail.httpd@webmail-37.iol.local"
      type="cite">Ho uno shp con 74 aree  di base e un tabella con 2600
      progetti svolti  in aree che sono combinazioni delle 74 aree base.
      Sì entrambe già in PostGis.
      <div>grazie davvero per l'aiuto!</div>
      <br>
      <blockquote> ----Messaggio originale----<br>
        Da: <a class="moz-txt-link-abbreviated"
          href="mailto:marco.livolsi@gmail.com">marco.livolsi@gmail.com</a><br>
        Data: 17/11/2014 21.11<br>
        A: "GFOSS"<a class="moz-txt-link-rfc2396E"
          href="mailto:gfoss@lists.gfoss.it"><gfoss@lists.gfoss.it></a><br>
        Ogg: Re: [Gfoss] R: Re: R: Re: DB e creazione multipolygons<br>
        <br>
        <!--
    
  -->
        <div class="moz-cite-prefix">Perchè si possa risolvere questo
          compitino via SQL bisognerebbe creare una tabella di relazione
          n-n e popolarla opportunamente con le informazioni prese dal
          campo AREA.<br>
          2 domandine semplici semplici:<br>
          <ul>
            <li>quanti sono i nomi delle aree?</li>
            <li>le 2 tabelle stanno già su PostGIS?</li>
          </ul>
          Ciao.<br>
          <br>
          Il 17/11/2014 18:37, <a moz-do-not-send="true"
            class="moz-txt-link-abbreviated"
            href="mailto:nora_tassetti@libero.it">nora_tassetti@libero.it</a>
          ha scritto:<br>
        </div>
        <blockquote
cite="mid:569343784.5987361416245834463.JavaMail.httpd@webmail-37.iol.local"
          type="cite">Sì la tua analisi è giusta: Più progetti cadono
          nella stessa area e un 'area può interessare più progetti e la
          relazione è esplicita in formato testuale nel campo AREA della
          tabella dei progetti secondo la metrica  " area1 / area2 /
          area3".
          <div>Delle aree di base ho uno shp con campi ID e NOME_AREA.</div>
          <div>Non capisco come mi conviene procedere. Il tutto deve
            andare in un webGis.</div>
          <div><br>
          </div>
          <div>Grazie e scusate ma con il problema sotto glio occhi
            sembra sempre di dare una spiegazione esaustiva ;)<br>
            <br>
            <blockquote> ----Messaggio originale----<br>
              Da: <a moz-do-not-send="true"
                class="moz-txt-link-abbreviated"
                href="mailto:marco.livolsi@gmail.com">marco.livolsi@gmail.com</a><br>
              Data: 17/11/2014 16.11<br>
              A: "GFOSS"<a moz-do-not-send="true"
                class="moz-txt-link-rfc2396E"
                href="mailto:gfoss@lists.gfoss.it"><gfoss@lists.gfoss.it></a><br>
              Ogg: Re: [Gfoss] R: Re: DB e creazione multipolygons<br>
              <br>
              <!--
    
  -->
              <div class="moz-cite-prefix">Ciao... Interpreto:<br>
                Hai una tabella con dentro delle aree:<br>
                <small><small><font color="#cc0000">id,nome<br>
                      1,pippo<br>
                      2,pluto<br>
                      3,paperino<br>
                      4,paperone<br>
                      5,paperoga<br>
                      6,orazio<br>
                      7,clarabella<br>
                      8,nonna papera</font></small></small><br>
                Hai anche una tabella con dentro i progetti, vari campi
                tra cui uno testuale con nomi di area (coincidenti con
                la precedente) scritti secondo una certa metrica<br>
                <small><small><font color="#cc0000">campo1,..., aree<br>
                      [valore1],... , "pippo / paperino / clarabella"<br>
                      [valore2],... , "paperino / paperoga"<br>
                      [valore3],... , "pluto / paperone / paperoga"</font></small></small><br>
                la metrica di questo campo è ben definita<br>
                <font color="#cc0000"><small><small>[nomearea]+[spazio]+[/]+[nomearea]+[spazio]+...+[nomearea]</small></small></font><br>
                Secondo la tua descrizione le tabelle delle aree e dei
                progetti sono in relazione n-n, tuttavia tale relazione
                è esplicitata in formato testuale in un campo della
                tabella dei progetti.<br>
                La mia analisi è giusta?<br>
                <br>
                Il 17/11/2014 14:14, <a moz-do-not-send="true"
                  class="moz-txt-link-abbreviated"
                  href="mailto:nora_tassetti@libero.it">nora_tassetti@libero.it</a>
                ha scritto:<br>
              </div>
              <blockquote
cite="mid:14438963.1087751416230091930.JavaMail.httpd@webmail-02.iol.local"
                type="cite">
                <pre wrap="">Ok, certo....scusate avevo dato per scontato che sto lavorando con QGIS e 
PostGIS
Grazie

</pre>
                <blockquote type="cite">
                  <pre wrap="">----Messaggio originale----
Da: <a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:lucadeluge@gmail.com">lucadeluge@gmail.com</a>
Data: 17/11/2014 14.10
A: <a moz-do-not-send="true" class="moz-txt-link-rfc2396E" href="mailto:nora_tassetti@libero.it">"nora_tassetti@libero.it"</a><a moz-do-not-send="true" class="moz-txt-link-rfc2396E" href="mailto:nora_tassetti@libero.it"><nora_tassetti@libero.it></a>
Cc: "GFOSS"<a moz-do-not-send="true" class="moz-txt-link-rfc2396E" href="mailto:gfoss@lists.gfoss.it"><gfoss@lists.gfoss.it></a>
Ogg: Re: [Gfoss] DB e creazione multipolygons

2014-11-17 13:52 GMT+01:00 <a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:nora_tassetti@libero.it">nora_tassetti@libero.it</a> <a moz-do-not-send="true" class="moz-txt-link-rfc2396E" href="mailto:nora_tassetti@libero.it"><nora_tassetti@libero.it></a>:
</pre>
                  <blockquote type="cite">
                    <pre wrap="">ciao a tutti,
Devo costruire una geodatabase di progetti europei con le relative aree in
cui questi progetti sono stati svolti.
Ho la tabella dei circa 2600 progetti  a cui devo associare le aree che
però devo costruire partendo da poligoni di base già digitalizzati (A, B, C
etc) . I poligoni di base devono essere combinati secondo quando scritto in
un campo della tabella dei progetti ( es "A / B / E" oppure "D / A / G") .
Penso di dover creare i 2600 multipolygon e procedere con operazioni di
Join. Come?
Oppure, qualcuno mi sa suggerire una strada migliore?

</pre>
                  </blockquote>
                  <pre wrap="">con che software? sarebbe importante scrivere una mail che tutti
possano capire e non solo che la scrive.
Ricordo a tutti gli iscritti di rispettare la netiquette [0]

</pre>
                  <blockquote type="cite">
                    <pre wrap="">Spero di essere riuscita a spiegarmi.
Grazie in anticipo per l'aiuto!

N.

</pre>
                  </blockquote>
                  <pre wrap="">[0] <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://it.wikipedia.org/wiki/Netiquette">http://it.wikipedia.org/wiki/Netiquette</a>

-- 
ciao
Luca

<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://gis.cri.fmach.it/delucchi/">http://gis.cri.fmach.it/delucchi/</a>
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="http://www.lucadelu.org">www.lucadelu.org</a>

</pre>
                </blockquote>
                <pre wrap="">_______________________________________________
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:Gfoss@lists.gfoss.it">Gfoss@lists.gfoss.it</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss">http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss</a>
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+40 iscritti al 5.6.2014</pre>
              </blockquote>
              <br>
              <br>
            </blockquote>
            <br>
          </div>
        </blockquote>
        <br>
        <br>
      </blockquote>
      <br>
    </blockquote>
    <br>
  </body>
</html>