1. Home
  2. MapEdit AppBuilder
  3. Tooltips konfigurieren

Tooltips konfigurieren

Hier wird beschrieben wie sie Tooltips erstellen können, welche in der Karte den Anwendern angezeigt werden.

Beispiel Tooltip für Schacht

Die Anwender sehen die Tooltips nur dann wenn im Client diese aktiviert sind und die Karte eingeschaltet ist sowie in der definierten Zoomstufe vorhanden sind.

Vorraussetzungen

Um Tooltips nutzen zu können, muss eine Datenbankverbindung eingerichtet sein. Unterstützt werden Oracle, SQLITE oder PostgreSQL Datenbanken.

Datenbank Verbindung

Datenbankverbindung

Kartenverwaltung Karte

Eingerichtet werden die Tooltips in der Kartenverwaltung bezogen auf die jeweilige Karte. Über den Button TOOLTIPS KONFIGURIEREN, können diese erstellt oder entfernt werden.

Tooltip Konfiguration

Konfiguration

Dies ist der Dialog zur Konfiguration der Tooltips in einer Karte.

Dialog Tooltip Konfiguration

Funktionen

Folgende Funktionen / Buttons stehen zur Verfügung.

Add & Remove

Über den Button ADD kann einer neuer Tooltip angelegt werden. Über den Button
REMOVE kann ein ausgewählter Tooltip gelöscht werden.

Test SQL

Beim Ausführen der Funktion bzw. des Buttons TEST SQL wird das SQL getestet. Dazu wird sofern geöffnet der aktuelle Kartenausschnitt und Zoomstufe verwendet.

Meldung nach Ausführung von „Test SQL“

Es wird die Ausführungsdauer und der SQL angezeigt der ausgeführt wird. Damit die beste Performance erreicht wird, sollte man immer genau prüfen inwiefern das SQL optimal ist. Wenn die Abfrage z.B. eine Sekunde dauert ist das langsam und wird bei jedem Zoom/Pan der Karte die Anzeige verzögern. (sofern die Tooltips aktiviert sind)

Die Ausführungsdauer schwankt selbstverständlich je nach Größe des Kartenausschnitt bzw. der Zoomstufe. Je mehr Elemente sichtbar sind, desto langsamer wird die Abfrage.

Min & Max Zoom Level

Schränken Sie den Zoomlevel so gut es geht ein, damit Sie die beste Performance für die Anwender bekommen.

Es macht Sinn den „Min Zoomlevel“ so einzustellen wenn die Elemente für die ein Tooltip erstellt wurde und auch deutlich am Bildschirm zu erkennen sind. Je niedriger sie den „Min Zoomlevel“ einstellen desto mehr Abfragen auf die Datenbank werden im Hintergrund generiert.

Empfehlung ist den „Min Zoomlevel“ nicht höher als 18 – 19 einzustellen, sodass die Informationen beim Überfahren der Kartenelemente mit der Maus auch unterscheidbar sind.

Suchradius

Suchradius

Der Wert des Suchradius bestimmt die ungefähre Größenordnung am Bildschirm. Wenn man mit der Maus über ein Element fährt bei dem ein Tooltip definiert ist, dann wird der Tooltip erst angezeigt wenn die Maus sich innerhalb des Suchradius befindet.

Datenbankverbindung

Hier ist die Datenbankverbindung auszuwählen.

Auswahl Datenbankverbindung

SQL

Die angegebene SQL-Abfrage muss als erstes Feld die FID (oder anderes eindeutiges Feld) und als zweites das GEOM Feld zurück liefern. Danach können beliebige Felder folgen. Sollten sie Funktionen verwenden, vergeben sie bitte einen ALIAS Namen.

Beispiel: select f.fid, f.geom, f.NAME_NUMBER from ww_manhole f where {filter}

Der Parameter {filter} wird zur Laufzeit durch die Spatialabfrage ersetzt. Dieser ist zwingend notwendig und muss nach der where clause stehen.

Beispiel für erweitertes SQL:

