Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Zeichnungskopf-Attribute auslesen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Zeichnungskopf-Attribute auslesen (2754 mal gelesen)
gepiu
Mitglied
Konstrukteur


Sehen Sie sich das Profil von gepiu an!   Senden Sie eine Private Message an gepiu  Schreiben Sie einen Gästebucheintrag für gepiu

Beiträge: 29
Registriert: 10.07.2004

erstellt am: 10. Jul. 2004 00:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen
mein Problem ist ich sollte von ca. über 3'000 Zeichnungen die Zeichnungsnamen usw. auslesen, und in eine Access Zeichverwaltung übertragen. Der Zeichnungskopf ist eine einfacher Block mit Attributen.
Wir arbeiten mit AutoCAD 2002 pur
Gibt es eine lösung diese Daten in eine txt Datei auszulesen ?
Bin für jeden Tip echt dankbar

Pius


[Diese Nachricht wurde von gepiu am 10. Jul. 2004 editiert.]

[Diese Nachricht wurde von gepiu am 10. Jul. 2004 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mapcar
Mitglied
CADmin



Sehen Sie sich das Profil von mapcar an!   Senden Sie eine Private Message an mapcar  Schreiben Sie einen Gästebucheintrag für mapcar

Beiträge: 1250
Registriert: 20.05.2002

Time flies like an arrow, fruit flies like a banana (Groucho Marx)

erstellt am: 10. Jul. 2004 01:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für gepiu 10 Unities + Antwort hilfreich

Hi Pius,

deine Angaben sind ein bisschen unpräzise. Was spricht gegen die üblichen Windows/Acad-Bordmittel?

Wenn die Zeichnungsnamen mit den Dateinamen identisch sind, hilft schon ein 'dir /b > liste.txt'. Wenn das nicht der Fall ist, kannst du aber damit eine Liste von Dateinamen erstellen, die du dann mit einem Script aufrufst und worin du dann Befehle wie 'attext' oder 'eattext' verwendest.

Das Ganze steht und fällt wohl mit ein paar DOS-Kenntnissen und einem Texteditor, der ein bisschen Suchen&Ersetzen beherrscht.

Gruß, Axel

------------------

Meine AutoLisp-Seiten
Meine private Homepage
Mein Angriff auf dein Zwerchfell
Mein Lexikon der Fotografie
Mein gereimtes Gesülze

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

WALTJENS
Mitglied
Malen nach Zahlen auf hochtechnisch


Sehen Sie sich das Profil von WALTJENS an!   Senden Sie eine Private Message an WALTJENS  Schreiben Sie einen Gästebucheintrag für WALTJENS

Beiträge: 633
Registriert: 06.07.2004

erstellt am: 12. Jul. 2004 17:15    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für gepiu 10 Unities + Antwort hilfreich

Bin mit einer ähnlichen Belastungsprobe konfrontiert.
Muss bei einem Zeichnungsarchiv (ca. 4000 dwg's) einen als Bllock eingefügten Text austauschen und eventuelle Veralterungen an Rahmen und Schriftkopf aktualisieren.
Das bedeutet zu 99% die selben 20 Handgriffe.
Sollte sich doch automatisieren lassen.

Ich hoffe ich muss nicht (wie oben angeschnitten) programmieren auch noch lernen.

Hat irgenwer noch Lösungsansätze?

danke im Vorraus..

WALTJENS

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 12. Jul. 2004 18:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für gepiu 10 Unities + Antwort hilfreich

Hier mal ein Ansatz ... vielleicht hilfts weiter

------------------
- Thomas -

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

gepiu
Mitglied
Konstrukteur


Sehen Sie sich das Profil von gepiu an!   Senden Sie eine Private Message an gepiu  Schreiben Sie einen Gästebucheintrag für gepiu

Beiträge: 29
Registriert: 10.07.2004

erstellt am: 12. Jul. 2004 21:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi Axel

Zuerst vielen Dank für Deine promte Antwort, ich bin da leider nicht gleich so schnell.

Zu meinen Angaben, mein Dateiname ist eine fortlaufende Nummer welche dann in der Zeichnung aus einer Vornummer die Zeich.Nr. ergibt. (81.42589)
Eine Liste der Dateien, die ausgelesen werden müssen, kann ich aus meiner Access Dateiverwaltung filtern lassen, das sollte kein Problem sein.
DOS ist gut und beherrsche ich auch ein bisschen, kleinere Batch-Files habe ich schon des öfteren gebraucht. Nix komplexes.
Aber wie starte ich auf der DOS Ebene ein Script das dann eine Zeichnung öffnet, den Block "Plankopf" öffnet und mir die Attribute "Zeich-Nr. Zeich-Name + Zeich-Gruppe" in eine txt Datei auslist.

Gruss Pius

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mapcar
Mitglied
CADmin



Sehen Sie sich das Profil von mapcar an!   Senden Sie eine Private Message an mapcar  Schreiben Sie einen Gästebucheintrag für mapcar

Beiträge: 1250
Registriert: 20.05.2002

Time flies like an arrow, fruit flies like a banana (Groucho Marx)

erstellt am: 12. Jul. 2004 21:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für gepiu 10 Unities + Antwort hilfreich

Genau andersrum:

Aus der Batchdatei AutoCAD starten, mit Angabe der Zeichnung und des Sktipts:

c:\programme\..\acad.exe irgendeine.dwg /b mein-script.scr (nagel mich jetzt nicht fest, aber ich glaube, es ist "/b" für das Skript)

Don't panic, wenn sich AutoCAD erstmal im Cache eingenistet hat, dauert der Start nur noch eine Sekunde. Funktioniert wunderbar, und man kann aus dem Skript heraus auch noch problemlos Lisp aufrufen. Mein Rekord liegt bei ca. 10000 Zeichnungen, lief ca. 4 Tage durch (war allerdings ein sehr kompliziertes Programm, was lief).

Und der Kommentar von der GL: "Wir wollen nicht, dass Angestellte Kaffee trinkend vor ihren Rechnern sitzen und alles wie von Geisterhand erledigt wird. Wir wollen den Fleiß der Angestellten von ihrem Schweiß ablesen können!"

Gruß, Axel

------------------

Meine AutoLisp-Seiten
Meine private Homepage
Mein Angriff auf dein Zwerchfell
Mein Lexikon der Fotografie
Mein gereimtes Gesülze

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

gepiu
Mitglied
Konstrukteur


Sehen Sie sich das Profil von gepiu an!   Senden Sie eine Private Message an gepiu  Schreiben Sie einen Gästebucheintrag für gepiu

Beiträge: 29
Registriert: 10.07.2004

erstellt am: 12. Jul. 2004 22:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Thx Axel
werde mal versuchen ob ich das kind schaukeln kann,
ich melde mich dann sicher mit weiteren problemen.

Pius

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

gepiu
Mitglied
Konstrukteur


Sehen Sie sich das Profil von gepiu an!   Senden Sie eine Private Message an gepiu  Schreiben Sie einen Gästebucheintrag für gepiu

Beiträge: 29
Registriert: 10.07.2004

CPU: Core i7
Ram: 32 GB
OS: Win10 pro 64bit
Prog: Adesk Design Suite 2014

erstellt am: 13. Jul. 2004 12:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


44394.txt

 
Hi Axel
ich komme da einfach nicht weiter, ich habe in der eingabe aufforderung mit diesen befehlen geprobt. ich kam aber nur mit dem "-eattext" ein bisschen weiter.
als anhang habe ich eine bsp.datei als txt benannt, wenn du evtl. ein wenig mitleid hast und diese datei checken möchtest ....
später muss ich noch herausfinden wie ich die einzelnen dateien zusammenfüge, aber eins nach dem anderen.

Gruss Pius

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

gepiu
Mitglied
Konstrukteur


Sehen Sie sich das Profil von gepiu an!   Senden Sie eine Private Message an gepiu  Schreiben Sie einen Gästebucheintrag für gepiu

Beiträge: 29
Registriert: 10.07.2004

erstellt am: 13. Jul. 2004 13:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Nochmal ich
ich habe ein script geschrieben
********
-eattext

n
n
c:/_Work/script/eattext.blk
t
c:/_Work/script/'dwgname'.txt
********
wie übergebe ich in einem script die sysvariable 'dwgname' als ausgabedateiname ???

weis jemand hilfe

Pius

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mapcar
Mitglied
CADmin



Sehen Sie sich das Profil von mapcar an!   Senden Sie eine Private Message an mapcar  Schreiben Sie einen Gästebucheintrag für mapcar

Beiträge: 1250
Registriert: 20.05.2002

Time flies like an arrow, fruit flies like a banana (Groucho Marx)

erstellt am: 13. Jul. 2004 14:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für gepiu 10 Unities + Antwort hilfreich

Das Skript muss eine Lisp-Funktion aufrufen, da du nur in Lisp
a) den Zeichnungskopf wählen kannst und
b) einen Dateinamen für die Ausgabe zusammenbasteln kannst
(genau das, was du angesprochen hast, das geht nicht im Script)

