Stratica11 发表于 2022-7-21 02:23:03

数据提取LISP

我试图创建一个命令,该命令将为三个不同的块及其属性运行三个单独的数据提取命令。基于下面的代码,我已经让它工作了,但这些文件将被复制到不同的文件位置,当我测试时。我让他们创建的CSV文件没有在正确的文件夹中创建。它们应该始终与当前文件显示在同一文件夹中,但实际情况并非如此。。。我不确定我错过了什么。任何帮助都将不胜感激。
 
(defun C:TAGS ( / e ss) ; by name
(setq d "DOOR TAG")
(if (> d "") (setq ss (ssget "_X" (list (cons 2 d)(cons 0 "INSERT")))))
(if (zerop (getvar "CMDACTIVE"))
(progn (sssetfirst ss ss)(princ))
   ss
)

(command "-DATAEXTRACTION" (strcat (getvar 'dwgprefix) "Door Schedule.dxe"))
(if (wcmatch (getvar "cmdnames") "*DATAEXTRACTION*") (command "_Y"))


(setq w "WINDOW TAG")
(if (> w "") (setq ss (ssget "_X" (list (cons 2 w)(cons 0 "INSERT")))))
(if (zerop (getvar "CMDACTIVE"))
(progn (sssetfirst ss ss)(princ))
   ss
)

(command "-DATAEXTRACTION" (strcat (getvar 'dwgprefix) "Window Schedule.dxe"))
(if (wcmatch (getvar "cmdnames") "*DATAEXTRACTION*") (command "_Y"))


(setq c "CABINET TAG")
(if (> c "") (setq ss (ssget "_X" (list (cons 2 c)(cons 0 "INSERT")))))
(if (zerop (getvar "CMDACTIVE"))
(progn (sssetfirst ss ss)(princ))
   ss
)

(command "-DATAEXTRACTION" (strcat (getvar 'dwgprefix) "Cabinet Schedule.dxe"))
(if (wcmatch (getvar "cmdnames") "*DATAEXTRACTION*") (command "_Y"))

)
页: [1]
查看完整版本: 数据提取LISP