Page Title

Der Wiki wird derzeit überarbeitet: neue URL, neues Design, neue Inhalte!

Benutzer-Werkzeuge

Webseiten-Werkzeuge


mikeurban:arcgis:berechnungen_durchnummerieren

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
mikeurban:arcgis:berechnungen_durchnummerieren [2013/09/20 14:38]
127.0.0.1 Externe Bearbeitung
mikeurban:arcgis:berechnungen_durchnummerieren [2014/03/06 22:37] (aktuell)
thomas
Zeile 1: Zeile 1:
-====== ​Felder ​durchnummerieren ======+====== ​Datensätze ​durchnummerieren ======
  
 +//​Funktioniert ab ArcGIS 10 bzw. MIKE URBAN 2011.\\ ​ Letzte Änderung mit MIKE URBAN Version 2012 SP2.//
  
-Das Skript {{:​mikeurban:​downloads:rec_number_constantlengthstring4.zip|rec_Number_ConstantLengthString4.cal}} nummeriert Elemente nach dem Schema:+ 
 +Das Skript {{:​mikeurban:​arcgis:datensaetze-nummerieren5.zip|datensaetze-nummerieren5.cal}} nummeriert Elemente nach dem Schema:
  
 S_030\\ S_030\\
Zeile 9: Zeile 11:
 etc. etc.
  