Datei "auslesen.scr":

Code:

(load"auslesen")
(auslesen)
(command"_quit""_yes")

Die Lisp-Funktion ist auch sehr einfach:

Datei "auslesen.lsp":

Code:

(defun auslesen( / )
  (command"-eattext""_o"
    (ssget"X"'((0 . "INSERT")(2 . "_me-Plankopf")))
    "" "_n" "_n" "_n" "_csv"
    (strcat
      (getvar"dwgprefix")
      (substr(getvar"dwgname")1(-(strlen(getvar"dwgname"))4))
      ".csv"
    )
  )
)

Zum Schluss brauchst du eine Batchdatei:
Datei "auslesen.cmd":

Code:

c:\programme\autocad\acad.exe 11111.dwg /b auslesen.scr
c:\programme\autocad\acad.exe 11112.dwg /b auslesen.scr
c:\programme\autocad\acad.exe 11113.dwg /b auslesen.scr
....
c:\programme\autocad\acad.exe 99999.dwg /b auslesen.scr

Das ist erstmal der primitivste Ansatz. Hat den Nachteil, dass er jede Zeichnung in eine einzelne CSV-datei schreibt. Das Lässt sich bei Eattext wohl auch nicht vermeiden:-( Ich würde die Lisp-Routine dahingehend erweitern, dass sie die rausgeschriebene CSV wieder einliest, löscht und den Inhalt (nur die zweite Zeile) mit (open filename "a") und (write-line) in eine zentrale Datei schreibt.

Ich würde, auch wenn's nach Access soll, nicht '.mdb' als Ausgabe wählen. Damit nimmst du dir genau diese Möglichkeit, alles in eine Datei zu schreiben. CSV kannst du problemlos importieren.

Ach so, Vorsicht! Alles nicht getestet!

Gruß, Axel Strube-Zettler

------------------

Meine AutoLisp-Seiten
Meine private Homepage
Mein Angriff auf dein Zwerchfell
Mein Lexikon der Fotografie
Mein gereimtes Gesülze

[Diese Nachricht wurde von mapcar am 13. Jul. 2004 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

gepiu
Mitglied
Konstrukteur


Sehen Sie sich das Profil von gepiu an!   Senden Sie eine Private Message an gepiu  Schreiben Sie einen Gästebucheintrag für gepiu

Beiträge: 29
Registriert: 10.07.2004

erstellt am: 14. Jul. 2004 10:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi Axel
muchas gracias, ist echt toll deine hilfe
mit dem -eattext funktioniert es nicht so ganz aber mit -attext ein bisschen besser. werde weiter testen.
im moment am bearbeiten meiner dateiliste (es sind 8623 DWG Dateien und 4946 leereinträge in meiner DB diese muss ich nun abgleichen.
dazu brauche ich meine zeit, ich melde mich später wieder wie die ganze sache läuft.

mit meiner GL ist es übrigens gleich, das heisst alles während der freizeit oder am rande

Gruss
Pius

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

gepiu
Mitglied
Konstrukteur


Sehen Sie sich das Profil von gepiu an!   Senden Sie eine Private Message an gepiu  Schreiben Sie einen Gästebucheintrag für gepiu

Beiträge: 29
Registriert: 10.07.2004

CPU: Core i7
Ram: 32 GB
OS: Win10 pro 64bit
Prog: Adesk Design Suite 2014

erstellt am: 17. Jul. 2004 12:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi Axel
nachdem ich die ganzen listen durchgearbeitet habe, hatte ich noch 3100 Dateien zum auslesen.
nach einigen anpassungen an deinen vorgaben konnte ich von 1800 den Plankopf auslesen,
(die anderen hatten noch keinen Plankopf mit Attributen).
diese dann der DB hinzufügen war das leichteste. der compi arbeitet ca. 12Std.
programme erstellen fällt mir unheimlich schwer aber änderung oder anpassungen anbringen ist eher mein ding.

muchas gracias für deine tolle und echt kompetente hilfe
Pius

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz