| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: automatische attribute wie username/datum (1846 mal gelesen)
|
ee gabriel Mitglied konstrukteur
Beiträge: 328 Registriert: 30.10.2000
|
erstellt am: 15. Mrz. 2001 18:16 <-- editieren / zitieren --> Unities abgeben:
halli hallo, ich habe mir einen schriftkopf gemacht bei dem es mich die ganzen sachen wie datum, name, zeichnungsnummer, zeichnungsindex usw. abfragt; nun wäre es doch schön wenn er sachen wie name und datum von selber einträgt, ich habe das beim mechanical desktop power pack gesehen, wie kann mann das machen ?? gruss ee gabriel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Wilfried Nelkel Mitglied glaubt mir eh keiner
Beiträge: 804 Registriert: 15.03.2001 AutoCAD/ADT/ACA 2002 - 2023, Hardware: HP Z620 Workstation, 2 x Xeon E5-2690 v2@3.00GHz, 96 GB RAM, NVIDIA Quadro RTX 4000, Windows 10-64bit ..... ATC-Trainer
|
erstellt am: 15. Mrz. 2001 23:43 <-- editieren / zitieren --> Unities abgeben: Nur für ee gabriel
|
CADwiesel Moderator CAD4FM UG
Beiträge: 1973 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 16. Mrz. 2001 07:55 <-- editieren / zitieren --> Unities abgeben: Nur für ee gabriel
|
ee gabriel Mitglied konstrukteur
Beiträge: 328 Registriert: 30.10.2000
|
erstellt am: 16. Mrz. 2001 08:16 <-- editieren / zitieren --> Unities abgeben:
|
CADwiesel Moderator CAD4FM UG
Beiträge: 1973 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 16. Mrz. 2001 09:12 <-- editieren / zitieren --> Unities abgeben: Nur für ee gabriel
entweder über einen aufruf eines Lispprogramms, das dann den Block durchscannen muß, bis das richtige Attribut gefunden ist und es ersetzt, oder durch einen Reaktor, der das Gleiche macht, nur muß der nicht extra angestoßen werden. ------------------ Gruß CADwiesel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ee gabriel Mitglied konstrukteur
Beiträge: 328 Registriert: 30.10.2000
|
erstellt am: 16. Mrz. 2001 10:47 <-- editieren / zitieren --> Unities abgeben:
|
CADwiesel Moderator CAD4FM UG
Beiträge: 1973 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 16. Mrz. 2001 12:37 <-- editieren / zitieren --> Unities abgeben: Nur für ee gabriel
Hi Ich hab dir mal den code eingepackt, der einen Stempel bei uns Aktualisiert. Wenn Du das nicht verstehst, schick mir 'ne Mail. Das mit den Reaktoren ist etwas schwieriger, aber auch nicht so. Der Vorteil von Reaktoren ist einfach der, daß sie auf bestimmte Acadbefehle ansprechen und dann eine vordefinierte Arbeit ausführen. Sie sind leider nur dürftig dokumentiert, ich hab auch nur ein paar blätter doku-aber für die einfachen sachen reicht's. Übrigens solltest Du in Visual Lisp (editor) entwickeln, da kann mann super debuggen. ;;;*********************Systemzeit auslesen******************************* (defun parse_time ( / ) (setq USERLOG (getvar "Loginname")) (setq date_str (rtos (getvar "cdate") 2 4) year (substr date_str 1 4) month (substr date_str 5 2) day (substr date_str 7 2) hour (substr date_str 10 2) minu (substr date_str 12 2) date (strcat day "." month "." year " / " Userid) );ende setq );ende defun ;;;*****************Stempel ändern*************************************** (defun c:stemp ( / d tt te) (setvar "cmdecho" 0) (parse_time) (setq md_zaehler 0) (if (setq tt (ssget "x" '((0 . "INSERT")(2 . "legende")))) (progn (while (> (sslength tt) md_zaehler) (setq te (entget (ssname tt md_zaehler))) (setq aslstblk (entget (entnext (cdr (assoc -1 te))))) (while (/= (cdr (assoc 0 aslstblk)) "SEQEND") (setq md_text (cdr (assoc 2 aslstblk))) (cond ((= md_text "ÄNDERUNG1") (setq ename1 aslstblk) (setq md_fill1 (cdr (assoc 1 aslstblk))) ) ((= md_text "ÄNDERUNG2") (setq ename2 aslstblk) (setq md_fill2 (cdr (assoc 1 aslstblk))) ) ((= md_text "ÄNDERUNG3") (setq ename3 aslstblk) (setq md_fill3 (cdr (assoc 1 aslstblk))) ) );ende cond (setq aslstblk (entget (entnext (cdr (assoc -1 aslstblk))))) );ende while (if (/= md_fill3 date) (progn (entmod (subst (cons 1 md_fill2)(assoc 1 ename1) ename1)) (entmod (subst (cons 1 md_fill3)(assoc 1 ename2) ename2)) (entmod (subst (cons 1 date)(assoc 1 ename3) ename3)) );ende progn );ende if (setq md_zaehler (1+ md_zaehler)) );ende while );ende progn );ende if );ende defun ------------------ Gruß CADwiesel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4185 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 17. Mai. 2001 11:16 <-- editieren / zitieren --> Unities abgeben: Nur für ee gabriel
|
nahe Ehrenmitglied
Beiträge: 1738 Registriert: 18.01.2001
|
erstellt am: 18. Mai. 2001 09:17 <-- editieren / zitieren --> Unities abgeben: Nur für ee gabriel
|
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3331 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 18. Mai. 2001 12:19 <-- editieren / zitieren --> Unities abgeben: Nur für ee gabriel
|
nahe Ehrenmitglied
Beiträge: 1738 Registriert: 18.01.2001
|
erstellt am: 23. Mai. 2001 08:18 <-- editieren / zitieren --> Unities abgeben: Nur für ee gabriel
|
CADwiesel Moderator CAD4FM UG
Beiträge: 1973 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 23. Mai. 2001 13:02 <-- editieren / zitieren --> Unities abgeben: Nur für ee gabriel
Hi Hast es denn mal ausprobiert? Mußt natürlich einen Block einfügen, der die drei Attribute enthält. Oder das Prg umschreiben Wenn Du willst kann ich Dir allerdings auch den Block, den ich benutze zur Verfügung stellen. ------------------ Gruß CADwiesel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |