| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Typkonvertierung (Type Casting) beim Export (688 mal gelesen)
|
Goofy007 Mitglied Vermessungstechniker
Beiträge: 578 Registriert: 06.11.2004 Map3D 2018 und Civil3D 2018
|
erstellt am: 24. Jan. 2011 16:45 <-- editieren / zitieren --> Unities abgeben:
Hallo Forum, ich habe eine DWG mit Leitungsmessungen und will daraus GIS-Daten erstellen. Ziel ist eine PostGIS-Datenbank. Bisher habe ich die CAD-Daten klassifiziert. Anschließend exportiert ins SDF-Format. Und dann per Massenkopie nach Postgis kopiert. Nun habe ich aber das Problem, dass zb. die Höhe der Kanaldeckel im Postgis als Zahl (numeric 6,2) definiert sind,(vorgegebene Norm, darf ich nicht ändern) in den Autoad-Blöcken aber ein Text steht. Wo bzw. wie kann/muss ich die Typ-Konvertierung einbauen? lg Didi
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 24. Jan. 2011 17:33 <-- editieren / zitieren -->
Hi, Du kannst nach dem Export in SDF das SDF nochmals als Layer laden, dann Rechtsklick auf diesen GIS-Layer im Map-Arbeitsbereich ==> 'Berechnung erstellen' ==> damit kannst Du mal einen Wert zusammenbauen (hoffentlich! Kenne Deine Daten nicht), der zumindest mal numerisch wird. Nachfolgend sollte das Exportieren als Zahlenwert möglich sein. HTH, - alfred - ------------------ www.hollaus.at |
Goofy007 Mitglied Vermessungstechniker
Beiträge: 578 Registriert: 06.11.2004
|
erstellt am: 24. Jan. 2011 18:31 <-- editieren / zitieren --> Unities abgeben:
|
Goofy007 Mitglied Vermessungstechniker
Beiträge: 578 Registriert: 06.11.2004 Map3D 2018 und Civil3D 2018
|
erstellt am: 25. Jan. 2011 09:17 <-- editieren / zitieren --> Unities abgeben:
Hallo Alfred, dein Tipp hat funktioniert, aber leider sind die mir zur Verfügung stehenden Daten nicht "sauber". Das Attribut hoehe enthält bei einigen Blöcken Texte. Ich habe nun versucht mittels Code: NullValue (ToFloat (HOEHE),0)
auszuwerten. Aber leider bekomme ich beim Export trotzdem die Meldung "Ungültiger Wert zum Ausführen der Funktion 'ToFloat'"Frage: kann ich bei der Auswertung ein IF..THEN oder Ähnliches verwenden, um den Konvertierungsfehler abzufangen. lg Didi
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 25. Jan. 2011 20:47 <-- editieren / zitieren -->
Hi, IF gibt's leider keines (hab mich auch schon geärgert). Ich würde einen von 2 folgenden Wegen wählen: a) die Blockattribute säubern - oder - b) mal mit kaputten Blockwerten ein SDF erzeugen, dieses verbinden, dann einen Filter auf die kaputten Blockwerte (hoffe, dass die Form von 'kaputt' als Filter definierbar ist). b1) über Formel eine 'Berechnung' hinzufügen, die dann ev. Zahlenwerte draus macht (dann die ursprüngliche Attributsspalte löschen), dann SDF erneut exportieren b2) händische Korrektur der Spalte mit den kaputten Blockattributswerten HTH, - alfred - ------------------ www.hollaus.at |
Goofy007 Mitglied Vermessungstechniker
Beiträge: 578 Registriert: 06.11.2004
|
erstellt am: 26. Jan. 2011 07:16 <-- editieren / zitieren --> Unities abgeben:
|
RL13 Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Bauwesen
Beiträge: 2373 Registriert: 23.10.2008 Civil 3D 2018.1 Civil 3D 2016 64 Bit SP 3 mit DACH und Extensions W7 Professional 64Bit HP Z440 Intel Xeon CPU E5-1620 v4 32 GB RAM NVIDIA Quadro P4000
|
erstellt am: 27. Jan. 2011 09:34 <-- editieren / zitieren --> Unities abgeben: Nur für Goofy007
Hallo Didi, ich habe mir bisher auch über "Berechnung erstellen" geholfen. Vieleicht hilft es Dir zuerst alle Werte in Texte umzuwandeln und dann mal mit den verschiedenen Textfunktionen bsp Concat() oder Ltrim() die Werte zu vereinheitlichen um sie dann wieder in Zahlen umzuwandeln. mfg Roman Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Goofy007 Mitglied Vermessungstechniker
Beiträge: 578 Registriert: 06.11.2004
|
erstellt am: 27. Jan. 2011 12:01 <-- editieren / zitieren --> Unities abgeben:
|