Ana içeriğe geç Tamamlayıcı içeriğe geç

Qlik GeoOperations ile kod oluşturma

Qlik GeoOperations bağlayıcıları sizin için GeoOperations kodları oluşturur ve bunları biçimlendirir. Bu kodları Veri yükleme düzenleyicisi içinde değiştirebilirsiniz. Ayrıca Qlik GeoOperations bağlayıcıları kullanmak yerine GeoOperations fonksiyonları ile manuel olarak kod oluşturabilirsiniz.

Qlik GeoOperations nasıl çalışır?

Öncelikle bir Qlik GeoOperations bağlayıcısını veri kaynağı olarak ekleyin. Uygulamanızın Veri yükleme düzenleyicisi bölümünde, bağlayıcıdan yüklenecek verileri seçtiğinizde gerçekleştirilecek işlemleri ve uygulanacak parametreleri belirleyebilirsiniz. Daha sonra Qlik GeoOperations bağlayıcısı ilgili GeoOperations kodunu komut dosyanıza ekler. Ayrıca bu kodu manuel olarak da ekleyebilirsiniz.

Her işlem kodu, veri kullanımını ve işlemi seçen bir LOAD deyiminden oluşur. Bunlar, komut dosyasındaki GeoOperations uzantısına gönderilir. Sunucu tarafı uzantısı daha sonra verileri döndürür. Qlik GeoOperations, kod dilinde kullanılabilen GeoOperations adlı bir Advanced Analytics Integration nesnesi oluşturur. Bu, ScriptEval ile kodu ve tabloyu uzantıya gönderme fonksiyonu sunar.

Örneğin, Seyahat alanları işlemini önceden yüklenen MyPoints tablosuna uygulamak ve seyahat alanının boyutu/maliyeti için parametreleri belirtmek üzere kullanılacak komut dosyası aşağıdadır:

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

Komut dosyası, ScriptEval'da ilk parametre olarak, tablo ikinci parametre olarak gönderilir.

GeoOperations; veri kümeleri üzerinde işlem yapan fonksiyonlardır. Veri kümeleri ya Qlik Sense içindeki yüklü verilerden ya da coğrafi dosyalar veya konum hizmeti gibi dış kaynaklardan gelir. Komut dosyasından gönderilen veriler, INTABLE adlı bir veri kümesi olarak mevcuttur. Bu verilerle ilgili ek parametreler belirtmek istiyorsanız, bunu işlev çağrısından sonra bir DATASOURCE olarak bildirmeniz gerekir. Örneğin:

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

Diğer veri kaynakları her zaman tanımlanmalı ve URL'ler gibi parametreler belirlenmelidir. Her işlemde, kullanılacak veri kaynaklarını belirtebilirsiniz. Varsayılan olarak işlemler, İşlem (yalnızca İngilizce) bölümündeki her işlem için açıklandığı şekilde mevcut veri kümelerini alır.

GeoOperations alanlarını seçme ve yeniden adlandırma

GeoOperations işlevleri alanları döndürür. Varsayılan olarak, tüm alanlar döndürülür ve dahil edilir. Hem ilgilendiğiniz belirli alanları seçmek hem de isteğe bağlı olarak yeniden adlandırmak için GeoOperations işlevlerinin önüne bir SELECT deyimi koyabilirsiniz. Örneğin, bu komut dosyası konum hizmetinden yalnızca iki posta kodu alanını yüklemek için SELECT kullanır:

Load * Extension GeoOperations.ScriptEval('

SELECT Name as PostalCode, LocationArea FROM

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

 

GeoOperations komut dosyasında seçilmemişse veriler Qlik Sense içine yüklenmeyeceğinden, GeoOperations komut dosyasında bir SELECT ifadesi kullanmak Qlik LOAD ifadesinde alanları belirtmekten daha verimli olabilir.

SELECT, bazı alanları sonuçlarda döndürmemeyi seçerek onların hesaplamaktan hariç tutmak için kullanılabilir. Örneğin, Intersects tarafından döndürülen göreli örtüşen alanlar hariç tutulabilir.

Bilgi notu

Yükleme komut dosyanızda aynı işlemi birden çok kez kullanıyorsanız, alanları yeniden adlandırmak için bir SELECT  ifadesi kullanın.

Komut dosyası söz dizimi

GeoOperations öğesine gönderilen komut dosyası şu söz dizimine sahiptir:

1. İşlem

En basit biçimde komut dosyası bir işlem gerçekleştirir.

Söz Dizimi:  

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

Örnek:  

Cluster(distance="100000")

 

Daha fazla bilgi için İşlemler listesine ve parametrelerine bakın.

2. Veri kümesi

İkinci adım, uygulanacak olan seçtiğiniz işlemler için bir veri kümesi yüklemektir.

Söz Dizimi:  

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

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

Örnek:  

Within()

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

 

Daha fazla bilgi için Veri Kümeleri listesine ve parametrelerine bakın.

3. Bir araya getirmek

Tamamlanan komut dosyası Veri yükleme düzenleyicisi içinde şöyle görünür:

[MyPointsInStates]:

Load * Extension GeoOperations.ScriptEval(’

Within()

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

’, MyTable);

 

Bu örnekte MyTable; noktalar, çizgiler, adlandırılmış alanlar veya başka coğrafi veriler içeren yüklenmiş başka bir tablo olabilir.

4. Filtre alanları

Aşağıdaki eklemeler, işlemin sonuçlarının daha fazla filtrelenmesine izin verir.

[MyPointsInStates]:

Load * Extension GeoOperations.ScriptEval(’

SELECT Name, states.Name as State FROM

Within()

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

’, MyTable{Name, Point});

Parametre adları ve alan adları büyük/küçük harfe duyarlıdır ancak işlemler, parametre seçenekleri (meters, minutes, araba vb.) veya SELECT ve FROM gibi anahtar sözcükler değildir.

AddressPointLookup ve PointToAddressLookup kodlarında sorun giderme

Bu sayfa size yardımcı oldu mu?

Bu sayfa veya içeriği ile ilgili bir sorun; bir yazım hatası, eksik bir adım veya teknik bir hata bulursanız, bize bildirin, düzeltelim!