# How to generate a pdf report from dashboard 2

**URL:** <https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180>\
**Category:** Dashboard\
**Tags:** dashboard-2\
**Created:** [26 December 2024 15:17 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180 "2024-12-26T15:17:44Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![Pepex7](https://avatars.discourse-cdn.com/v4/letter/p/a88e57/32.png) [@Pepex7](https://discourse.nodered.org/u/Pepex7)\
**Post date:** [26 December 2024 15:17 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/1 "2024-12-26T15:17:44Z")

</div>

I've been trying to make a pdf report with dashboard 2.  
I've tried with [node-red-contrib-pdfmake2 (node) - Node-RED](https://flows.nodered.org/node/node-red-contrib-pdfmake2), but I only get an error ("TypeError: Cannot read properties of undefined (reading 'vfs')"). I've also tried with wkhtmltopdf, but it doesn't work either.

Is there any current way to make a pdf report, possibly adding graphics or charts?

I was thinking of implementing a metabase to generate reports. Does it make sense to do that?

---

<div class="post-metadata">

**Author:** ![Steve-Mcl](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/steve-mcl/32/4826_2.png) [@Steve-Mcl](https://discourse.nodered.org/u/Steve-Mcl)\
**Post date:** [26 December 2024 15:41 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/2 "2024-12-26T15:41:55Z")

</div>

There are plenty of examples knocking around the forum e.g: [Hide/Show elements in a pdf with node-red-contrib-pdfmake - #4 by Steve-Mcl](https://discourse.nodered.org/t/hide-show-elements-in-a-pdf-with-node-red-contrib-pdfmake/57312/4)

---

<div class="post-metadata">

**Author:** ![Pepex7](https://avatars.discourse-cdn.com/v4/letter/p/a88e57/32.png) [@Pepex7](https://discourse.nodered.org/u/Pepex7)\
**Post date:** [26 December 2024 20:13 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/3 "2024-12-26T20:13:17Z")

</div>

Thanks.  
I can't try anything because node gives me an error.  
TypeError: Cannot read properties of undefined (reading 'vfs').

---

<div class="post-metadata">

**Author:** ![Steve-Mcl](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/steve-mcl/32/4826_2.png) [@Steve-Mcl](https://discourse.nodered.org/u/Steve-Mcl)\
**Post date:** [26 December 2024 20:34 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/4 "2024-12-26T20:34:18Z")

</div>

When do you get that error (before/after a msg enters into the node)? How do you see that error? Is node-red starting up?

Also, what version of node-red and nodejs are you using?

Lastly, have you tried using the original `node-red-contrib-pdfmake` ?

---

<div class="post-metadata">

**Author:** ![Pepex7](https://avatars.discourse-cdn.com/v4/letter/p/a88e57/32.png) [@Pepex7](https://discourse.nodered.org/u/Pepex7)\
**Post date:** [26 December 2024 20:53 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/5 "2024-12-26T20:53:36Z")

</div>

I get the error when deploying.  
I tried both pdfmake and pdfmake2.  
nodejs --\> v18.19.0  
node-red --\> v4.0.5

 ![Captura de Pantalla 2024-12-26 a la(s) 17.51.02](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/c/1/c14246166f04ad6bbbd3a25e6798d7a5138c07fc.png)

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [26 December 2024 21:25 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/6 "2024-12-26T21:25:47Z")

</div>

If you click on the node id in the debug node (the number starting 40aa) which node in your flow is selected? It is often a good idea to give nodes names so that you don't end up with node ids in debug.

---

<div class="post-metadata">

**Author:** ![Pepex7](https://avatars.discourse-cdn.com/v4/letter/p/a88e57/32.png) [@Pepex7](https://discourse.nodered.org/u/Pepex7)\
**Post date:** [27 December 2024 13:15 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/7 "2024-12-27T13:15:45Z")

</div>

the pdfmake node.

 ![Captura de Pantalla 2024-12-27 a la(s) 10.13.59](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/2/0/202cbeac95755f074d993f6eb7baf0da8dd6fa3d.png)

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [27 December 2024 14:33 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/8 "2024-12-27T14:33:54Z")

</div>

And you are saying that it does that immediately on deploy, even without you clicking the Inject button?

---

<div class="post-metadata">

**Author:** ![Pepex7](https://avatars.discourse-cdn.com/v4/letter/p/a88e57/32.png) [@Pepex7](https://discourse.nodered.org/u/Pepex7)\
**Post date:** [27 December 2024 15:05 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/9 "2024-12-27T15:05:32Z")

</div>

Yes, even without clicking on the inject.

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [27 December 2024 15:28 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/10 "2024-12-27T15:28:30Z")

</div>

What OS and hardware are you running on?

How do you run node-red?

In a command window, stop node red then start it again and post the full log output here. Copy/paste, not screenshot.

Also select the three nodes you show and Export them and paste the export here.

In case you don't know, in order to make code readable and usable it is necessary to surround your code with three backticks (also known as a left quote or backquote `````)

````auto
``` 
   code goes here 
```

````

See this post for more details - [How to share code or flow json](https://discourse.nodered.org/t/how-to-share-code-or-flow-json/506)

---

<div class="post-metadata">

**Author:** ![Pepex7](https://avatars.discourse-cdn.com/v4/letter/p/a88e57/32.png) [@Pepex7](https://discourse.nodered.org/u/Pepex7)\
**Post date:** [3 January 2025 18:53 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/11 "2025-01-03T18:53:33Z")

</div>

I finally rebooted everything, reinstalled and now it doesn't show me the error.

Thanks.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [2 February 2025 18:53 UTC](https://discourse.nodered.org/t/how-to-generate-a-pdf-report-from-dashboard-2/94180/12 "2025-02-02T18:53:53Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