-Damit können in ArcMap zum Beispiel ​ausgwählte Elemente mit einer benutzerdefinierten,​ fortlaufenden ID versehend werden. +Damit können in ArcMap zum Beispiel ​ausgewählte((In ArcGIS 10.0 SP1 nicht mehr als 250 Datensätze,​ siehe [[http://downloads.esri.com/​support/​downloads/​other_/​ArcGIS-10sp2-issues.htm|Service Pack 2]])) Elemente mit einer benutzerdefinierten,​ fortlaufenden ID versehend werden.
- +
-Das Skript basiert auf der exzellenten Sammlung ​[[http://www.ian-ko.com|Easy Calculate 5.0]] von Ianko Tchoukanski. +
- +
- +
  
 +Das Skript basiert auf einer Idee von Bill Huber im ArcView Forum, und auf der Online-Hilfe zu ArcMap.
  
 ===== Schritt für Schritt ===== ===== Schritt für Schritt =====
  
-1. Markieren ​Sie die Elemente, ​in denen Sie eine neue Bezeichnung einführen wollen.+**(1)** Klicken ​Sie in der Attributtabelle mit der rechten Maustaste auf den Spaltenkopf und öffnen ​Sie die FeldberechnungDas Feld muss vom Typ her ein Textfeld sein!
  
-2Wechseln Sie mit "Werkzeuge|Layout" ​und ArcGIS+**(2)** Wechseln Sie den Parser auf "Python"
  
-3. Öffnen ​Sie die Attributtabelle.+**(3)** Laden Sie das Skript {{:​mikeurban:​arcgis:​datensaetze-nummerieren5.zip|datensaetze-nummerieren5.cal}}.
  
-4. Stellen Sie sicher, dass der "​Editor Toolbar"​ sichtbar ist (unter Tools|Editor Toolbar), und starten ​Sie die Bearbeitung im Dropdown-Menü "​Editor"​. +**(4)** Passen ​Sie die folgenden Parameter an:
- +
-5. Klicken Sie auf die Spalte, die Sie bearbeiten möchten und öffnen Sie den "Field Calculator"​. +
- +
-6. Laden Sie das beiliegende Skript mit "​Load..."​. +
- +
-7. Im Kopf des Skripts müssen Sie einige Konstanten mit Werten belegen:+
  
 ^Konstante ^Erklärung ^ ^Konstante ^Erklärung ^
-|sPrefix ​|Zeichenfolge,​ die an den Anfang gestellt wird\\ z.B. "​S_"​ | +|Prefix ​|Zeichenfolge,​ die an den Anfang gestellt wird\\ z.B. "​S_"​ | 
-|IStringLength| Anzahl der Stellen der Ziffernfolge\\ z.B. 3, um S_001, S_002, S_003 etc. zu erzeugen | +|Length| Anzahl der Stellen der Ziffernfolge\\ z.B. 3, um S_001, S_002, S_003 etc. zu erzeugen | 
-|IStart ​|Startwert\\ z.B. 30, um mit S_030 zu beginnen | +|Start |Startwert\\ z.B. 30, um mit S_030 zu beginnen | 
-|IInterval ​|Intervall ​von einem Element zu nächsten\\ z.B 2, um S_030, S_032, S_034 zu erzeugen | +|Interval ​|Schrittweite ​von einem Element zu nächsten\\ z.B 2, um S_030, S_032, S_034 zu erzeugen | 
-|sSuffix ​|Zeichenfolge,​ die ans Ende gestellt wird\\ z.B. "​a"​ um S_030a, S_031a, S_032a zu erzeugen |+|Suffix ​|Zeichenfolge,​ die ans Ende gestellt wird\\ z.B. "​a"​ um S_030a, S_031a, S_032a zu erzeugen |
  
-8. Mit "​OK" ​starten Sie die Berechnung.+**(5)** Führen Sie das Skript mit "​OK" ​aus.
  
-9. Beenden Sie die Bearbeitung im Dropdown-Menü des Editor Toolbars. 
  
-10. Wechseln Sie zurück nach MIKE Urban. Eventuell müssen Sie zum Visualisieren von geänderten Beschriftungen den Bildschirm neu aufbauen.+===== Technische Details =====
  
  
- +==== Reihenfolge der Nummerierung ====
-===== Reihenfolge der Nummerierung ​=====+
  
 Die Datensätze werden in der Reihenfolge abgearbeitet,​ in der Sie in der Datenbank aufscheinen. Dies sollten Sie beim Digitalisieren neuer Schächte beachten. Üblicherweise wird in Hauptfließrichtung nummeriert. Die Datensätze werden in der Reihenfolge abgearbeitet,​ in der Sie in der Datenbank aufscheinen. Dies sollten Sie beim Digitalisieren neuer Schächte beachten. Üblicherweise wird in Hauptfließrichtung nummeriert.
Zeile 54: Zeile 44:
  
  
-===== Doppelte Bezeichnungen ​=====+==== Doppelte Bezeichnungen ====
  
 Falls Sie einen Namen erzeugen, der als MUID bereits vorhanden ist, stoppt das Skript mit einer Fehlermeldung "​Failed to apply changes after the row with ObjectID=22 with the calulated value. Das kann passieren, wenn Sie  Falls Sie einen Namen erzeugen, der als MUID bereits vorhanden ist, stoppt das Skript mit einer Fehlermeldung "​Failed to apply changes after the row with ObjectID=22 with the calulated value. Das kann passieren, wenn Sie 
Zeile 62: Zeile 52:
 b) die Ziffernfolge zu kurz ist für die Anzahl der ausgewählten Elemente. b) die Ziffernfolge zu kurz ist für die Anzahl der ausgewählten Elemente.
  
-In der Zeile 22 wurde eine doppelte ID erzeugt, danach kam die Fehlermeldung der MIKE Urban Datenbank. Machen Sie den letzten Schritt rückgängig (dabei werden *alle* Zeilen wieder zurückgesetzt betroffen), und modifizieren Sie Ihren Rechenausdruck entsprechend.+In der Zeile 22 wurde eine doppelte ID erzeugt, danach kam die Fehlermeldung der MIKE URBAN Datenbank. Machen Sie den letzten Schritt rückgängig (dabei werden *alle* Zeilen wieder zurückgesetzt betroffen), und modifizieren Sie Ihren Rechenausdruck entsprechend.
  
  
 ===== Listing ===== ===== Listing =====
  
-<​code ​vb+<​code ​python
-'​========================+rec 0 
-'​rec_Number_ConstantLengthString4.cal +def autoIncrement():​ 
-'idea from Bill Huber'​s post on ArcView Forum +    ​global rec 
-'​AuthorIanko Tchoukanski +    ### Die folgenden Werte sind anzupassen
-'​http://​www.ian-ko.com +    Prefix = 'Knoten_' ​   # Zeichenfolge,​ die an den Anfang gestellt wird 
-'Prefix ​and Suffix added by Thomas Telegdy +    ​Length ​= 3            # Anzahl der Stellen der Ziffernfolge 
-'========================= +    ​Start ​= 1             # Startwert 
-Static rec As Long +    ​Interval ​= 1          # Schrittweite 
-Static j As Long +    ​Suffix ​'' ​          # Zeichenfolge,​ die ans Ende gestellt wird 
-Dim lStart As Long +    ### 
-Dim lInterval As Long +    ​Fill ​'00000000000000000000' 
-Dim sFill As String +    ​if ​rec == 0 ): 
-Dim lStringLength As Long +        rec = Start 
-Dim sID As String +    else: 
-Dim sPrefix As String +        rec = rec + Interval 
-Dim sSuffix As String +    ​ID ​Prefix + (Fill + str(rec))[-Length:​] ​Suffix 
-'============================ +    ​return ID
-'set the variables below +
-sPrefix = "​Knoten_"​ +
-lStringLength ​= 3 +
-lStart ​= 1 +
-lInterval ​= 1 +
-sSuffix ​""​ +
-'​============================ +
-sFill "00000000000000000000" +
-sID = ""​ +
-If (= 0) Then +
-  rec = lStart +
-Else +
-  rec = rec + lInterval +
-End If +
-sID sPrefix & Right(sFill & CStr(rec), lStringLength& sSuffix +
-j = j +
- +
- +
-__esri_field_calculator_splitter__ +
-sID+
 </​code>​ </​code>​
  
Zeile 111: Zeile 81:
  
 ^Datum ^Änderung ^ ^Datum ^Änderung ^
-|14.12.2006 |Prefix und Suffix eingefügt (=Version 4) | +|27.11.2013 |auf Python umgeschrieben (= Version 5)    | 
- +|14.12.2006 |Prefix und Suffix eingefügt (= [[mikeurban:​arcgis:​berechnungen_durchnummerieren_93|Version 4]]) |
  
  
mikeurban/arcgis/berechnungen_durchnummerieren.1379680696.txt.gz · Zuletzt geändert: 2013/11/27 19:35 (Externe Bearbeitung)