Import CPG Jetzt Importieren

zum Anfang  zurück  weiter

 

Bei jedem Import wird eine Importgruppe erstellt. Der Name der Importgruppe lautet: "CPG Kanaldaten"

Die Langbezeichnung: "Import aus CPG: " und dann die Bezeichnungen der angehakten Module.

 

Tabellenbezeichnungen der Quelle:

 

 TABNAME_Bitterfeld_Schacht                = 'Schacht';

 TABNAME_Bitterfeld_SchachtBauwerk        = 'Schachtbauwerk';

 TABNAME_Bitterfeld_Anschlusspunkt        = 'Anschlusspunkt';

 TABNAME_Bitterfeld_Haltung                = 'Leitung';

 

 

Import von Schächten:

 

       Ausgangsdaten: 'SELECT * FROM $TABNAME_Bitterfeld_Schacht$ WHERE (not Nummer is null) and ($UserFilter$)'

 

       Es werden alle Objekte aus der Tabelle "Schacht" geholt, deren Feld "Nummer" nicht leer ist und der im Assistentenfenster bei Einstellung/Filter angegebenen Filter entspricht.

 

       Gegebenenfalls werden die angegebenen Datensätze übersprungen (s. Entwicklung)

       Das Feld "Medium" wird gelesen. Falls die Werte "BW" oder "TW" enthalten sind, wird der Datensatz auch übersprungen.

 

       Für jeden Quelldatensatz Q wir ein neuer Deckel "D" und ein neuer Schacht "S"erstellt.

       Folgende Felder werden dabei übernommen:

 

       S.Name        = Q.Nummer

       S.IDKanalart        = Q.Medium

       S.ImportID        = Q.ID

       S.IDBaustatus        = 0 wenn Q.Abt = 'N'

       S.IDBaustatus        = 5 wenn Q.Abt nicht 'N'

       S.IDBetreiber        = 1

       S.Name2        = Q.Nummer_Alt

       S.NameLang        = Q.Bemerkung

       S.Durchmesser        = Q.Durchmesser

       S.AnwText1        = Q.UP_NR

       S.AnwText2        = Q.UP_KUNDE_NR

       S.AnwText3        = Q.UP_Lage

       S.AnwText4        = Q.UP_PST

       S.AnwZahl1        = Q.Jahresmenge

       S.IDBauart        = Q.Typ

       S.DBaujahr        = Q.Baujahr                mit Korrektur: Wenn ein "/" angegeben ist, dann wird der Wert vor dem ersten "/" übernommen. Ein entsprechender Tect wird ins Protokoll geschrieben.

       S.IDMaterial        = Q.Material

       S.IDGKHerkunft        = Q.Herkunft

       S.AnwText5        = Q.Datenquelle

       S.AnwText6        = Q.Masznahme

       S.AnwDatum1        = Q.Bearbeitung

       S.AnwText7        = Q.Bearbeiter

       S.Hoehe        = Q.Sohlhoehe

       S.IDHoeheHerkunft        = Q.Sohlhoehe_Herkunft

       S.AnwZahl2        = Q.GW_Zulaessig

       S.Durchmesser        = Q.Laenge

       S.Breite                = Q.Breite

       S.AnwText8        = Q.Netzberechnung

       S.AnwText9        = Q.TVU

 

         // Hole vom Q.Schacht die Koordinaten, das sind die Deckelmittelpunkte

         // Die Schachtmittelpunkte kommen aus den Haltungen

       D.GKR                = Q.CoordGeocodePoint

       D.GKH                = Q.CoordGeocodePoint

       D.Hoehe        = Q.Deckelhoehe

       D.IDHoeheHerkunft        = Q.DeckelHoehe_Herkunft

       // Schacht Koordinaten schon mal vorbelegen:

       S.GKR                = Q.CoordGeocodePoint

       S.GKH                = Q.CoordGeocodePoint

 

 

