Zum Inhalt springen

Text aus Plankopf für Batch-Dateiname abkürzen lassen


cdier

Empfohlene Beiträge

Hallo,

 

ich würde gerne wenn das möglich ist beim Publizieren einzelnen Text für den Batch-Dateinamen welche als Abfrage von den Plandaten übernommen werden für den Export kürzen.

Bsp: Plandaten.Inhalt = Grundriss    ->   {Plandaten.Inhalt} =GR  (statt Grundriss)

Leider habe ich dazu noch nirgends was gefunden.

 

Mit freundlichen Grüßen

Vectorworks Architektur 2024 SP5 // NVIDIA Quadro P5000 // i7-8700K CPU@3,7GHz // 32.0 GB x64 // Windows 10 Pro

 

Link zu diesem Kommentar

Hallo Cdier,

 

ich mache das immer so, dass ich die Layoutnummer als Plannummerierung nutze.

Da ich als Freianlagenplaner die Landschaftsarchitektur bearbeite, nutze ich das Kürzel LA, als Architekt kannst du auch AC wählen.

Die im Bild dargestellten Texte Sparte etc. legst du im Plankopflayout als Textfelder an, darunter dann das Textfeld verknüpfen mit der Layoutnummer und ein extra Textfeld für den Index verknüpfen.

Ausserdem den Layoutnamen als Plannamen verknüpfen.

 

Wenn ich meine Pläne publiziere, dann gebe ich in den Einstellungen an, dass zuerst die Layoutnummer, dann Leerzeichen, Strich, Leerzeichen und dann der Index und dann wieder Leerzeichen, Strich, Leerzeichen und dann der Layoutname exportiert wird.

 

Dann finde ich jeden Plan im Planexport unter der Layoutnummer und kann im Plan dann den Namen auch sehen.

 

Das einzige Problem hierbei ist, dass dann die DWG Dateinamen für den Rechner zu lang sind und kein DWG Export funktioniert, ausser bei Servern, da die Pfadlänge nicht auf 256 Zeichen beschränkt ist.

 

Solltest du noch Fragen haben, kurz schreiben!

Plannummer.PNG

Green Management - Ingenieurbüro für Landschaftsbau

Dirk Schulz

VW 2021 - Designer mit Renderworks

- Win 10 PRO

- Intel I7 10700K

- Nvidia GTX 2070

- 32,0 GB RAM

Link zu diesem Kommentar

@Evergreen Vielen Dank für Ihre Antwort,

jedoch hilft mir das nicht weiter, da ich bewusst die verknüpften Datenfelder im Plankopf in Ihrem Langtext erhalten will, aber ebene bei der automatischen Beschriftung der auszugebenen Dateien diese abkürzen möchte.

 

Das zusammensetzen des Batch-Dateinamens mit dem intelligenten Plankopf ist kein Problem.

Bearbeitet von cdier

Vectorworks Architektur 2024 SP5 // NVIDIA Quadro P5000 // i7-8700K CPU@3,7GHz // 32.0 GB x64 // Windows 10 Pro

 

Link zu diesem Kommentar

Hallo cdier

 

Ich habe im Plankopf zwei Felder, Name und Kurzname. Der Name ist mit dem Layoutnamen verknüpft und den Kurznamen verwende ich für die Publikation. Das gleiche mache ich für das Datum, da ich im Plankopf das Format TT.MM.JJJJ und in den Dateien JJJJMMTT verwende.

 

Das Problem ist, dass ich die Daten immer zweimal ändern muss, aber mit einer Tabelle geht  man das schnell. Mit einem Script könnte man das automatisieren, habe ich das aber nicht gemacht.

 

Gruss

  • Like 1
Link zu diesem Kommentar

Vielen Dank für diene Antwort

das manuelle wäre natürlich eine Lösung, jedoch erscheint mir die Aufgabe als lösbar und ich will so viel wie möglich als automatisation laufen lassen.

An einem Script oder auch Marionette bin ich bisher gescheitert.

Das zuweisen über die Tabelle mit IF Formel und ersetzen ging, jedoch wusste ich nicht wie ich den Wert zurück in den Datenbankeintrag des Plankopfes bekommen soll um ihn für den Batchnamen auszulesen.

Vectorworks Architektur 2024 SP5 // NVIDIA Quadro P5000 // i7-8700K CPU@3,7GHz // 32.0 GB x64 // Windows 10 Pro

 

Link zu diesem Kommentar

Direkt geht es leider nicht. Mit einem RunScript in der Tabelle habe ich es aber hingekriegt. 

Das Script nimmt die ersten 3 Buchstaben und schreibt diese gross in ein Plandatenfeld das ich neu angelegt habe. Du kannst das natürlich auch umbennen und wie du den Kurznamen formatiert haben willst kannst du auch direkt im Script anpassen mit Python. 

 

Plandaten Verwalten -> Neues Feld anlegen, dieses Feld kannst du dann publizieren.

image.thumb.png.a8a51e9956c712a94a54b21275ca1c72.pngimage.thumb.png.296713a7a92af9be7e6b724ed1fc7ee5.png

Das ist der Code den du in ein Script packen musst und als Runscript in der Tabelle laufenlassen musst. 

Leider musst du die Tabelle 2x aktualisieren bis alles aktualisiert ist und danach auch die Intelligenten Objekte aktualisieren  lassen das der Name im Plankopf auftaucht. Kann man sicher noch optimieren. Eventuell kann man den Code auch als RunScript direkt im Datenmanager laufen lassen, habe ich noch nicht probiert.

plankopf = vs.WSScript_GetObject()

record = 'Title Block Sheet Data'
fieldname = 'Sheet Title'
fieldnew = 'Kurzname'
anzBuchstaben = 3

field = vs.GetRField(plankopf, record, fieldname)[:anzBuchstaben]
field = field.upper()

vs.SetRField(plankopf, record, fieldnew, field)

vs.WSScript_SetResStr(field)

 

Hier ein File zum testen:Planname.vwx

 

  • Like 5

VWX24 SP4.1 | Architektur | MacOS 13.5 | M2 Max

Link zu diesem Kommentar

Danke für deine Antwort.

Funktioniert bei mir sehr gut, das mit dem Aktualisieren ist vertretbar, wenn dafür die Benennung stimmt.

Ziel ist für mich nicht nur die Vereinfachung von Abläufen, sondern vorallem das Ausschließen von möglichen Fehlerquellen.

Vectorworks Architektur 2024 SP5 // NVIDIA Quadro P5000 // i7-8700K CPU@3,7GHz // 32.0 GB x64 // Windows 10 Pro

 

Link zu diesem Kommentar

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 erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden
  • Forenstatistik

    • Themen insgesamt
      23,6Tsd
    • Beiträge insgesamt
      121,5Tsd
×
×
  • Neu erstellen...