| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Schriftfeld mit Auswahl oder If Funktion (3701 mal gelesen)
|
at1337 Mitglied
Beiträge: 23 Registriert: 09.09.2006 Autocad 2009 & LT 2007 / 2010
|
erstellt am: 09. Sep. 2010 12:37 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich komme gleich mal ohne Umwege zu meinem Anliegen. Ich bin gerade am Erstellen eines neuen Schriftfelds, hatte vor es als Block abzulegen. Soweit so gut. Attribute wie Titel, BV usw. sind kein Problem. Das Attribut Datum als Schriftfeld funktioniert allerdings nicht da hier scheinbar das Datum der Zeichnung verwendet wird, in der der Block liegt. Des Weiteren hatte ich vor das der Name des Bearbeiters mittels Schriftfeld Anmeldename aus dem Betriebssystem geholt wird. Das Funktioniert. Dann hätte ich gerne noch 2 Felder zum einen E-Mail, zum anderen Durchwahl auszugeben. Diese Felder müssten eigentlich den Anmeldenamen abfragen und dann aus einer Liste den Entsprechenden Eintrag wählen, wäre wohl mit wenn dann Funktionen möglich. Sollte das unmöglich sein, dachte ich mir wäre eine Art Dropdownliste in der bereits die 8 Durchwahlen und E-Mail hinterlegt sind, eine gute Alternative. Für jede Idee wie soetwas realisierbar ist, bin ich dankbar.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wronzky Ehrenmitglied V.I.P. h.c. CAD-Dienstleistungen für Architekten
Beiträge: 2154 Registriert: 02.05.2005 CAD: AutoCAD 2.6 bis 2014 ADT 2005 bis ACA 2013 Arcibem System: Windows Internet-Startseite: http://www.archi.de
|
erstellt am: 09. Sep. 2010 15:04 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
Hallo Andreas, 1. das Datumsfeld wird unabhängig von der Variablen FIELDEVAL erst mit dem Befehl _UPDATEFIELD aktualisiert. Hast Du das getan? 2. die automatisch Auswahl mit einer wenn-dann Funktion kannst Du mit einem Dieselausdruck durchführen für die e-mail z.B.: Code: $(if,$(eq,$(getvar,loginname),"Tino"),"tino123[ät]voxelman123.de", $(if,$(eq,$(getvar,loginname),"Manfred"),"manfred123[ät]voxelman123.de", $(if,$(eq,$(getvar,loginname),"Henning"),"henning123[ät]voxelman123.de", $(if,$(eq,$(getvar,loginname),"Monika"),"monika123[ät]voxelman123.de", $(if,$(eq,$(getvar,loginname),"Maria"),"maria123[ät]voxelman123.de", "keine email bekannt")))))
Telefonnummer dann analog...Grüsse, Henning ------------------ Henning Jesse VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de [Diese Nachricht wurde von wronzky am 09. Sep. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ingo Struck Mitglied Holztechniker
Beiträge: 459 Registriert: 08.01.2010 Intel Core i7-3770 16 GB RAM AMD FirePro V3900 (FireGL V) Windows 7 Pro SP1 AutoCAD 2017 SP1 - deutsch
|
erstellt am: 09. Sep. 2010 16:13 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
Hallo zusammen, auch ich suche nach einem Weg, Diesel-Funktionen in Schriftfeldern zu nutzen. Wenn ich z.B. den Ausdruck "$M=$(getvar,Anmeldename)" in ein Schriftfeld vom Typ Formel einfüge, müsste doch eigentlich der Anmeldename zurückgegeben werden. Ich weiß, das es für den Anmeldenamen ein extra Schriftfeld gibt. Mir geht es hier nur um die korrekte Anwendung von Diesel-Funktionen in Schriftfeldern. Leider ist mir nicht klar, auf welche Art diese in das Schriftfeld eingefügt werden müssen. mfg, Ingo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wronzky Ehrenmitglied V.I.P. h.c. CAD-Dienstleistungen für Architekten
Beiträge: 2154 Registriert: 02.05.2005 CAD: AutoCAD 2.6 bis 2014 ADT 2005 bis ACA 2013 Arcibem System: Windows Internet-Startseite: http://www.archi.de
|
erstellt am: 09. Sep. 2010 16:30 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
|
at1337 Mitglied
Beiträge: 23 Registriert: 09.09.2006 Autocad 2009 & LT 2007 / 2010
|
erstellt am: 09. Sep. 2010 18:14 <-- editieren / zitieren --> Unities abgeben:
Vielen Dank, was Autocad so alles kann. Hätte aber noch einige Fragen, funktionieren Dieselbefehle auch in Autocad LT? Und wie muss ich die Syntax eröffnen und beenden wenn ich eine If funktion für ein Schriftfeld eingebe, werden mit nur 4 Rauten also #### ausgegeben. Was mache ich falsch was fehlt noch? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
runkelruebe Moderator Straßen- / Tiefbau
Beiträge: 8075 Registriert: 09.03.2006 Kinder, kauft Kämme! Es kommen lausige Zeiten.
|
erstellt am: 09. Sep. 2010 19:14 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
Hi, Ja, DIESEL sollte im LT generell laufen, das macht es ja für die LT'ler so wertvoll. guckst Du Anhang ->> Sollte diese Schriftfeld-Kategorie im LT nicht bereitstehen, versuch diesen Ausdruck Code: %<\AcDiesel $(if,$(eq,$(getvar,loginname),"Tino"),"tino[at]voxelman1.de", $(if,$(eq,$(getvar,loginname),"Manfred"),"manfred[at]voxelman2.de", $(if,$(eq,$(getvar,loginname),"Henning"),"henning3[at]voxelman45.de", "keine email bekannt")))>%
in einem MText einzufügen. Also einfach Befehl MText aufrufen und statt was zu schreiben strg+v -> ein Feld entsteht mit Deinem Ausdruck. Das ### kommt bei mir auch, wenn ich Hennings Ausdruck 1:1 übernehme. Vielleicht Zeichenzahlbeschränkung auf 256 Zeichen ohne die einklammernden "%<\>%"? Wirkliches Wissen ist das jetzt aber nicht, nur testen und aufschreiben ;-) HTH------------------ Gruß, runkelruebe Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße... System-Info | Dateianhänge | FAQ-ACAD | CAD.de-Hilfe | Sei eine Antilope [rredit] mail-adressen auf Wunsch verfremdet[/rredit] [Diese Nachricht wurde von runkelruebe am 09. Sep. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wronzky Ehrenmitglied V.I.P. h.c. CAD-Dienstleistungen für Architekten
Beiträge: 2154 Registriert: 02.05.2005 CAD: AutoCAD 2.6 bis 2014 ADT 2005 bis ACA 2013 Arcibem System: Windows Internet-Startseite: http://www.archi.de
|
erstellt am: 09. Sep. 2010 19:15 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
Hallo Andreas, ... so ist das, wenn man es nicht alles ausprobiert... die Zeichenanzahl in EINEM Dieselausdruck ist auf 256 Zeichen beschränkt. Das soooo lang verschachtelte wenn, dann, wenn nicht dann, wenn nicht, dann... ist mir da zu lang geraten. Du kannst aber einfach einen Test nach dem anderen machen. Einzig "keine E-Mail" geht dann nicht: Code: $(if,$(eq,$(getvar,loginname),"Tino"),"tino123[ät]voxelman123.de") $(if,$(eq,$(getvar,loginname),"Manfred"),"manfred123[ät]voxelman123.de") $(if,$(eq,$(getvar,loginname),"Henning"),"henning123[ät]voxelman123.de") $(if,$(eq,$(getvar,loginname),"Monika"),"monika123[ät]voxelman123.de") $(if,$(eq,$(getvar,loginname),"Maria"),"maria123[ät]voxelman123.de")
sollte so eigentlich auch in LT funktionieren. Grüsse, Henning ------------------ Henning Jesse VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
[Diese Nachricht wurde von wronzky am 09. Sep. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
at1337 Mitglied
Beiträge: 23 Registriert: 09.09.2006 Autocad 2009 & LT 2007 / 2010
|
erstellt am: 09. Sep. 2010 19:30 <-- editieren / zitieren --> Unities abgeben:
|
runkelruebe Moderator Straßen- / Tiefbau
Beiträge: 8075 Registriert: 09.03.2006 Kinder, kauft Kämme! Es kommen lausige Zeiten.
|
erstellt am: 09. Sep. 2010 19:35 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
|
at1337 Mitglied
Beiträge: 23 Registriert: 09.09.2006 Autocad 2009 & LT 2007 / 2010
|
erstellt am: 09. Sep. 2010 19:38 <-- editieren / zitieren --> Unities abgeben:
Hatte ich schon, so ähnlich, mach ich aber nochmal. Habe in der Konsole loginname eingegeben, in Autocad 2009 gibt er mir meinen Namen aus, in LT 2010 sagt er Befehl unbekannt. Ich versuchs jetzt mal über getvar Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
runkelruebe Moderator Straßen- / Tiefbau
Beiträge: 8075 Registriert: 09.03.2006 Kinder, kauft Kämme! Es kommen lausige Zeiten.
|
erstellt am: 09. Sep. 2010 19:41 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
|
wronzky Ehrenmitglied V.I.P. h.c. CAD-Dienstleistungen für Architekten
Beiträge: 2154 Registriert: 02.05.2005 CAD: AutoCAD 2.6 bis 2014 ADT 2005 bis ACA 2013 Arcibem System: Windows Internet-Startseite: http://www.archi.de
|
erstellt am: 09. Sep. 2010 19:54 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
|
at1337 Mitglied
Beiträge: 23 Registriert: 09.09.2006 Autocad 2009 & LT 2007 / 2010
|
erstellt am: 09. Sep. 2010 19:59 <-- editieren / zitieren --> Unities abgeben:
Auf den Befehl $(getvar,loginname) erhalte ich als ausgabe $(getvar,??) Wenn ich unter Schriftfeld, suche gibt es dort auch keine Variable die loginname heißt. Sind die Variablen in einer Anpassungsdatei definiert, denn diese Version von AutoCAD LT wurde, denke ich, seit Version 95 immer wieder geupdated. Vielleicht wurde irgendetwas Überschrieben. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
at1337 Mitglied
Beiträge: 23 Registriert: 09.09.2006 Autocad 2009 & LT 2007 / 2010
|
erstellt am: 09. Sep. 2010 20:05 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von wronzky: ... und wenn's doch nicht geht, sollte [b]$(getenv,username) gehen.Grüsse, Henning [/B]
Astrein, etz läfds, [Jetzt läuft es] wie man in Franken sagt, scheinbar kennt diese Autocad loginname nicht. Vielen Dank und höchste Zeit für den Feierabend Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ingo Struck Mitglied Holztechniker
Beiträge: 459 Registriert: 08.01.2010 Intel Core i7-3770 16 GB RAM AMD FirePro V3900 (FireGL V) Windows 7 Pro SP1 AutoCAD 2017 SP1 - deutsch
|
erstellt am: 10. Sep. 2010 07:57 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
Hallo zusammen, Bei meinem AutoCAD (2009 LT) sind die oben geschilderten Ergebnisse die gleichen. Auch bei mir gibt es die Variablen "loginname" oder "Anmeldename" nicht. Die Variable "username" funktioniert dagegen schon. Es gibt somit zunächst einmal zwei Möglichkeiten, Variablen auszugeben. Schriftfeldkategorie > "andere", Schriftfeldname > "Diesel-Ausdruck" ("%<\AcDiesel $(getvar,username)>%"), oder Schriftfeldkategorie > "andere", Schriftfeldname > "Systemvariable" ("%<\AcVar username>%") Auf diese Weise funktionieren allerdings scheinbar nur die in der Liste unter der Option "Systemvariable" gelisteten Variablen. Die Variable "username" gibt übrigens nicht den Anmeldenamen von Windows zurück, sondern den unter "Extras>Optionen>System>Benutzername" eingetragenen Namen. Danke an wronzky für den Wink mit dem Zaunpfahl und Danke an alle für die weitergehenden Hinweise! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
at1337 Mitglied
Beiträge: 23 Registriert: 09.09.2006 Autocad 2009 & LT 2007 / 2010
|
erstellt am: 10. Sep. 2010 08:48 <-- editieren / zitieren --> Unities abgeben:
Kann es sein das AutoCAD LT 2010 weniger Zeichen in einem Dieselbefehl verarbeitet als die "Vollversion" In 2009 läuft alles Prima, sobald ich die Datei in LT öffne aktualisiert sich das Feld nicht, und wenn man es per Befehl dazu zwingt, gibt er wieder #### aus. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ingo Struck Mitglied Holztechniker
Beiträge: 459 Registriert: 08.01.2010 Intel Core i7-3770 16 GB RAM AMD FirePro V3900 (FireGL V) Windows 7 Pro SP1 AutoCAD 2017 SP1 - deutsch
|
erstellt am: 10. Sep. 2010 09:12 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
|
at1337 Mitglied
Beiträge: 23 Registriert: 09.09.2006 Autocad 2009 & LT 2007 / 2010
|
erstellt am: 10. Sep. 2010 09:41 <-- editieren / zitieren --> Unities abgeben:
$(if,$(eq,$(getenv, username),a….),"9219769",$(if,$(eq,$(getenv, username),f…..),"7676",$(if,$(eq,$(getenv, username),e…..),"9287850",$(if,$(eq,$(getenv, username),c….),"9287863",$(if,$(eq,$(getenv, username),cb….),"9287863","7676"))))) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wronzky Ehrenmitglied V.I.P. h.c. CAD-Dienstleistungen für Architekten
Beiträge: 2154 Registriert: 02.05.2005 CAD: AutoCAD 2.6 bis 2014 ADT 2005 bis ACA 2013 Arcibem System: Windows Internet-Startseite: http://www.archi.de
|
erstellt am: 10. Sep. 2010 09:45 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
Hallo Andreas, bitte beachte meine 2. Variante. So sollte es laufen: $(if,$(eq,$(getenv, username),a….),"9219769") $(if,$(eq,$(getenv, username),f…..),"7676") $(if,$(eq,$(getenv, username),e…..),"9287850") $(if,$(eq,$(getenv, username),c….),"9287863") $(if,$(eq,$(getenv, username),cb….),"9287863") (Bitte alles dann in EINE Zeile, nur zur Lesbarkeit aufgeteilt) Grüsse, Henning ------------------ zur Abstimmung Henning Jesse VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de [Diese Nachricht wurde von wronzky am 10. Sep. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ingo Struck Mitglied Holztechniker
Beiträge: 459 Registriert: 08.01.2010 Intel Core i7-3770 16 GB RAM AMD FirePro V3900 (FireGL V) Windows 7 Pro SP1 AutoCAD 2017 SP1 - deutsch
|
erstellt am: 10. Sep. 2010 11:44 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
Hallo zusammen, Beide Varianten habe ich in meinem 2009er LT getestet und sind so (1:1) nicht lauffähig. Variante wronzky: läuft bei mir, wenn der Befehl "getenv" durch "getvar" ersetzt wird. Variante at1337: läuft bei mir, wenn ebenfalls der Befehl "getenv" durch "getvar" ersetzt wird und an allen Stellen vor der Variablen "username" das Leerzeichen entfernt wird. Der Code hat 219 Zeichen und sieht dann so aus: <$(if,$(eq,$(getvar,username),a),"9219769",$(if,$(eq,$(getvar,username),f),"7676",$(if,$(eq,$(getvar,username),e),"9287850",$(if,$(eq,$(getvar,username),c),"9287863",$(if,$(eq,$ (getvar,username),cb),"9287863","7676")))))> mfg, Ingo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
at1337 Mitglied
Beiträge: 23 Registriert: 09.09.2006 Autocad 2009 & LT 2007 / 2010
|
erstellt am: 10. Sep. 2010 12:15 <-- editieren / zitieren --> Unities abgeben:
|
runkelruebe Moderator Straßen- / Tiefbau
Beiträge: 8075 Registriert: 09.03.2006 Kinder, kauft Kämme! Es kommen lausige Zeiten.
|
erstellt am: 10. Sep. 2010 12:21 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
|
Ingo Struck Mitglied Holztechniker
Beiträge: 459 Registriert: 08.01.2010 Intel Core i7-3770 16 GB RAM AMD FirePro V3900 (FireGL V) Windows 7 Pro SP1 AutoCAD 2017 SP1 - deutsch
|
erstellt am: 10. Sep. 2010 13:18 <-- editieren / zitieren --> Unities abgeben: Nur für at1337
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|