Import von Schachtbauwerk Koordinaten:

 

       Ausgangsdaten: 'SELECT * FROM $TABNAME_Bitterfeld_Schachtbauwerk$ WHERE (not Nummer is null) and ($UserFilter$)'

 

       Ein bestehender Schacht S wird über die Schachtbezeichnung Q.Nummer gesucht

       Der Geometrietyp des Quell Objektes im Feld "Geometry" wird ermittelt.

         Ist der Geometrietyp = GM_CompositePolygonGeometry und "Nur Mittelpunkt" wurde angehakt, dann

               wird die Koordinate GKR und GKH übernommen und der Durchmesser *2

 

       Ist der Geometrietyp = GM_PolylineGeometry oder GM_PolygonGeometry und "Nur Eckschächte" wurde angehakt, dann        

               wird für jeden Geometriepunkt ein Schachteckpunkt SE erstellt mit Koordinaten, Höhe und Nummerierung beginnend bei 10 inkrement 10

               Der SE.Zug bleib auf 1

 

 

Import von Haltungen / Leitungen:

 

       Ausgangsdaten: 'SELECT * FROM TABNAME_Bitterfeld_Haltung WHERE (not Nummer is null) and ($UserFilter$)'

 

 

       Gelesen wird die Bezeichnung aus Q.Nummer

       und Q.Anfangsschacht und Q.Endschacht

       Ist die Bezeichnung des Anfangs oder Endschachtes kürzer oder gleich sieben Zeichen, dann wird es als Schacht interpretiert, sonst als Q.APK

               Das Vorhandensein der angegebenen Schächte wird geprüft und wenn nicht gefunden wird eine Warnung ausgegeben. "Bei Haltung: xxx wurde Schacht oben nicht gefunden: yyy"

       Ist die Bezeichnung des Anfangs oder Endschachtes länger als sieben Zeichen, dann wird es als APK interpretiert und in der Tabelle TABNAME_Bitterfeld_Anschlusspunkt gesucht und dessen Daten übernommen.

 

       Die Unterscheidung zwischen Haltung und Hausanschlussleitung wird also aufgrund der angegeben Schachtbezeichnungslängen getroffen.

       Haltungen haben oben und unten einen Schacht

       Leitungen haben oben und unten einen APK

 

       Der Import läuft bei Haltungen und Leitungen gleich ab:

       H.Name                = Q.Nummer

       H.DBaujahr        = Q.Baujahr                mit Korrektur: Wenn ein "/" angegeben ist, dann wird der Wert vor dem ersten "/" übernommen. Ein entsprechender Tect wird ins Protokoll geschrieben.

       H.IMPORTID        = Q.ID

       H.IDBaustatus        = 0 wenn Q.Abt = 'N'

       H.IDBaustatus        = 5 wenn Q.Abt nicht 'N'

       H.LaengePlan        = Länge                        Die geometrische Länge wird neu gerechnet. Daher wird die numerische Länge aus der Quelle in diesem Feld dokumeniert

       H.DLetzteInspektion        = Q.Inspektion_letzte

       H.StrangNr                = Q.Strang

       HAnwText6                = Q.Masznahme

       H.AnwText5                = Q.Datenquelle

       H.AnwText6                = Q.Netzberechnung

       H.AnwText9                = Q.TVU

       H.AnwDatum1                = Q.Bearbeitung

       H.AnwDatum2                = Q.TVU_Datum

       H.Profilbreite                = Q.DN                        Wenn "/" enthalten, dann der erste Wert

       H.ProfilHoehe                = Q.DN                        Wenn "/" enthalten, dann der zwiete Wert

       H.IDKanalart                = Q.Medium

       H.IDMaterial                = Q.Material

       H.IDProfilart                = Q.Profilart

       H.IDEntwaesserung        = Q.Betriebsart

       

       Prüfung der Grenzwerte

 

       Koordinaten werden aus Q.Geometry2 gelesen

               Wenn mehr als zwei Geometriepunkte, werden diese als Haltungszwischenpunkte HE gespeichert. Der erste und der letzte Punkt wird nicht als "Zwischenpunkt" gespeichert, sonder als Knoten, also Zu- und Ablauf.

               Zwischenpunkte werden durchnummeriert, beginnend mit 10 inkrement 10.

       Wenn weniger als zwei Koordinaten gelesen werden, wird eine fehlermeldung ausgegeben.