select f.fid, f.geom, round(f.area) as area from DFK_GEBAEUDE f where sdo_relate(f.geom,mdsys.sdo_geometry(2003,{srid},NULL,
mdsys.sdo_elem_info_array(1,1003,3), mdsys.sdo_ordinate_array({west},{south},{east},north})),
'mask=ANYINTERACT querytype=WINDOW') = 'TRUE'


Die Parameter in den geschweiften Klammern werden zur Laufzeit ersetzt.

Tooltips bei Flächen

Wenn mehrere Flächen übereinanderliegen, dann kann der Tooltip teilweise nicht sauber die Infos der richtigen Fläche anzeigen. Dann muss man die Reihenfolge der Objekte im Select festlegen. Zum Beispiel kann nach der Flächengröße (Area) sortiert werden oder zum Beispiel nach einem Feld wo man eine Priorität festlegt. Wenn man nach der Flächengröße sortieren will, dann zeigt es so den Tooltip der kleinsten Fläche an.

Beispiel: select f.fid, f.geom from GRUENFLAECHEN f where {filter} order by area

Bei den Tooltips wird die Reihenfolge der Datensätze beachtet. D.h. wenn mehrere
Datensätze zu einem Objekt gefunden werden, wird nur der erste Datensatz angezeigt. Man kann dies durch setzten einer ORDER BY im SQL steuern.

Generell: Beachten sie dass performante und optimierte SQLs verwendet werden, sonst wird die Geschwindigkeit von MapEdit beeinträchtigt. Zum Test hierzu die Funktion Test SQL verwenden, da bekommen sie Daten zur Ausführungsdauer.

Schablone

Beispiel Schablone

Bei der Schablone geben Sie den Text an, der im Tooltip angezeigt werden soll an.
Es können Werte aus dem Eintrag bei SQL verwendet werden. Dazu diese in geschweiften Klammern Beispiel:{NAME_NUMER} und in Großbuchstaben angegeben. Zeilenumbrüche müssen nicht durch Steuerzeichen angegeben werden, sondern werden einfach durch Drücken der ENTER Taste eingegeben.

Beispiel Tooltip für Schacht
XAML (optional)

Man kann an jeder Stelle in dem XAML Code Feldnamen in { } verwenden. Bei der Tooltipkonfiguration gibt man im Feld „Schablone“ folgendes ein wenn man zum Beispiel ein Bild einbauen möchte:

<Grid Height="180" Width="250" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<StackPanel> 
    <Image Height="31" Source="https://www.mum.de/-/media/mum/images/logos/logo-mum-320x63.png" />
<TextBlock Text="Fid:{FID}"/>
</StackPanel>
</Grid>

Vor dem “<Grid>” dürfen keine Leerzeichen stehen und die Gross/Kleinschreibung muss genauso aussehen. Also „<Grid>“ am Anfang und am Ende steht „</Grid>“. Ansonsten erkennt MapEdit nicht das es sich um einen XAML Tooltip handelt.

Da wo in diesem Beispiel die URL zu dem MuM Bild steht, könnte auch ein Feldnamen verwendet werden, beispielsweise {BILDURL} um ein dynamisches Bild anzuzeigen. Hier noch ein erweitertes Beispiel:

<Grid Height="180" Width="250" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
 <StackPanel>
    <TextBlock Foreground="Blue" Width="250" Height="20" TextWrapping="Wrap">
          Wasserleitung: {DIAMETER_INSIDE}mm {FUNKTION} {MATERIAL}
    </TextBlock>
    <TextBlock Foreground="Red" Width="250" Height="20" TextWrapping="Wrap">
        <Bold>
          Für weitere Informationen bitte Formular öffnen.
       </Bold>
    </TextBlock>
    <Image Height="31" Source="https://www.mum.de/-/media/mum/images/logos/logo-mum-320x63.png" />
 </StackPanel>
 </Grid> 
Tooltip mit XAML

Zeilenvorschub in xaml kann mit diesen Zeichen erreicht werden: &#10 oder hexadezimal &#x0A Wagenrücklauf in xaml kann mit diesen Zeichen erreicht werden: &#13 oder hexadezimal &#xD

XAML Tooltip mit direkter Anzeige hinterlegter Fotos

