How to get View/Sheet Set without opening the Revit file for printing pdf

Good day,

I wish to get the view/sheet sets of a revit file without opening the file for printing. (see image below sample of sheet set)
image

I get the graph in the forum and do a little adjustment.

Thank you in advanced for helping me out.

Cheers,
Romm

1 Like

As a base case, I think the get views from
View set node will need to be edited to work on something other than the active document. Can you post your dyn and a sample rvt for people to test with?

Hi Jacob,

Thanks for the response. Please see attached revit sample. This has a “1ST STY” sheet set.
SAMPLE01.rvt (2.8 MB)

For the graph. Kindly refer attachment.
Print_PDF_WIP.dyn (13.6 KB)

Im using:
Revit 2016
Dynamo 1.2

For packages (see image below)
image

Well appreciated Jacob.

Cheers,
Romm

Hi @rommel.cano,

I think you should watch in the Genius Loci package. There are nodes for printing pdf from directory or export DWG/DWFx from directory and a node “View Sets from document”.
All the nodes need to be use with Document.BackgroundOpen node.

1 Like

Hi Alban,

Thank you. I am really excited doing this. I will check it right now.
I appreciate the help. :slight_smile:

Many Thanks,
Romm

Hello there,

I have some issues trying to run the batch print from the Genius package:
“Get Views from View Set” have null output. (My input is ViewSheetSet and input is ViewSet)

An other issues refer to the “File path” input on the Print component.


Do we need to create a blank PDF file and then remove it ones selected (other wise it give me a this file already exist

Also, is it possible to batch print an overall list of sheet, “CombinedFile” set to true has an Exception and doesn’t print,


Set to False, required to prompt the name each time.

I must miss some key point as it seam to work very well on this forum,
Thank you,

Best

Hi Guillaume,

“Get Views from View Set” node should work.

Verify that your View Set contains sheets or views. You can also copy paste the python script of the custom node inside your graph to see the error.

For the filepath, you just have to write the name of the pdf file without forgetting the extension .pdf.

The combined file option doesn’t work for the moment. Use the node MergePDFs instead.

You have to customize your adobe settings to not have anymore the pdf window at each pdf printing :

1 Like

Hello Alban,
Thank for your support,

I believe to have constructed the script correctly, but can’t make the view from view set to work properly.

To be precise, in the first iteration of the script the node reads the data, but I am unable to exploit the content. The parent node will be able to use the content from “Get all views from document” but not from the “get views from view set” (Also the DYN became slow and hard to uses for no apparent reason)

I also noticed that the view ID between “get views from view set” and “get all view from document” are different.

.

I then rewrite the script in a new file, now “get views from view set” doesn’t work again.

BATCH_PRINT_PDF.dyn (30.7 KB)

I hope you can find the mistake.
Thank you,
Best regards,

Hi Guillaume,

I edited the Get views from view set node and it is working now.

_You have to input as many printsettings as views. You can input differents printsettings (A0, A1, A3…) at the same time.

_For the input PrintRange it’s “Select” and not “select”

BATCH_PRINT_PDF V2.dyn (38.5 KB)

EDIT : I had forgotten but in fact I still use the node “ViewSheetSet.Views” from Clockwork after the node View Sets from document.

1 Like

Hi Alban, Thank you for your help, this is awesome !

Here is the final script:
*Include the batch print and the rename pdf.

The rename node couldn’t be used so I had to take the python out of the box.
I found the solution here https://forum.dynamobim.com/t/rename-files/18077

Batch_Print
BATCH_PRINT_PDF_0914.dyn (72.8 KB)

Further to this workflow, I would like to run a batch print for multiple file using a periodic run or even better a recursive definition, sort of Hoopsnake workflow for dynamo, I think the current script will give us a lot of comfort but if you know any post or package, I’ll love to develop this script further.

Thank you again,
Best,

Hi Guillaume,

If you want to rename the pdf files in the same graph you need to add a “passthrough” node or type {passthrough,waitfor}[0]; between “Print PDF” and “Rename Files”.
(You can’t rename the pdf files before they are produced.)

The node “Print PDF from document” works with several Revit Documents.
Just set his lacing on longest.

I don’t understand the need for a recursive definition, the lacing is probably sufficient.
The node will process on the documents one by one.
You can select several documents like this (if they are in the same folder) :

3 Likes

Hello Alban,

That exactly the type of periodic run I was looking for, thank you.

Unfortunately I didn’t manage to uses the pass true node and the print PDF only seam to work when the lists are all flatten.

Moreover, All my drawing set are suppose to have the same names and number of sheet, so I do not understand how the rename node will rename each views except if the process happen " list by list" .

BATCH_PRINT_PDF_0915.dyn (109.5 KB)

Ones again, Thank you very much for the follow up support.
Best,
~ GH

Hi Guillaume,

Please update the package Genius Loci. I made some changes in the Print PDF from document node and there is no more need to rename the pdf files.
Use the FilenameToFilePaths node to input the correct names.
filepaths

With several documents, you must set the lacing on longest on the Print PDF from document node.
print

Please start a new topic if you have other questions because you’re hijacking the original subject.

Thank you Alban, It works perfectly now.

Here is the latest DYN:
BATCH_PRINT_PDF_0918.dyn (90.8 KB)

Must have skipped the Rule No.6, apologize for the Hijacking :wink:

1 Like

Longest option dosnt worked for me.
Any idea

Application.OpenDocumentFile


how can i resolve this?
thanks in advance

Have you got the rhythm package installed?

yeah i did

Try searching for that node and placing it again. In the same place it is used in this script