# Documenting Client Information

**URL:** <https://forum.inductiveautomation.com/t/documenting-client-information/21795>\
**Category:** Ignition\
**Created:** [January 10, 2019, 7:19pm UTC](https://forum.inductiveautomation.com/t/documenting-client-information/21795 "2019-01-10T19:19:25Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![dkhayes117](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/dkhayes117/32/68344_2.png) [@dkhayes117](https://forum.inductiveautomation.com/u/dkhayes117)\
**Post date:** [January 10, 2019, 7:19pm UTC](https://forum.inductiveautomation.com/t/documenting-client-information/21795/1 "2019-01-10T19:19:25Z")

</div>

I have a project that uses 3 small windows in tabular navi (hopefully setup to work on tablets in portrait position, or on a laptop) and I’m trying to document the information that is created with the project. Basically I have one large table, one medium table, a small table, a bar graph, and some labels. I’m attempting to “export” the project into a pdf. Ideally, I would export each window with createPrintJob() and using that to print as PDF, in turn having one PDF with 3 pages. I haven’t been able to do this. I also tried using a report, but I can’t represent my table data because the column keys change and are unpredictable as to what they will be. Finally, I tried creating a large window that has everything on it, pressing the export button opens the large window and prints as PDF then closes the window. This doesn’t work if the screen is small enough to where the window can’t be fully displayed on the tablet. Anyone got any ideas on any other methods, or have I missed something in my other attempts?

---

<div class="post-metadata">

**Author:** ![dkhayes117](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/dkhayes117/32/68344_2.png) [@dkhayes117](https://forum.inductiveautomation.com/u/dkhayes117)\
**Post date:** [January 10, 2019, 8:31pm UTC](https://forum.inductiveautomation.com/t/documenting-client-information/21795/2 "2019-01-10T20:31:29Z")

</div>

Think I may have solved my dilemma by using a screenshot function created by @Kyle_Chase. Awesome work bro!

> [@How to take screenshots of your Ignition windows](http://forum.inductiveautomation.com/t/how-to-take-screenshots-of-your-ignition-windows/7863):
>
> We have a client who wanted to get a screenshot of a whole bunch of windows. We decided to write a script to do this. Define this function in your app scripts. def takeScreenshot(twindow): from java.io import File from java.awt.image import BufferedImage from javax.imageio import ImageIO import system home = system.util.getProperty("user.home") window = system.gui.getWindow(twindow) rec = window.getBounds(); bufferedImage = BufferedImage(rec.width, rec.height,BufferedImage.TYP…

I had to modify the calling script a bit to this

```auto
import time

windows = ["Export"]
for row in windows:
	obj = system.nav.openWindow(row)
	time.sleep(2.5)
	shared.SS.takeScreenshot(row)
	system.nav.closeWindow(row)
system.nav.swapTo("Analysis")

```
