Devo però avvisare che questo script funziona per mantenere l'ordine ed i nome dei campi come visualizzati in tabella attributi, mentre per quanto riguarda i valori li esporta come salvati e non come visualizzati (le due cose possono essere diverse ad esempio nel caso di mappe valori). Purtroppo sono solo un dilettante con python, chi lo sa usare bene può fare sicuramente di meglio.

Comunque partendo dal suggerimento di Rossella mi è venuto in mente che forse è possibile usare il riorganizzatore campi all'interno del modellizzatore grafico per impostare trasformazioni fisse, utile se bisogna esportare varie volte la tabella di uno stesso layer.

Il 29/04/2019 21:50, Marco Spaziani ha scritto:
Grazie anche da parte mia.

Il giorno lun 29 apr 2019 alle ore 20:45 Alessandro Perego <alspe...@gmail.com <mailto:alspe...@gmail.com>> ha scritto:

    Grazie per aver risposto,
    purtroppo ho un layer con circa 70 campi di cui 30 da esportare
    (ma è probabile che debba aggiungerne altri) e dover fare la
    riorganizzazione campi (cambiando l'ordine ed i nomi) ogni volta
    che devo esportare la tabella diventa un lavoraccio.
    Per ora mi sono fatto uno script da copiare nella console python
    che sembra fare il lavoro.
    Se a qualcuno può servire lo script è questo:

    #
    #   Questo script consente di esportare la tabella attributi
    personalizzata del layer attivo
    #   in un file formato testo con valori delimitati da tabulazione
    #
    from qgis.core import *
    from qgis.utils import iface
    from datetime import datetime
    layer = iface.activeLayer()
    timeNow = datetime.now().strftime('%Y%m%d-%H%M%S')
    output = QgsProject.instance().readPath("./") + '/' + layer.name
    <http://layer.name>() + '_table_' + timeNow + '.txt'
    new = open(output,'w')
    fieldList = []
    fieldIdList = []
    ATfields = layer.fields()
    ATconfig = layer.attributeTableConfig()
    ATcolumns = ATconfig.columns()
    if len( ATcolumns ) > 0:
        #
        # riga di intestazione
        for ATcolumn in ATcolumns:
            if ATcolumn.hidden == 0:
                fieldName = ATcolumn.name
                fieldID = ATfields.indexFromName(ATcolumn.name)
                fieldIdList.append( fieldID )
                displayName = layer.attributeDisplayName( fieldID )
                fieldList.append( displayName )
        headRow = '\t'.join( map( str, fieldList ) )
        write = new.write( headRow )
        #
        # righe degli attributi
        count = 0
        for feature in layer.getFeatures():
            attribList = []
            for Id in fieldIdList:
                attribList.append( feature[Id] )
            featRow = '\t'.join( map( str, attribList ) )
            write = new.write( '\n' + featRow )
            count = count + 1
        #
        new.close()
        print( 'Operazione completata' )
        print( 'File creato:', output )
        print( 'numero di record:', count )
        print( 'numero di colonne:', len( fieldIdList ) )


    Il 29/04/2019 20:07, Rossella Di Bari ha scritto:
    Ciao Alessandro,
    non conosco un modo diretto per esportare in foglio di calcolo la
    tabella attributi come visualizzata, mi spiace...
    Conosco invece il Riorganizzatore Campi, che peschi tra gli
    strumenti di geoprocessing, e che ti crea un nuovo vettore,
    riorganizzando le colonne e ridigitando gli alias che avevi già
    dato. Le colonne nascoste precedentemente andrebbero eliminate.
    Alla fine della riorganizzazione dei campi viene rigenerato un
    nuovo vettore, anche temporaneo, che salvi come foglio di calcolo.
    Spero di esserti stata utile (o forse no perchè mi sa che sei più
    navigato di me con Qgis ;) )

    Saluti a tutti

    
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
        Mail priva di virus. www.avast.com
    
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>



    Il giorno gio 25 apr 2019 alle ore 20:59 alper78
    <alspe...@gmail.com <mailto:alspe...@gmail.com>> ha scritto:

        Ciao,
        sapete dirmi se c'è modo di esportare la tabella attributi di
        un layer
        vettoriale mantenendo le caratteristiche con cui viene
        visualizzata (cioè
        con i nomi alias, con l'ordine impostato in "Organizza
        Colonne" ed
        escludendo le colonne nascoste)?
        Se copio le righe selezionate per poi incollarle in un file
        di testo o in un
        foglio di calcolo mi perde gli alias e l'ordine
        personalizzato delle
        colonne.

        Grazie




        -----
        Alessandro Perego
        http://www.alspergis.altervista.org
        --
        Sent from:
        http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html
        _______________________________________________
        QGIS-it-user mailing list
        QGIS-it-user@lists.osgeo.org
        <mailto:QGIS-it-user@lists.osgeo.org>
        https://lists.osgeo.org/mailman/listinfo/qgis-it-user



-- <https://zxing.org/w/decode?u=https%3A%2F%2Fdocs.google.com%2Fuc%3Fexport%3Ddownload%26id%3D0B1-C0i5xe-F6elU0eVRRbjBRSTg%26revid%3D0B1-C0i5xe-F6NUdnWDJTcTV6RVlvdkhML2hLaEJYYTg4OG1FPQ>

    _______________________________________________
    QGIS-it-user mailing list
    QGIS-it-user@lists.osgeo.org  <mailto:QGIS-it-user@lists.osgeo.org>
    https://lists.osgeo.org/mailman/listinfo/qgis-it-user
-- Alessandro Perego www.alspergis.altervista.org
    <http://www.alspergis.altervista.org/>
    _______________________________________________
    QGIS-it-user mailing list
    QGIS-it-user@lists.osgeo.org <mailto:QGIS-it-user@lists.osgeo.org>
    https://lists.osgeo.org/mailman/listinfo/qgis-it-user

--
Alessandro Perego www.alspergis.altervista.org <http://www.alspergis.altervista.org/>
_______________________________________________
QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Rispondere a