Aktualisierung Ereignisthema

Hallo,

wie aktualisiere ich (per Avenue) ein Ereignisthema?

Ich habe eine Datenbanktabelle mit Koordinaten per ODBC in AV geladen. Wenn nun in der Datenbank ein neuer Eintrag hinzukommt oder ein Eintrag geändert wird, bekomme ich über ein refresh auch die aktuellen Daten in der Tabelle in AV angezeigt. Aber Im View mit dem Ereignisthema wird der neue oder verschobene Punkt nicht angezeigt.

Jörg
Hallo Jörg,

Ich habe dazu einen Button mit folgendem Script, das alle Themen, die Attributtabellen aktualisiert.
theview = av.GetActiveDoc
for each Thema in theview.getthemes
if(Thema.is(ftheme)) then
Thema.getftab.Refresh
end
end

Gruß
Jürgen
Hallo Jörg,
exakt dieses Problem habe ich auch (immer noch). Die Diskussion findest du unter http://www.anuva.de/service_arcforum.php?action=vthread&forum=1&topic= 549
Die Daten in der per ODBC in ArcView eingebundenen Tabelle sind immer aktuell, nicht aber das Ereignisthema im View.
Leider bringt "refresh" in der Attributtabelle bei mir nichts. Es würde mich interessieren, ob es bei dir funktioniert.

Grüße
Rena
Hallo Rena,

bei mir funktioniert es mit dem refresh, hier der Code, ich hoffe er wird einigermaßen lesbar sein:

pt = av.GetActiveDoc.GetDisplay.ReturnUserPoint

x = pt.GetX.AsString
y = pt.GetY.AsString

sqlString = "Update objekt set X = " + x + ", Y = " + y + " WHERE objekt_id = " + _objekt_id.AsString

SQLCon.Find(_odbcName).ExecuteSQL(sqlString)

av.FindDoc("Objekte NICHT LÖSCHEN").GetVTab.Refresh

theQuery = "( [Objekt_id] = "+_objekt_id.AsString+" )"
objektFTab = av.Run("_Find.ObjektTheme",nil).getftab
objektFTab.Query(theQuery,ObjektFTab.GetSelection,#VTAB_SELTYPE_NEW)
objektFTab.Refresh

Bei jedem Mausklick in die Karte werden die Koordinaten in die DB geschrieben und dann die Ereignis-Thema-Tabelle und FTab refreshed. Ich ging zuerst davon aus, dass die Ereignisthema-Tabelle das selbe Objekt ist, wie die Attributetabelle des Ereignisthemas, Das ist offenbar nicht so. Verstehen tute ich das nicht. Mehr kann ich dazu leider auch nicht sagen. Aber wir können uns bei Bedarf gerne weiter dazu austauschen...

Jörg