Integrazione semplice e veloce tra OBIEE e Google Maps
Se si dispone di un piccolo report con un localizzatore di negozio semplice e non si desidera configurare Mappe in Oracle BI, è possibile utilizzare l'API di Google Maps per integrare semplicemente una mappa in Oracle BI Dashboard.
Per utilizzare l'API di Google Maps è necessaria una chiave. Per ottenere questo, registrati con Google API Console all'url https://code.google.com/apis/console/, quindi fai clic sul pulsante "Accesso Api" e sul pulsante "Crea nuova chiave server". Inserire "http://server_server:9704/analytics/saw.dll" come "Accetta richieste da questi indirizzi IP del server". Fare clic su crea e verrà generata la chiave.
Questa soluzione funziona per una o più posizioni. In primo luogo, creare con rispondere a una tabella semplice con i dati di una posizione fisica (indirizzo, città, stato, ecc):
Per ottenere la mappa possiamo creare una nuova "Vista Narrativa" (scusate, la mia installazione è in italiano :)):
Modificare la vista narrativa con il codice seguente:
Sezione Prefisso
(sostituisci YOUR_KEY con la tua chiave API di Google Maps)
<script src='http://maps.google.com/maps?file=api&v=2&sensor=false&key=YOUR_KEY' type='text/javascript'></script>
<script type='text/javascript'></script>
Dichiarazioni
var map - null;
var geocoder - null;
indicatore di var: null;
window.onload : addCodeToFunction(window.onload, function()
if (GBrowserIsCompatible())
Creare la mappa
map - nuovo GMap2(document.getElementById("map_canvas"));
Impostare il centro senza marcatori; 13 è il livello di zoom
map.setCenter(nuovo GLatLng(37.4419, -122.1419), 9);
Aggiungere la bussola e il controllo zoom
map.addControl(nuovo GLargeMapControl());
Aggiungere il controllo Tipo di mappa
map.addControl(nuovo GMapTypeControl());
Ottenere un nuovo geocodificatore (necessario per convertire gli indirizzi in coordinate
geocoder - nuovo GClientGeocoder();
Ottenere l'icona per il marcatore
icon0 - nuovo GIcon();
icon0.image - 'http://www.google.com/mapfiles/marker.png';
icon0.shadow - 'http://www.google.com/mapfiles/shadow50.png';
icon0.iconSize : nuovo GSize(20, 34);
icon0.shadowSize: nuovo GSize(37, 34);
icon0.iconAnchor - nuovo GPoint(9, 34);
icon0.infoWindowAnchor : nuovo GPoint(9, 2);
icon0.infoShadowAnchor - nuovo GPoint(18, 25);
Prendi gli abiti
GetMapAdress();
}
});
funzione showAddress(indirizzo;commento)
Indirizzi nascoste alle coordinate e impostare il marcatore sul grafico
if (geocoder)
{
geocoder.getLatLng
(
indirizzo
funzione(punto)
{
se (!punto)
{
alert(indirizzo : "non trovato");
}
altro
{
map.setCenter(punto; 9);
marcatore di var: createMarker(point,icon0,comment);
map.addOverlay(marcatore);
Apre l'ultimo marcatore
marker.openInfoWindowHtml(commento);
}
}
);
}
}
funzione createMarker(punto, icona, popuphtml)
Crea il marcatore
{
var popuphtml - "<div id='popup'>" : popuphtml : '</div>'
marcatore var: nuovo GMarker(punto, icona);
GEvent.addListener(marker, "click", function() : marker.openInfoWindowHtml(popuphtml);;
marcatore di ritorno;
}
funzione addCodeToFunction(func, codice)
if(func : non definito)
codice di ritorno;
else
funzione di ritorno()
func();
codice();
}
}
}
funzione GetMapAdress()
{
Descrizione Sezione
Da qui è costruito dinamicamente in OBIEE
showAddress('1', ''2');
Sostituire i valori 1 e 2 in questo script con l'indice della colonna contenente il testo che si desidera visualizzare nella casella visualizzata quando si fa clic su un punto interessante.
Sezione Postfix
}
window.onunload : GUnload();
<div id="map_canvas" style="width: 800px; height: 600px"></div>
Assicurarsi che la casella di controllo "Contiene markup HTML" sia selezionata:
Salvare la risposta e inserirla in una dashboard: è possibile visualizzare la mappa solo nella vista Dashboard:
Questo è tutto. In pochi minuti abbiamo ottenuto una semplice mappa inclusa nel nostro rapporto.
Ho testato questa soluzione con OBIEE 11.1.1.6.6 su Win x64 Platform.
Grazie a: http://www.artofbi.com/blog/obiee-and-google-maps-integration/