Es gibt Systeme, die keine Verbindung zwischen Haltungspunkt und Bauwerk verlangen, GEOBOX Abwasser jedoch schon (virtuelle Linie).
Darum kann es sein, dass nach einem Interlis 2 Import diese Haltungsverbindungen fehlen, was wiederum zu Topologiefehlern führt (Knoten ohne Kanten). Man kann die fehlenden Haltungen (virtuelle Linien) aber im SQL-Sheet folgendermassen erzeugen. Es ist zu empfehlen vorher eine Sicherung der DB zu machen:
pro Bauwerk gibt es zwei "Inserts". Eines für den "von Punkt" und eines für den "nach Punkt". Das SQL ist am Beispiel des Normschachtes erklärt.
Pro Bauwerk gibt es zwei Inserts. Einer für den "von Punkt" und einer für den "nach Punkt". Das SQL ist am Beispiel des Normschachtes erklärt.
In folgenden SQL Skripts werden für das Attribut F_CLASS_ID_ATTR Codes aus der Tabelle TB_DICTIONARY verwendet. Diese können von Anwender zu Anwender verschieden sein und können deshalb nicht 1:1 übernommen werden. Diese Werte sind vorgängig der Tabelle TB_DICTIONARY zu entnehmen.
In untenstehendem Beispiel steht 84 für den Normschacht (WW_PO_MA_MANHOLE), 76 für Haltung (WW_PI_SECTION) und 98 für Haltungspunkt (WW_PO_SE_SECTION_P).
Normschacht (von Punkt)
insert into ww_line (fid_attr, f_class_id_attr, isvirtual, utility_info, geom) select se.fid,76,1,1, sdo_geometry(2002,2056,null,sdo_elem_info_array(1,2,1),sdo_ordinate_array(ps.geom.sdo_point.x,ps.geom.sdo_point.y,pp.geom.sdo_point.x,pp.geom.sdo_point.y)) from ww_point ps, ww_point pp, ww_po_se_section_p p, ww_pi_section se where ps.F_CLASS_ID_ATTR=84 and pp.F_CLASS_ID_ATTR=98 and pp.fid_attr=p.fid and exists (select 1 from WW_PO_MA_MANHOLE s where s.fid=p.fid_feature) and ps.geom.sdo_point.x *ungleich* pp.geom.sdo_point.y and ps.geom.sdo_point.y *ungleich* pp.geom.sdo_point.y and sdo_within_distance(ps.geom,pp.geom, 'distance=3') = 'TRUE' and p.fid_section = se.fid and se.fid_feature_from = ps.fid_attr;
Sie können dies im SQL-Sheet ausführen (F5), mit F9 festschreiben und anschliessend die Topologie neu starten.
Weitere Bauwerke
Für weitere Bauwerke, wie z.B. Spezialbauwerk muss jeweils folgendes angepasst werden:
insert into ww_line (fid_attr, f_class_id_attr, isvirtual, utility_info, geom ) select se.fid,76,1,1, sdo_geometry(2002,2056,null,sdo_elem_info_array(1,2,1),sdo_ordinate_array(ps.geom.sdo_point.x,ps.geom.sdo_point.y,pp.geom.sdo_point.x,pp.geom.sdo_point.y)) from ww_point ps, ww_point pp, ww_po_se_section_p p, ww_pi_section se where ps.F_CLASS_ID_ATTR=84 and pp.F_CLASS_ID_ATTR=98 and pp.fid_attr=p.fid and exists (select 1 from WW_PO_MA_MANHOLE s where s.fid=p.fid_feature) and ps.geom.sdo_point.x *ungleich* pp.geom.sdo_point.y and ps.geom.sdo_point.y *ungleich* pp.geom.sdo_point.y and sdo_within_distance(ps.geom,pp.geom, 'distance=3') = 'TRUE' and p.fid_section = se.fid and se.fid_feature_to= ps.fid_attr;