Man kann beim Tooltip hinterlegte Fotos gleich direktanzeigen lassen.

Beispiel:

Tooltip mit hinterlegtem Foto

Und wenn kein Bild vorhanden ist, dann klappt sich der Tooltip ein:

Tooltip ohne hinterlegtes Foto

Und hier der erforderliche XAML Code:

<Grid Background="LemonChiffon" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">

        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="300"/>
        </Grid.ColumnDefinitions>

        <Grid.RowDefinitions>
            <RowDefinition Height="30" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>
        
        <Border Grid.Row="0" Grid.Column="0" Background="LightGray" />

        <TextBlock Grid.Row="0" Grid.Column="0" Margin="5" Text="Incident/réparation des infrastructures du SIDEN." FontWeight="Bold" />
        <TextBlock Grid.Row="1" Grid.Column="0" Margin="5" Foreground="Blue" Text="{DESCRIPTION}" TextWrapping="Wrap" />

        <Image Grid.Row="2" Grid.Column="0" Margin="5" Height="Auto" Source="{LINKBILD1}" />
        <TextBlock Grid.Row="3" Grid.Column="0" Margin="5" Foreground="DarkGray" Text="(autres image(s) --&gt; selection et ouvrir formulaire!)" TextWrapping="Wrap" />
    </Grid>

Hyperlinks sind nur in Verbindung mit Tooltips möglich.

Die Hyperlinks können durch das Drücken der Taste CTRL/STRG während der Tooltip sichtbar ist aktiviert werden. Beim Text Hyperlink tragen sie die zu öffnende URL ein. Wie bei den Tooltips können Feldwerte aus dem SQL in { } angegeben werden.

SQL im Tooltip:

select f.FID, f.GEOM, f.NAME, f.SCHACHT_FID from VIEW_AW_SCHACHT f where {filter} order by area

Und hier ein Beispiel für einen Hyperlink Eintrag um auf einer Seite der Funktion zum Anzeigen von Bildern die FID dynamisch als Parameter mit zu übergeben.

http:\\www.schachtbauwerke.de?ZeigeBilderZuSchacht={FID}

Es können auch komplexe Hyperlinks zur Weiterleitung konfiguriert werden.

Sofern ein Hyperlink angegeben ist wird dies unterhalb des Tooltips angezeigt und durch das Drücken der CTRL/STRG Taste ausgeführt.

Anzeige wenn ein Hyperlink definiert ist

Hinweise zur Benutzung

In dem MapEdit Projekt kann der Anwender die Tooltips bei Bedarf ein- und ausschalten:

Tolltips ausgeschaltet

An der Farbe dieses Optionenfeldes „Tooltip“ kann man erkennen, ob das Laden der
Tooltips fertig ist oder noch andauert. Wenn es schwarz angezeigt wird, dann ist der
Tooltip fertig. Bei langsamen Selects kann das etwas dauern. Oder wenn man in einem Gebiet ist, wo es keine Objekte mit diesem Tooltip gibt, wird die Option ausgegraut angezeigt:

Tooltips aktiviert und geladen

Wenn die Tooltips nicht angezeigt werden, können Sie im MapEdit Desktop Client unter Log die Abfrage / SQL sich anzeigen lassen und prüfen ob hier ein Fehler aufgetreten ist.

Aufruf der Log Anzeige
Angezeigter SQL aus Logdatei

Solange sie den Zoombereich nicht verschieben, wird die Tooltip Abfrage nicht nochmal ausgeführt, da die Elemente bereits geladen sind. Daher muss die Karte an einen neuen Koordinatenbereich geschoben werden, bevor man einen Eintrag in den Log Optionen angezeigt bekommt.

Weiterführende Informationen

Hier finden sie einen Link zu einem Beispiel für eine Tooltip Konfiguration welche auf ein View mit SQL-Befehl EXISTS geht. Mit dem EXISTS-Operator wird geprüft, ob ein Datensatz in einer Unterabfrage vorhanden ist. Öffnen sie den Ordner Knowledgebase, dort befindet sich ein PDF zu den Tooltips.

Updated on November 30, 2020