Buongiorno
Ho un layer puntuale che negli attributi contiene nomi di file in formato .pdf o .mpg e vorrei attivare una azione in base al tipo di file.
Problema 1
Se avessi solo un file pdf poteri fare in questo modo:
Ho definito:
- una variabile di ambiente path_pdf con il percorso assoluto della cartella che contiene il file
- una variabile di ambiente exe_pdf con l'eseguibile del visualizzatore file pdf
Ma non trovo la giusta sintassi nella espressione di questi tre componenti: (esempio @exe_pdf@path_pdf [% "NOME_FILE" %] ) da inserire nelle azioni
Problema 2
Per distinguere i file pdf dai file mpg che sono contenuti nello stesso campo, posso usare codice python ?
Avete un esempio di codice da inserire nelle azioni ?
Se avessi solo un file pdf poteri fare in questo modo:
Ho definito:
- una variabile di ambiente path_pdf con il percorso assoluto della cartella che contiene il file
- una variabile di ambiente exe_pdf con l'eseguibile del visualizzatore file pdf
Ma non trovo la giusta sintassi nella espressione di questi tre componenti: (esempio @exe_pdf@path_pdf [% "NOME_FILE" %] ) da inserire nelle azioni
se hai impostato una tua variabile personale, allora direi che ti manca un pezzo di concatenazione:
@path_pdf || '/' || [% "NOME_FILE" %]
o simile perché la tua variabile `path_pdf` è il percorso della cartella
Problema 2
Per distinguere i file pdf dai file mpg che sono contenuti nello stesso campo, posso usare codice python ?
Avete un esempio di codice da inserire nelle azioni ?
certamente. Molto sbrigativo con `endswith`:
s = '/home/matteo/file.pdf'
if s.endswith('pdf'):
.....
else:
.....
altrimenti, un po' più sofisticato (ma anche blindato) con os:
Ciao Franco,
tramite l'azione "Open"/"Apri", QGIS su Windows può far aprire automaticamente ogni file dal programma predefinito in base all'associazione impostata nel sistema operativo tra estensione del file e programma da utilizzare (come avviene normalmente in "Esplora risorse"/"Esplora file").
Forse sarebbe il caso se esplicitassi quali valori contengono esattamente le tue variabili, qual è il nome del/dei campo/campi che intendi utilizzare e quali valori (almeno un esempio) contengono, quali impostazioni hai usato per la creazione dell'azione e quale espressione esattamente hai utilizzato.
A presto.
Andrea Giudiceandrea
Il 24/01/2022 15:28, Franco Cazzola ha scritto:
Buongiorno
Ho un layer puntuale che negli attributi contiene nomi di file in formato .pdf o .mpg e vorrei attivare una azione in base al tipo di file