Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
Ноябрь 21, 2017, 07:31:23 am

Автор Тема: Qlik and Google Map API  (Прочитано 2091 раз)

Оффлайн Staniiislav

  • Новичок
  • *
  • Сообщений: 11
  • Рейтинг: +3/-0
    • Просмотр профиля
Qlik and Google Map API
« : Ноябрь 21, 2015, 12:56:49 pm »
Доброго времени суток Уважаемые форумчане.
Пытаюсь восстановить(изучить) знания по QlikView.
Столкнулся с проблемой, Google Map API. По ссылке:
https://www.youtube.com/watch?v=pIks3URdQpQ
есть материка как сделать карты, все сделал, и все работает, а вот как быть с русскоязычными названиями городов, не как не могу понять что нужно изменить или дописать...
Кто-то сталкивался с такой проблемой? Может подсказать что делать?

Оффлайн admin

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 981
  • Страна: ru
  • Рейтинг: +97/-0
    • Просмотр профиля
Re: Qlik and Google Map API
« Ответ #1 : Ноябрь 21, 2015, 10:52:56 pm »
Привет, гугл возвращает карту по языку браузера. Клик представляется англоязычным, отсюда и результат.
Честно говоря, не напрягает.

Оффлайн Staniiislav

  • Новичок
  • *
  • Сообщений: 11
  • Рейтинг: +3/-0
    • Просмотр профиля
Re: Qlik and Google Map API
« Ответ #2 : Ноябрь 22, 2015, 12:33:11 am »
Спасибо за ответ. Так что, нужно адреса писать только на английском?
Русского языка нет? Допустим только Moscow?

Неофициальный форум пользователей QlikView & Qlik Sense

Re: Qlik and Google Map API
« Ответ #2 : Ноябрь 22, 2015, 12:33:11 am »

Оффлайн bibis

  • Наставник
  • **
  • Сообщений: 78
  • Рейтинг: +31/-0
    • Просмотр профиля
Re: Qlik and Google Map API
« Ответ #3 : Ноябрь 23, 2015, 09:10:18 am »
Добрый день при инициализации карты допишите:
&language=ru
в конец url

Оффлайн Staniiislav

  • Новичок
  • *
  • Сообщений: 11
  • Рейтинг: +3/-0
    • Просмотр профиля
Re: Qlik and Google Map API
« Ответ #4 : Ноябрь 23, 2015, 12:52:18 pm »
Спасибо за ответ!
Я это уже сделал, карта отображается на русском, а вот координаты не рисуются если город Москва написан на русском языке.. Может подправите меня, вот код загрузки:

CustomerTable:
LOAD Quantity as QuantityMap,
     Customer as CustomerMap,
     City as CityMap
FROM
[D:\MEGA\Qlikview\Map Google QlikView\Customer_info.xls]
(biff, embedded labels, table is Sheet1$);

//loads the data.
let noRows = NoOfRows('CustomerTable')-1;

for i=0 to $(noRows)

let a=peek('CustomerMap',$(i),'CustomerTable');
    let b=peek('CityMap',$(i),'CustomerTable');
    let c=peek('QuantityMap',$(i),'CustomerTable');
       

