<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-15"
 http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Hallo,<br>
<br>
ich habe ein Problem bei der Verwendung von
METADATA-&gt;SWFDUMPATTRIBUTES mit Postgis Subselects/Joins.<br>
<br>
Zuerst möchte ich einmal den Mapscript-Codeausschnitt posten, der
funktioniert:<br>
<tt><br>
LAYER<br>
  NAME location<br>
  CONNECTIONTYPE postgis<br>
  CONNECTION "user=postgres password=* dbname=* host=localhost"<br>
  DATA "the_geom from (select oid,* from countries) as foo"<br>
  METADATA<br>
    "SWFDUMPATTRIBUTES" "admin_name"<br>
  END <br>
  PROJECTION<br>
    "init=epsg:4326"<br>
  END<br>
  CLASS<br>
    COLOR        232 232 232<br>
    OUTLINECOLOR 32 32 32<br>
  END<br>
END<br>
<br>
</tt>Hierbei verbinde ich mich zu meiner Tabelle, welche nur die dt.
Bundeslandpolygone enthält und übertrage den Namen des jeweiligen
Landes in das SWF Attribut, welches in der Flash-Demo Anwendung beim
Mouseover-Effekt pro Bundesland angezeigt wird. Das funktioniert ohne
Probleme.<br>
<br>
Wenn ich allerdings anstelle des einfacheren SELECT-Befehls  über zwei
Tabellen joine gibt es Probleme. Hier der andere Code:<br>
<br>
<tt>LAYER<br>
  NAME location<br>
  CONNECTIONTYPE postgis<br>
  CONNECTION "user=postgres password=* dbname=* host=localhost"</tt><br>
<tt>  DATA "the_geom from (SELECT locations.oid, identifier, the_geom
FROM locations, location_types WHERE location_types.id =
locations.type_ref AND location_types.tier = 3 AND
location_types.country='Germany') AS foo using unique the_geom using
SRID=4326 GROUP BY name"<br>
  METADATA<br>
    "SWFDUMPATTRIBUTES" "identifier"<br>
  END <br>
</tt><tt>  PROJECTION<br>
    "init=epsg:4326"<br>
  END<br>
  CLASS<br>
    COLOR        232 232 232<br>
    OUTLINECOLOR 32 32 32<br>
  END<br>
END<br>
<br>
</tt>Zum Hintergrund:<br>
Ich habe eine Tabelle (<tt>locations</tt>), welche alle
Polygon-Geometrien enthält. Eine zweite Tabelle (<tt>location_types</tt>)
speichert die Hierarchie. So sind also die Bundesländer, welche vorher
in einer Tabelle waren als solche markiert und lassen sich so abfragen.
Die WHERE Klausel sorgt dafür, dass in diesem Fall nur die Bundesländer
zurückgegeben werden. Die Query funktioniert auch, allerdings wird das
Attribut <tt>identifier</tt>, welches wiederum den Namen des Landes
enthält nicht korrekt zugeordnet. Alle Bundesländer heißen im Gegensatz
zu der vorherigen Karte 'Schleswig-Holstein'. Das Abfrageergebnis aus
der Datenbank enthält jedoch alle Bundeslandnamen. Zum Test habe ich
mir ein Label erzeugt.<br>
<br>
Ich bin für jede Anregung dankbar,<br>
<br>
Mit freundlichen Grüßen,<br>
<br>
Markus Reinhardt<br>
<br>
<br>
<div class="moz-signature">-- <br>
My <a href="http://www.gnupg.org" target="_blank">GnuPG</a> public key:<br>
<a class="moz-txt-link-freetext" href="http://pgpkeys.pca.dfn.de:11371/pks/lookup?op=get&search=0x4CFAB28FFB576443">http://pgpkeys.pca.dfn.de:11371/pks/lookup?op=get&amp;search=0x4CFAB28FFB576443</a>
</div>
</body>
</html>