Processo in serie e Geopackage

Ciao a tutti. Sto provando ad eseguire un processo in serie salvando l’output in un geopackage. Nello specifico uso questa sintassi senza problemi
ogr:dbname='K:/Cartografia/test.gpkg' table="Particelle" (geom)
ogr:dbname='K:/Cartografia/test.gpkg' table="Confini" (geom)

In questo modo riesco a salvare i layer del processo in serie all’interno dello stesso geopackage. Il problema si pone se volessi aggiungere nuovi layer in un secondo momento, con lo stesso nome di quelli già presenti. Vorrei poter aggiornare le tabelle presenti e non sostituirle. So che dovrei utilizzare -append e -update solo che non riesco a far funzionare le due opzioni da qui.
Ho provato, ma non funzionano
ogr:dbname='K:/Cartografia/test.gpkg' table="Particelle" (geom) append update
ogr:dbname='K:/Cartografia/test.gpkg' table="Particelle" (geom) -append -update
ogr:dbname='K:/Cartografia/test.gpkg' table="Particelle" (geom) append="TRUE" update="TRUE"

Grazie

Non so più come dirlo… POTETE TOGLIERMI DALLA MAIL LIST ???Inviato dal mio Galaxy
-------- Messaggio originale --------Da: Ludovico via OSGeo Discourse noreply@discourse.osgeo.org Data: 07/07/24 12:31 (GMT+01:00) A: mademaria@alice.it Oggetto: [QGIS/QGIS-it-user] Processo in serie e Geopackage

      ludovico.frate
    
    July 7

Ciao a tutti. Sto provando ad eseguire un processo in serie salvando l’output in un geopackage. Nello specifico uso questa sintassi senza problemi
ogr:dbname=‘K:/Cartografia/test.gpkg’ table=“Particelle” (geom)
ogr:dbname=‘K:/Cartografia/test.gpkg’ table=“Confini” (geom)
In questo modo riesco a salvare i layer del processo in serie all’interno dello stesso geopackage. Il problema si pone se volessi aggiungere nuovi layer in un secondo momento, con lo stesso nome di quelli già presenti. Vorrei poter aggiornare le tabelle presenti e non sostituirle. So che dovrei utilizzare -append e -update solo che non riesco a far funzionare le due opzioni da qui.
Ho provato, ma non funzionano
ogr:dbname=‘K:/Cartografia/test.gpkg’ table=“Particelle” (geom) append update
ogr:dbname=‘K:/Cartografia/test.gpkg’ table=“Particelle” (geom) -append -update
ogr:dbname=‘K:/Cartografia/test.gpkg’ table=“Particelle” (geom) append=“TRUE” update=“TRUE”
Grazie

  @media (prefers-color-scheme: dark) {
    html {
      background: #151515 !important;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    span,
    td {
      color: inherit !important;
    }

    [data-stripped-secure-media] {
      border-color: #454545 !important;
    }

    [data-stripped-secure-upload] {
      border-color: #454545 !important;
    }

    [dm='text-color'] {
      color: #dddddd;
    }

    [dm='header'] {
      background: #151515 !important;
    }

    [dm='topic-body'] {
      background: #151515 !important;
      border-bottom: 1px solid #454545 !important;
    }

    [dm='triangle'] {
      border-top-color: #151515 !important;
    }

    [dm='body'] {
      background: #222222 !important;
      color: #dddddd !important;
    }

    [dm='body_primary'] {
      background: #062e3d !important;
      color: #dddddd !important;
    }

    [dm='bg'] {
      background: #323232 !important;
      border-color: #454545 !important;
    }
  }

Ciao Ludovico,

non riesco a capire dove utilizzi questa sintassi.
Potresti spiegare con più dettaglio cosa fai?

ciao

Ciao Salvatore, la sintassi viene utilizzata per salvarei layer in un unico geopackage. Vedi qui geoprocessing - Creating geopackage layers as output with QGIS batch processing autofill option - Geographic Information Systems Stack Exchange

Ho visto la documentazione di QGIS [1] che si limita a queelo che hai scritto tu.
Molto probabilmente non è possibile fare append

[1] 27.6. L’interfaccia per i processi in serie — QGIS Documentation documentazione

chiediamo a @agiudiceandrea, lui saprà indirizzarci sicuramente

saluti

Speriamo, altrimenti tocca fare direttamente da riga di comando gdal

Ciao Ludovico e Salvatore,
non ho ben capito quale sia esattamente il problema.
Io ho fatto la seguente prova:

  • ho creato due layer puntuali “point1” e “point2” contenenti alcuni punti
  • ho usato l’algoritmo di processing Buffer in modalità batch e l’espressione indicata nel manuale 'ogr:dbname=\'' || @project_folder || '/Buffers.gpkg\' table="' || @INPUT || '_' || @DISTANCE || '" (geom)'

Il file Buffers.gpkg è stato correttamente creato.

Ho poi modificato la posizione di uno dei punti in uno dei layer e ho eseguito lo stesso processo batch con la stessa espressione.

Mi pare che il file Buffers.gpkg sia stato correttamente aggiornato senza alcun errore.

Ciao, mi sono spiegato male. L’obiettivo è poter utilizzare lo stesso geopackage per aggiungere nuovi layer tramite batch (in un’operazione distinta). Per questo serve far funzionare l’append.
Esempio: creo un geopackage che contiene i layer particelle e fabbricati del comune X importati tramite batch poiché derivanti da un’operazione di riproiezione. In un futuro si aggiunge il comune Y e voglio importare, sempre tramite batch, i nuovi layer particelle e fabbricati (si chiamano allo stesso modo) del comune Y nel primo geopackage. Se non riesco a implementare l’append i layer all’interno del geopackage vengono sovrascritti di default.

Se ho capito bene, allora dovresti poter usare " Append Features to Layer" https://plugins.qgis.org/plugins/AppendFeaturesToLayer

Grazie, non lo conoscevo. In effetti potrebbe fare al caso mio. Grazie ancora.