Hallo Cadwiesel,
vieleicht ist es so verständlicher.
Der Ablauf der Programme sieht folgendermassen aus :
Wir mußten aus Zeitgründen ein Programm (Lisp) in 2 Schritte aufteilen, die wie folgend aussehen :
1.Schritt : Geometrie erzeugen
ein Lispprogramm erstellt eine Konsole (01,02, ... XX) in einem 3-D Modell aufgrund verschiedener Parameter
und erzeugt folgende Dateien (vereinfacht dargestellt V.. für Verzeichnis: U.. für Unterverzeichnis)
für Konsole 01 :
p:\V01\U01\U02\K01\Cfg\script_01.scr
p:\V01\U01\U02\K01\Cfg\Lisp_01.lsp
p:\V01\U01\U02\K01\Cfg\weitere_dateien_01.*
für Konsole 02 :
p:\V01\U01\U02\K02\Cfg\script_02.scr
p:\V01\U01\U02\K02\Cfg\Lisp_02.lsp
p:\V01\U01\U02\K02\Cfg\weitere_dateien_02.*
für Konsole xx : (beliebige weitere Nummer)
p:\V01\U01\U02\KXX\Cfg\script_xx.scr
p:\V01\U01\U02\KXX\Cfg\Lisp_xx.lsp
p:\V01\U01\U02\KXX\Cfg\weitere_dateien_XX.*
usw. (wobei sich die Namen der Unterverzeichnisse U01,U02 usw. nach gewissen Regeln auch ändern, dies sellt jedoch nicht das Problem dar)
Script_01.scr enthält folgende Daten :
cmddia
0
_open
"P: \V01\U01\U02\Outer Bracket.dwt"
(load "p:\V01\U01\U02\K01\Cfg\Lisp_01.lsp")
In Script_02.scr stehen folgende Daten :
cmddia
0
_open
"P: \V01\U01\U02\Outer Bracket.dwt"
(load "p:\V01\U01\U02\K02\Cfg\Lisp_02.lsp")
in Script_XX.scr nachfolgende Daten :
cmddia
0
_open
"P: \V01\U01\U02\Outer Bracket.dwt"
(load "p:\V01\U01\U02\KXX\Cfg\Lisp_XX.lsp")
Das Programm Lisp_01.lsp,Lisp_02.lsp bzw. Lisp_XX.lsp sehen in Ihrer Grundstruktur folgendermassen aus
(die fortlaufende Nummer 01,02 bzw. XX wird als YY dargestellt ; die Konsolen-daten sind jedesmal anders) :
(defun YY (/) ;
(setq Konsolen-daten-YY_01 var01
Konsolen-daten-YY_02 var02
.
.
.
Konsollen-daten-YY_etc varetc
) ; Definitionen der Konsolengeometrie wie punkte, längen, texte etc. für jede Konsole anders !!!!
(load "allgemeine_funktionen.lsp") ; immerwiederkehrende Unterprogramme laden
(load "Werk.lsp") ; das programm, das die werkpläne "zeichnet", laden
(werk) ; das Programm werk aufrufen
) ; End defun
(yy) ; startet programm yy
Das Programm "werk" erstellt nun eine DWG mit dem namen "YY.dwg" im Verzeichnis
p:\V01\U01\U02\KYY\YY.dwg
plottet diese in das verzeichnis
p:\V01\U01\U02\KYY\Plot\YY.plt
und schließt die Zeichnung "yy.dwg"
2.Schritt:
Wenn ich nun eines dieser Scripte (einzeln) in einer Autocad-Sitzung aufrufe und ablaufen lasse, funktioniert auch alles bestens.
Mein Problem ist es aber, die Dateien script_01.scr, script_02.scr, script_XX.scr etc. über ein Programm so zusammenzufassen,
das diese Scripte (alle gewählten) automatisch nacheinender gestartet und (unbeaufsichtigt) abgearbeitet werden sollen.
Gibt es dafür eine Lösung bzw. wie müßte eine Modifikation der Scriptdateien bzw. Lispdateien aussehen ?
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP