Strategy ONE
Uso de uma forma personalizada no formato KML
Baixe o plug-in de visualização do mapa ESRI fornecido para você e siga as etapas abaixo.
-
Crie ou obtenha um arquivo KML que defina as formas personalizadas para o seu mapa
Você pode usar um arquivo KML que já possui ou criar um novo. KML é um formato de arquivo usado para exibir dados geográficos em mapas bidimensionais e navegadores terrestres tridimensionais. Um trecho de código de um arquivo KML de amostra é mostrado abaixo:
Copiar<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<Placemark>
<name>attribute value</name>
<ExtendedData>
<Data name="attribute key">
<DisplayName>attribute display value</DisplayName>
<Value>attribute value</Value>
</Data>
</ExtendedData>
...
<Polygon>
<outerBoundaryIs>
<LinearRing>
<coordinates>set of custom shape coordinates</coordinates>
</LinearRing>
</outerBoundaryIs>
</Polygon>
</Placemark>
...
</Document>
</kml>Cada
<Placemark>
O elemento contém os dados de definição de forma para uma das formas personalizadas. Ele também contém as informações necessárias para combinar cada forma com seus dados correspondentes.-
Por padrão, o
<name>
elemento é usado para combinar os dados com as formas Seu valor deve corresponder ao MicroStrategy dados do elemento de atributo usados pelo mapa. Por exemplo, se suas formas personalizadas forem estados, o valor do<name>
o elemento pode ser "Maryland" ou "Califórnia". -
É possível substituir o comportamento de correspondência padrão adicionando um <
ExtendedData>
elemento como filho de<Placemark>
. Isso proporciona flexibilidade, permitindo que você combine suas formas personalizadas com dados identificados de diversas maneiras. Por exemplo, você pode fazer isso se quiser combinar as formas do seu arquivo KML com dados de estado identificados pelas abreviações do nome do estado ou IDs de objeto, além dos nomes dos estados. -
O
<coordinates>
elemento (um filho de<Polygon><outerBoundaryIs><LinearRing>
)contém a definição de cada forma personalizada. A definição é um conjunto de pontos descritos por longitude, latitude e altitude opcional que determinam o contorno da forma.
Siga este procedimento:
- Dê ao arquivo KML que define suas formas personalizadas um nome significativo, como
CustomCountyShapesFile.kml
e salve-o na pasta do plug-in de visualização do mapa ESRI. - Salve o arquivo KML diretamente em seu plug-in ou crie uma pasta kml no plug-in e salve seu arquivo de formas personalizadas na pasta kml.
-
-
Modifique o arquivo de configuração de formato geográfico para que a visualização do mapa ESRI possa usar suas formas personalizadas
Navegar para
mstrGeoShapesConfig.xml
, localizado abaixoxml/config
na pasta do plug-in e abra-o em um editor de texto. O arquivo deve incluir código como o exemplo mostrado abaixo.Copiar<layers>
<layer id="900" title="Custom County Map Layer" ml="CustomCountyShapesFile.kml">
<shapeKeys>
<shapeKey key="name" path="/ExtendedData/Data[@name='name']/value"/>
<shapeKey key="abbr" path="/ExtendedData/Data[@name='abbreviatedName']/value"/>
<shapeKey key="id" path="/ExtendedData/Data[@name='object_id']/value"/>
</shapeKeys>
</layer>
</layers>
<shapes>
<shape id="901"
custom="true"
plugin="ConnectorForMap"
desc="Custom Counties by Name"
descWeb="mstrweb.7777n"
descFlash="mstr.6666n"
descDesktop="5555n"
roleId="9"
type="Polygon"
default="false"
shapeCat="1004"
shapeKey="name"
layerId="900"
sf="name"
sfr="2"
/>
<shape id="902"
custom="true"
plugin="ConnectorForMap"
desc="Custom Counties by Abbreviation"
descWeb="mstrweb.7777a"
descFlash="mstr.6666a"
descDesktop="5555a"
roleId="9"
type="Polygon"
default="false"
shapeCat="1004"
shapeKey="abbr"
layerId="900"
sf="name"
sfr="2"
/>
<shape id="903"
custom="true"
plugin="ConnectorForMap"
desc="Custom Counties by ID"
descWeb="mstrweb.7777i"
descFlash="mstr.6666i"
descDesktop="5555i"
roleId="9"
type="Polygon"
default="false"
shapeCat="1004"
shapeKey="id"
layerId="900"
sf="name"
sfr="2"
/>
</shapes>Faça as alterações abaixo para personalizar o arquivo de configuração de formato geográfico para seu ambiente.
- Para a criança
<layer>
elemento sob o pai<layers>
elemento, faça o seguinte:
-
Para o
id
atributo, substitua "900" por um valor que seja exclusivo (não um já usado por MicroStrategy para uma camada de mapa). Este valor identifica exclusivamente esta camada do mapa que usa suas formas personalizadas. É referenciado pelolayerID
atributo no<shape>
elemento.Múltiplo
<shape>
os elementos podem usar a mesma camada de mapa (ou seja, o mesmo arquivo KML), mas usar chaves diferentes para corresponder às formas e aos dados, como nome, abreviação ou ID. As chaves usadas para correspondência são fornecidas peloshapeKey
atributo dos diferentes<shape>
elementos. A correspondência acontece da seguinte forma para cada forma personalizada: -
O valor de cada
shapeKey
atributo é usado para encontrar uma correspondência com o atributo chave em um<shapeKey>
elemento. -
A correspondência
<shapeKey>
elemento contém umpath
atributo, que aponta para um determinado<Data>
elemento no arquivo KML (identificado pelo valor doname
atributo no<Data>
elemento). -
A correspondência
<Data>
elemento tem um filho<Value>
elemento, e seu valor é usado para obter o MicroStrategy dados associados a esta forma personalizada. -
Para o
title
atributo, substitua "Camada de mapa de condado personalizada" por um valor que descreva essa camada de mapa que usa suas formas personalizadas. -
Para o
ml
atributo, substitua "CustomCountyShapesFile.kml
" pelo nome do seu arquivo KML, incluindo o caminho relativo, dentro da pasta do plug-in. Por exemplo, useml="CustomCountyShapesFile.kml"
para um arquivo salvo diretamente na pasta do plug-in ou useml="kml/CustomCountyShapesFile.kml"
para um arquivo salvo em uma pasta chamada kml na pasta do plug-in.
- Para a criança
<shapeKey>
elementos sob o pai<shapeKeys>
elemento, faça o seguinte:
-
Remova qualquer criança
<shapeKey>
elementos que você não precisa para seu ambiente. No plug-in fornecido, existem três desses elementos. Um identifica as formas pelo nome, outro pela abreviatura e o terceiro pelo ID. -
Se não desejar usar um ou mais desses elementos, exclua os elementos apropriados.
-
Se você quiser usar um ou mais desses elementos, mantenha os elementos apropriados.
-
Se você quiser identificar suas formas por um valor diferente, altere o valor do
key
atributo em um dos<shapeKey>
elementos. Por exemplo, se você quiser usar um valor chamado SMSA para identificar suas formas, seu código poderá ser o seguinte:<shapeKey key="SMSA" path="/ExtendedData/Data[@name='SMSA']/value"/>
-
Para cada criança
<shapeKey>
elemento que você precisa para seu ambiente:-
Colocou o
key
atributo ao valor que será usado para identificar o<shape>
elemento associado ao arquivo de forma personalizado. Este é o mesmo valor do valor doshapeKey
atributo no correspondente<shape>
elemento. -
Se você quiser que o campo de dados usado para combinar os dados com as formas seja diferente do valor do<name> elemento para cada
<Placemark>
no arquivo KML, defina opath
atributo para a localização do campo de dados que você deseja usar, usando o formato/ExtendedData/Data[@name='>MyCustomShapes']/value
.Por exemplo, suponha que você queira usar abreviações de estado para combinar suas formas personalizadas com seus dados e o código em seu arquivo KML se pareça com o código abaixo:
Copiar<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<Placemark>
<name>custom shape name</name>
<ExtendedData>
<Data name="abbreviatedName">
<DisplayName>Pennsylvania</DisplayName>
<Value>PA</Value>
</Data>
</ExtendedData>
<Polygon>
<outerBoundaryIs>
<LinearRing>
<coordinates>set of custom shape coordinates</coordinates>
</LinearRing>
</outerBoundaryIs>
</Polygon>
</Placemark>
...
</Document>
</kml>O código em seu
mstrGeoShapesConfig.xml
arquivo ficaria assim:Copiar<layers>
<layer id="900" title="My Custom Map Layer" ml="MyCustomShapesFile.kml">
<shapeKeys>
<shapeKey key="abbr" path="/ExtendedData/Data[@name='abbreviatedName']/value"/>
</shapeKeys>
</layer>
</layers>
-
-
Para a criança<shape> elementos sob o pai
<shapes>
elemento, faça o seguinte:-
Remova qualquer criança
<shape>
elementos que você não precisa para seu ambiente. No plug-in fornecido, existem três desses elementos. Um identifica as formas pelo nome, outro pela abreviatura e o terceiro pelo ID. Esses valores são identificados peloshapeKey
atributo. -
Se você não quiser usar um ou mais deles, exclua os elementos apropriados.
-
Se você quiser usar um ou mais deles, mantenha os elementos apropriados.
-
Se você quiser identificar suas formas por um valor diferente, altere o valor do
shapeKey
atributo em um dos<shape>
elementos. Por exemplo, se você quiser usar um valor chamado SMSA para identificar suas formas, seu código poderá ser o seguinte:Copiar<shape
...
shapeKey="SMSA"
...
/> -
Para cada criança
<shape>
elemento que você precisa para seu ambiente:-
Para o
id
atributo, substitua o valor atual por um que seja exclusivo (não um já usado por MicroStrategy para uma forma). Este valor identifica exclusivamente esta definição de forma personalizada. -
Para o
custom
atributo, mantenha o valor atual de "true". -
Para o
plugin
atributo, se você estiver usando o plug-in padrão fornecido, mantenha o valor atual deConnectorForMap
ou configure-o com um nome diferente se você criou um plug-in com outro nome. -
Para o
desc
atributo, altere o valor atual para uma descrição significativa. Este é o valor exibido na lista suspensa Limites no Painel de Propriedades para a visualização do Mapa ESRI quando você escolhe exibir um mapa com áreas. Por exemplo, se estas forem regiões identificadas pela SMSA, o valor poderá serdesc="Regions by SMSA"
. Ou, se estes forem estados identificados por abreviaturas de estado, o valor poderá serdesc="Custom States by Abbr"
. Se desejar localizar a descrição, será necessário incluir valores para os seguintes atributos adicionais:-
descWeb
-
descFlash
-
descDesktop
-
-
Para o
roleId
atributo, altere o valor atual para a função geográfica de suas formas personalizadas usando um dos valores abaixo:roleId descrição 1
Cidade 2
Estado 3
País 4
Local 5
Latitude 6
Longitude 7
Outro 8
CEP 9
Condado -
Para o
type
atributo, mantenha o valor atual de "Polígono". -
Para o
default
atributo, se você não deseja que este seja o arquivo shape padrão, mantenha o valor atual de "false"; caso contrário, defina-o como "true". -
Use o
shapeCat
atributo se você precisar de uma identificação mais granular para uma forma. A categoria de forma é um número inteiro, como 1.002 para países, 1.003 para estados dos EUA e 1.004 para condados dos EUA. Por exemplo, suponha que você escolha "7" (Outro) como o valor do atributo roleId e queira usar SMSAs para definir suas formas. Você pode definir o atributo shapeCat com um valor que não é usado por MicroStrategy. -
Para o
shapeKey
atributo, defina-o como o valor que será usado para combinar as formas com os dados. Por exemplo, no código acima, os valores eram nome, id e desc. Este é o valor dokey
atributo no correspondente<shapeKey>
elemento no<layers>
hierarquia. -
Para o
layerid
atributo, defina-o com o valor doid
atributo que você usou para o<layer>
elemento no<layers>
hierarquia que faz referência ao arquivo KML associado a esta camada do mapa. Por exemplo,layerid="900"
.
-
-
-
- Salve suas alterações.
- Para a criança
-
Confirme se você pode usar as formas personalizadas.
-
Reiniciar MicroStrategy Web.
-
Use a visualização do mapa ESRI em um VI dossier e selecione Mapa de área como o
Map Type
no painel Propriedades. -
Expanda o menu suspenso Limites no painel Propriedades ESRI. Certifique-se de incluir a descrição de suas formas personalizadas como opção.
-
Escolha a opção para suas formas personalizadas. A visualização do mapa lê o arquivo KML especificado no atributo ml do
<layer>
nó emmstrGeoShapesConfig.xml
e renderiza as formas personalizadas apropriadas. -
Se você tiver problemas, verifique as dicas de solução de problemas abaixo:
-
Certifique-se de que a grade do relatório à qual você está aplicando a visualização tenha elementos de atributos que correspondam ao valor do
<name>
elemento para o<Placemark>
elementos no arquivo KML. -
Certifique-se de que os valores usados no KML e
mstrGeoShapesConfig.xml
arquivos em seu plug-in são o caso certo. Todos esses valores diferenciam maiúsculas de minúsculas. -
Certifique-se de que cada elemento tenha uma tag final.
-
Por padrão, MicroStrategy Cloud os clientes não podem usar mapas ESRI personalizados baseados em nuvem; eles usam servidores públicos ESRI. Se quiserem usar servidores públicos ESRI, deverão ativar a autenticação do cliente.
-
-