Lisp Routine for Batch Publishing (Archibus Highlight by Owner)

Lisp Routine for Batch Publishing (Archibus Highlight by Owner)

Philip.OnochieYJNQ6
Participant Participant
711 Views
1 Reply
Message 1 of 2

Lisp Routine for Batch Publishing (Archibus Highlight by Owner)

Philip.OnochieYJNQ6
Participant
Participant

Hello,

 

I am trying to create a lisp routine to publish pdfs to my network drive. The routine works in AutoCAD via Archibus Overlay (Smart Client add on) would open up a set of drawings, run a query command to hatch polylines per program parameters(see below) and then print to folder and repeat. 

 

My goal is to be able to run Archibus' internal highlight command on 22 drawings which will be added to a list. Opening each drawing to do this is time consuming. The Publish command in AutoCAD does not work with Archibus's highlight tool. At presnet, I have to open each drawing, perform the Archibus highlight command, then save to my drive. Automating this on any level will be helpful. 

 

Below is the sequence of commands from the Archibus website to provide more info:

 

Syntax

(AfmHighltQueryByOwner)

 

FYI:

This function performs the actual by-owner query and adds the solid and hatch entities to the drawing.

 

Example:

 

The following example highlights rooms by department:

This code allows for color hatching of a floor plan per polyline boundaries which correspond to meta data tags ie. departments, office size, room type. etc. 2023-04-12_15-25-17.png

 

 

 

(defun c:afm_hrmxdp ()
(AfmHighltQuerySetOwner "dp")
(AfmHighltQuerySetAssigned "rm")
(AfmHighltQueryByOwner)
(princ)
)

 

 

Sometimes, when hatching numerous floor plans, it's easier to use a command that does not invoke a dialog box. Therefore, The 

 

(AfmHighltQueryByOwnerEx)

 

 function includes additional parameters, such as the ability to invoke the highlight without prompting for a dialog box, as you may wish to do when scripting highlights within a sequence of drawings.

The (AfmHighltQueryLegendProperties) method sets legend properties.

 

 Example:

 

(c:afm_hrmxdpWithLegendControlNoForm) in \Program Files (x86)\archibus\xxx\SmartClient\acad\afm_highlight.lsp

 

 .

________

 

Any ideas of how to start would be great. I used to do this years ago but have forgotten it all. So, I'm truly grateful for any assistance. 

712 Views
1 Reply
Reply (1)
Message 2 of 2

Ed__Jobe
Mentor
Mentor

Since you specifically said lisp, I moved your thread from the VBA forum to the LISP forum. Also, there is a button </> for posting code. If you choose a language, it keeps your formatting and is easier for others to read. thx

 

You may need to provide a better explanation of what the code you supplied does, for those that don't have Archibus. How is what you want different from this? Do you need to use this code? Can you simply use the PUBLISH command or even the sheetset manager?

Ed


Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
How to post your code.

EESignature

0 Likes