Vai al contenuto principale Passa a contenuto complementare

Creazione di script con Qlik GeoOperations

I connettori Qlik GeoOperations creano e formattano gli script di GeoOperations per l'utente. È possibile modificare tali script in Editor caricamento dati. È anche possibile scrivere manualmente con le funzioni GeoOperations, invece di usare i connettori Qlik GeoOperations.

Funzionamento di Qlik GeoOperations

Innanzitutto, aggiungere un connettore Qlik GeoOperations come sorgente dati. In Editor caricamento dati nella propria app, quando si selezionano i dati da caricare dal connettore, è possibile selezionare le operazioni da eseguire e i parametri da applicare. Il connettore Qlik GeoOperations aggiunge quindi lo script GeoOperations corrispondente allo script di caricamento. È possibile aggiungere questo script anche manualmente.

Ogni script operativo è composto da un'istruzione LOAD, che seleziona l'uso dei dati, e dall'operazione. Questi vengono inviati all'estensione GeoOperations nello script di caricamento. L'estensione lato server restituisce i dati. Qlik GeoOperations rende disponibile un oggetto Advanced Analytics Integration definito GeoOperations nel linguaggio di script. Fornisce la funzione ScriptEval per inviare lo script e la tabella all'estensione.

Ad esempio, di seguito viene riportato lo script di caricamento per l'applicazione dell'operazione Aree di viaggio alla tabella MyPoints precedentemente caricata e per la specifica di parametri per le dimensioni/costo dell'area di viaggio:

Load * Extension GeoOperations.ScriptEval('TravelAreas(costValue="10", costUnit="Minutes")', MyPoints);

Lo script viene inviato come primo parametro a ScriptEval e la tabella come secondo.

Le funzioni GeoOperations operano sui set di dati. I set di dati provengono da dati caricati in Qlik Sense o da sorgenti esterne come file geografici o il servizio di localizzazione. I dati inviati dallo script sono disponibili come set di dati denominato INTABLE. Se si desidera specificare dei parametri aggiuntivi per quei dati, è necessario dichiararli dopo la chiamata di funzione come DATASOURCE. Ad esempio:

Load * Extension GeoOperations.ScriptEval('TravelAreas(costValue="10", costUnit="Minutes") DATASOURCE myPoints INTABLE pointField="Point"', MyPoints);

Dichiarare sempre altre sorgenti dati e specificare sempre i parametri come gli URL. In ogni operazione è possibile specificare le sorgenti dati da utilizzare. Per impostazione predefinita, le operazioni prelevano i set di dati disponibili così come descritto per ciascuna operazione in Operazione (solo in lingua inglese).

Selezionare e rinominare i campi di GeoOperations

Le funzioni di GeoOperations restituiscono dei campi. Per impostazione predefinita vengono restituiti tutti i campi. È possibile far precedere le funzioni GeoOperations da un'istruzione SELECT per selezionare e, in via opzionale, rinominare campi specifici a cui si è interessati. Ad esempio, questo script utilizza SELECT per caricare solo due dei campi con il codice postale dal servizio di posizione:

Load * Extension GeoOperations.ScriptEval('

SELECT Name as PostalCode, LocationArea FROM

Load() DATASOURCE PostalCodes LOCATIONSERVICE type="PostalCode", country="se"');

 

L'utilizzo di un'istruzione SELECT nello script GeoOperations può essere più efficiente rispetto alla specificazione dei campi nell'istruzione LOAD di Qlik, in quanto i dati non vengono caricati in Qlik Sense se non sono selezionati nello script GeoOperations.

È possibile utilizzare SELECT per evitare il calcolo di alcuni campi, scegliendo di non restituirli nei risultati. Ad esempio, è possibile includere i campi di sovrapposizione relativa restituiti da Intersects.

Nota informatica

Se si utilizza la stessa operazione più volte nello script di caricamento, utilizzare un'istruzione SELECT per rinominare i campi.

Sintassi dello script

Lo script inviato a GeoOperations presenta la seguente sintassi:

1. Operazione

La forma più semplice dello script esegue un'operazione.

Sintassi:  

Operation(paramName="paramValue", ...)

Esempio:  

Cluster(distance="100000")

 

Per maggiori informazioni, vedere l'elenco delle Operazioni e dei loro parametri.

2. Set di dati

Il secondo passaggio consiste nel caricare un set di dati da applicare per l'operazione o le operazioni scelte.

Sintassi:  

Operation(paramName="paramValue", ...)

DATASOURCE name TYPE paramName="paramvalue", ...

Esempio:  

Within()

DATASOURCE states LOCATIONSERVICE type="STATE", country="US"

 

Per maggiori informazioni, vedere l'elenco dei Set di dati e dei loro parametri.

3. Aggregazione dei due elementi

Ecco come appare lo script completo in Editor caricamento dati:

[MyPointsInStates]:

Load * Extension GeoOperations.ScriptEval(’

Within()

DATASOURCE states LOCATIONSERVICE type=”STATE”, country=”US”

’, MyTable);

 

In questo esempio, MyTable può essere qualsiasi altra tabella caricata contenente punti, linee, aree denominate o altri dati geografici.

4. Filtro dei campi

Le seguenti aggiunte consentono di filtrare ulteriormente i risultati dell'operazione.

[MyPointsInStates]:

Load * Extension GeoOperations.ScriptEval(’

SELECT Name, states.Name as State FROM

Within()

DATASOURCE states LOCATIONSERVICE type=”STATE”, country=”US”

’, MyTable{Name, Point});

I nomi dei parametri e dei campi fanno distinzione tra maiuscole e minuscole, a differenza di operazioni, opzioni dei parametri (come meters, minutes, , ecc.) o parole chiave come SELECT e FROM.

Risoluzione dei problemi allo script AddressPointLookup e PointToAddressLookup

Hai trovato utile questa pagina?

Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – ti pregiamo di farcelo sapere!