Formular-Designer: Erstellen eines Koordinaten-Editors mit SQL

Verwenden Sie die SQL-Eigenschaft zum Anzeigen von Geometrie, die nicht in der aktuellen Tabelle, sondern in einer verknüpften Tabelle gespeichert ist. Bei der aktuellen Tabelle kann es sich auch um eine Attributtabelle ohne Geometrie handeln, die jedoch über ein verknüpftes Objekt verfügt.

Die Eigenschaft SQL eines Geometriesteuerelements ist vorgabegemäß leer. In diesem Fall wird die Geometrie des aktuellen Formulars angezeigt. Sie können eine SQL-Anweisung zum Anzeigen der Geometrie eines Objekts verwenden, das in einer verknüpften Tabelle gespeichert ist (verknüpftes untergeordnetes Objekt).

Beachten Sie Folgendes:

Im Folgenden sind einige Beispiele für die Verwendung von Geometriesteuerelementen mit SQL aufgeführt.

Anzeigen der Geometrie eines verknüpften Punkts

Das Objektklassenformular (Tabelle) WA_LINE verfügt über das Attribut FID_STARTPOINT, das sich auf die Tabelle WA_POINT bezieht, aus der die Geometrie angezeigt werden soll.

select FID from WA_POINT where fid={FID_STARTPOINT}

oder:

{FID_StartPoint}

Die FID ist in der gesamten Datenbank eindeutig, sodass das System diese Objektklasse (Tabelle) mit dieser FID finden kann, ohne dass der Tabellenname bekannt ist.

Anzeigen der Koordinaten von Schächten am Anfang und Ende einer Haltung im Formular WW_SECTION

Die Schacht-FIDs werden im Formular WW_SECTION in den Attributen {FID_first_manhole} und {FID_last_manhole} gespeichert.

Erstellen Sie im Formular WW_SECTION ein Geometriesteuerelement, und definieren Sie die SQL-Anweisung:

{fid_first_manhole}

Die genaue SQL-Anweisung lautet wie folgt:

select FID from WW_MANHOLE where fid={FID_first_manhole}

Die SQL-Anweisung muss eine FID zurückgeben. Die Geometrie dieser FID wird angezeigt.

Anzeigen der Haltungsgeometrie in einem Abwasserkanalformular

SEWAGE_WORKS.FID_STRUCTURE; STRUCTURE.FID_PIPE; PIPE.GEOM
select FID_PIPE from STRUCTURE where FID = {FID_structure}

Auswählen

select FID_<t1> from t2 where FID in (select FID from <t3> where FID_<t4>={t4} and structuretype ='iron')