<pre><tt>Guten Tag, <br> <br> Ich habe ein grosses Problem bei der Abfrage eines Layers, <br>der im ArcSDE liegt und über ein Punktobjekt im Mapscript definiert wird.<br>In meinem Mapfile habe ich die richtigen Parameter für die Connection zur SDE<br>angegeben, weil ich sich die Layer anzeigen (aber leider nicht abfragen) lassen.<br> Wenn ich einen Layer abfragen will, bekomme ich folgende Fehlermeldung:<br> Fatal error: [MapServer Error]: msSDELayerGetShape(): <br>SE_stream_fetch_row(): Invalid pointer argument to function. (-65) in <br>/../../webgis.php on line 142<br> <br> Zeile 142 meiner webgis.php besagt folgendes:<br> $Shape = $Abfragelayer->getShape($ti,$si);<br> <br> vor Zeile 142 habe ich das Punktobjekt erzeugt und den Layer definiert:<br> //Punktobjekt erzeugen und Abfrage auf Punkt<br>$punkt=ms_newPointObj();<br>$punkt ->setXY($x_real,$y_real);<br><br>@$map ->queryByPoint($punkt, MS_SINGLE, -1);<br><br><br>//Test, ob Abfrage erfolgreich
war<br>if((@$map ->queryByPoint($punkt, MS_SINGLE, -1))==MS_SUCCESS){<br>$Abfrage="Abfrage hat geklappt";<br><br><br>//Abfragelayer finden<br>for($iLayer=0; $iLayer < $map->numlayers; $iLayer++)<br> {<br> $Abfragelayer = $map->GetLayer($iLayer);<br><br> $numResults = $Abfragelayer ->getNumResults();<br><br> if ($numResults == 0)<br> continue;<br><br>//Tabelle des Abfragelayers oeffnen und Spalten auslesen<br>$Abfragelayer->open();<br><br><br>$Spalte=explode(" ",$Abfragelayer->getMetaData("RESULT_FIELDS"));<br><br>//Inhalt der Spalten auslesen<br><br>//bestimmtes Objekt des Shapes definieren<br>$resultat=$Abfragelayer->getResult(0);<br><br> $si=$resultat->shapeindex;<br> $ti=$resultat->tileindex;<br> $ci=$resultat->classindex;<br><br>$Shape = $Abfragelayer->getShape($ti,$si);<br> <br> Ich bin mir fast sicher, dass ich irgendeinen Fehler bei <br>der MapScript-Prgrammierung gemacht habe. Bestimmt muesste ic
h<br>das
SDE irgendwie in mein Skript mit reinbringen, aber wie?<br><br> <br>Vielleicht kann jemand helfen?<br>Liebe Grüße, Ruth<br></tt></pre> <p>
                <hr size=1>Telefonieren Sie ohne weitere Kosten mit Ihren Freunden von PC zu PC!<br>Jetzt <a href=http://de.yahoo.com/mail_de/tagline/messenger/*http://de.messenger.yahoo.com>Yahoo! Messenger</a> installieren!