GeocodeResponse:
LOAD
'$(a)' as CustomerName,
'$(b)' as CustomerCity,
'$(c)' as CustomerQuantity,
([result/geometry/location/lat]) AS latitude,
([result/geometry/location/lng]) AS longitude
FROM [http://maps.googleapis.com/maps/api/geocode/xml?address=$(b)&sensor=false&language=ru&region=ru] (XmlSimple, Table is [GeocodeResponse]);

next 



// Google Maps in QlikView
// V0.85.2 - October 1st 2008  © Copyright QlikTech International AB 2008 / AES

// Google Maps Key
// get a key here http://code.google.com/apis/maps/signup.html
//gmap_key = 'xx'
gmap_key = '';
max_zoom_level = 14; //maximum value 17
def_zoom_Level =7;
def_map_size = 400;

// Variables required for calculating map
// No need to change these
var_pi180= '=pi()/180';
var_lat_offset= '0';
var_mc2= '=256*pow(2,$(var_zoom))';
var_mc1= '=256*pow(2,($(var_zoom)-1))';
var_mid_lat= '=median(latitude)';
var_mid_long= '=median(longitude)';
var_zoom= '=max(aggr(if(max( round(256*pow(2,(_zoom_level -1)))+( longitude  *((256*pow(2,_zoom_level ))/360)) )-min( round(256*pow(2,(_zoom_level -1)))+( longitude  *((256*pow(2,_zoom_level ))/360)) ) <map_size_x AND max((256*pow(2,(_zoom_level-1)))+((0.5*log((1+(sin((latitude)*pi()/180)))/(1-(sin((latitude)*pi()/180)))))*((-256*pow(2,_zoom_level))/(2*pi()))))-min((256*pow(2,(_zoom_level-1)))+((0.5*log((1+(sin((latitude)*pi()/180)))/(1-(sin((latitude)*pi()/180)))))*((-256*pow(2,_zoom_level))/(2*pi()))))<map_size_y,_zoom_level,1),_zoom_level))';
var_maptype= '=if(isnull(only(maptype)),fieldvalue( '&chr(39)&'maptype'&chr(39)&', 1 ),maptype)';
//map_size_x=     '400';
//map_size_y=     '400';

SET HidePrefix='_' ;
// Field required for calcualting best zoom level
_zoom_level:
Load RecNo( ) as _zoom_level autogenerate(max_zoom_level);

maptype:
LOAD * INLINE [
    maptype
    roadmap
mobile
satellite
terrain
hybrid
];


а вот код динамического рисунка, то что на карте:

='http://maps.googleapis.com/maps/api/staticmap?center='
&var_mid_lat
&','
&var_mid_long&'
&zoom=$(var_zoom)'&'
&maptype='&var_maptype&'
&size='&def_map_size&'x'&def_map_size&'
&sensor=false'&'
&language=ru'&'
&region=ru'

Спасибо за помощь


Оффлайн bibis

  • Наставник
  • **
  • Сообщений: 78
  • Рейтинг: +31/-0
    • Просмотр профиля
Re: Qlik and Google Map API
« Ответ #5 : Ноябрь 23, 2015, 02:34:10 pm »
Добрый день. К сожалению не сразу понял, каким образом вы подгружаете карту (ютуб заблокирован).

У нас сделано через экстеншн, как во вложении, используется 3я версия api  и проблем с русскими названиями нет.
 

Оффлайн Staniiislav

  • Новичок
  • *
  • Сообщений: 11
  • Рейтинг: +3/-0
    • Просмотр профиля
Re: Qlik and Google Map API
« Ответ #6 : Ноябрь 23, 2015, 09:32:27 pm »
Добрый вечер.
Спасибо bibis, я качал данный экстеншн, но не как не мог понять как координаты автоматом получить если название городов написано на русском языке...
Сюда из примера координаты должны быть подготовлены изначально (в доп документе).
Сейчас макрос нарисую в экселе, для автоматического получения координат по адресам.
Отпишусь как сделаю.
Спасибо

Неофициальный форум пользователей QlikView & Qlik Sense

Re: Qlik and Google Map API
« Ответ #6 : Ноябрь 23, 2015, 09:32:27 pm »

Оффлайн Staniiislav

  • Новичок
  • *
  • Сообщений: 11
  • Рейтинг: +3/-0
    • Просмотр профиля
Re: Qlik and Google Map API
« Ответ #7 : Ноябрь 25, 2015, 02:15:10 am »
Доброго времени суток Уважаемые форумчане.
Итак, обещал отписаться о проделанной работе  ;D
Направление выбрано и работает как хотелось (по только в примерах)...
1) Customer_info.xls : данные с координатами для QlikView
2) GoogleMaps - Cluster.qar : экстеншн
3) GoogleMapsAPI.qvw : сам фаил с примером Google Maps API QlikView
4) GoogleMapsAPI.xls (http://excelvba.ru/programmes/GoogleMapsCoordinates)  : эксель фаил для получения координат.

В данном примере две Google Maps, одна  GoogleMaps - Cluster.qar экстеншн, другая (даже не знаю как назвать правильно) скриптом.
 
Отдельное спасибо bibis, за примеры, с ними процесс изучения данной темы пошел гораздо быстрее!