Mel Geschrieben 13. Februar 2016 Teilen Geschrieben 13. Februar 2016 Hallo liebes Forum Aus einem Lageplan mit Parzellennummern (eigene Klasse) sollen alle Parzellennummern automatisch in das vorher definierte Datenbankfeld (unter Info> Daten) geschrieben werden, damit ich die Eigentümer etc. dazuschreiben kann. Wie verknüpfe ich die Parzellennummern im Plan am Besten mit einer Datenbank? Oder sollte ich mit einem Multistempel arbeiten? Vielen Dank für eure Hilfe. Gruess Mel iMac (2011) OS X 10.10.5, 4GB RAM VW 16 SP2 ARCH + RW Link zu diesem Kommentar
Dominique Corpataux Geschrieben 14. Februar 2016 Teilen Geschrieben 14. Februar 2016 Hallo Mel Multistempel wäre eine Möglichkeit. Wenn Du viele Parzellen hast und dich mit Vectorscript etwas auskennst, kannst Du auch ein Script benutzen. Angehänges Script macht folgendes: 1. Ein Polygon, wird mit der Datenbank db = 'Parzellendaten' verknüpft 2. Das Feld field = 'Parz Nr' wird mit dem Textinhalt eines Textblockes ausgefüllt, welcher ganz innerhalb des Polygons liegen muss 3. Der Text muss der Klasse klasse = 'Keine' befindet (So kann vermieden werden, dass auch andere Text (Hausnummern etc. in der Datenbank landen)) 4. Zur Kontrolle, kannst Du eine Tabelle anlegen. Das Script funktioniert unter folgenden Bedigungen: 1. Parzellen sind Polygone oder Polylinien 2. Klasse, Datenbank und Datenbankfeld, müssen bereits vorhanden sein Im Script befinden sich folgende Zeilen, welche Du manuell anpassen kannst: klasse = 'Keine' db = 'Parzellendaten' field = 'Parz Nr' Gruss Dominique Für Scripts, gilt wie immer folgender Grundsatz: #Auf einer Kopie des Originalplanes ausprobieren. #Auf dieses Script kann kein Support und keine Gewährleistung gegeben werden. #Für Fragen und Hilfe betreffend Scripts, empfiehlt sich das Forum (www.vectorworksforum.de oder www.vectorworks.net/community) #Damit das Script läuft, muss oben im Script-Editor das Popup Scriptsprache auf "Python Script" eingestellt werden. Parzellen Nummer Script.zip Macbook m3 Max 48 GB | Ryzen 3950x 64GB NVIDIA rtx3090 Link zu diesem Kommentar
Mel Geschrieben 15. Februar 2016 Autor Teilen Geschrieben 15. Februar 2016 Hallo Dominique Danke für die schnelle Antwort. Ich habe in deine angehängte Datei einen Ausschnitt aus meinem Lageplan reinkopiert, im Script die Klasse "Keine" mit meiner ("Grundstück-Nr.") überschrieben beim Script rechte Maus "Ausführen" gewählt > es funktioniert :-) d.h. wenn ich die Parzellengrenze (geschlossenes Polygon) anklickte, sehe ich in Info> Daten nun das Datenbankfeld "Parz.Nr" ausgefüllt mit der effekiven Parzellen-Nr. Wenn ich die Parzellen-Nr. im Plan (Textfeld) mit der gleichen Datenbank verknüpfe, bleibt jedoch das gleiche Datenbankfeld "Parz.Nr" leer > was mache ich falsch? oder andere Frage: Kann ich ohne Script (kenne mich da zu wenig aus) mit einer Tabelle über Funktion und Suchkriterium alle Parzellennummern (oder alle Fixpunkt-Nr. , alle Texte in Klasse xy etc.) aus dem Plan in der Tabelle auflisten lassen? Funktion '= Wert' funktionierte irgendwie nicht... Suchkriterium sollte C=Klasse sein oder? auch hier scheitere ich leider.... Danke für Hilfe. Gruess Mel iMac (2011) OS X 10.10.5, 4GB RAM VW 16 SP2 ARCH + RW Link zu diesem Kommentar
Dominique Corpataux Geschrieben 15. Februar 2016 Teilen Geschrieben 15. Februar 2016 Wenn ich die Parzellen-Nr. im Plan (Textfeld) mit der gleichen Datenbank verknüpfe, bleibt jedoch das gleiche Datenbankfeld "Parz.Nr" leer > was mache ich falsch? Nichts :-) Das Script schreibt verknüpft "nur" die Parzellenfläche mit der Datenbank. Wenn Du danach eine Liste hast mit allen Objekten, welche mit der Datenbank "Parzellendaten" musst Du ja dann entweder die Polygone oder die Texte wieder mit dem Kriterium rausfiltern. Ansonsten ist alles Doppelt. Ebenfalls hängen an der Parzellenfläche mehr Infos, als am Text (Fläche, Umfang, Grafik u.s.w.) Die Frage ist natürlich was das Endziel sein soll, wenn Objekte mit der Datenbank verknüpft werden. Eine Liste mit allen Parzellennummern oder gleichzeitig noch Fläche der Parzelle. Oder möchtest Du in einer Tabelle die Parzellennummern verändern können? Wenn Du den Text ebenfalls (oder nur den Text) mit der DB verknüpften möchtest, dann kannst Du das Script wie folgt anpassen: vs.SetRecord(poly_h,db) vs.SetRecord(text_h,db) vs.SetRField(poly_h, db, field,text) vs.SetRField(text_h, db, field,text) Tabelle: In der Tabelle, kannst Du alle Infos anzeigen lassen, welche als als Information vorhanden sind. D.h. Ebenen, Klassen, Fläche Datenbankinfos, u.s.w. Der Inhalt eines Textfeldes, ist aber nicht zugängliche via Tabelle. D.h.via Suchkriterium, kriegst Du die Polygone, Textfelder u.s.w. sauber in die Tabelle rein. Aber die Parzellennummer, bleibt für die Tabelle unsichtbar. Da Hilft meines Wissens nur ein Script, oder ein Manuell (oder mit Stempel und dergleichen) angelegter zusätzlicher Datenbankeintrag. Datenbankeinträge, kannst Du übrigens in der Tabelle verändern (Bi-direktional). Macbook m3 Max 48 GB | Ryzen 3950x 64GB NVIDIA rtx3090 Link zu diesem Kommentar
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden