Citrix WEM Documentation Script v2

WEM has offered a world of fun when it comes to environment management, however it introduces a black hole when it comes to documentation. Once your configuration is in WEM, it’s almost impossible to document, and not the easiest to track for complex deployments.

A while back I wrote a very rudimentary script that would utilise SQL queries to rip data out of the WEM database directly, and output to a pretty unstructured and nasty HTML output – it wasn’t pretty, my code was pretty sh1te, but it was something.

A couple of years on, my friend Arjan Mensch has released the big daddy of PowerShell modules for WEM, allowing for full end to end PowerShell based control of every single aspect of the solution. I have been lucky enough to be involved in the project since the first concept of the “WEM Commander” came to life, filling holes and gaps in the product which looked pretty damn cool! We have watched it move from a GUI based utility with some slight performance hassles, to an entire PowerShell SDK which offers so much control its ridiculous. You can read up on Arjan’s work here (there are a load of gems).

Given I have been working with Arjan for a while, I have been developing a new documentation script based on the new WEM SDK Module, which I am pushing live as of today for general consumption and utilisation. The new rewrite of this script is based off two community modules; the Citrix.WEM.SDK module to output the data from the WEM side of things, and the awesome PScribo module for outputting the data into a structure word document (without the need for Word).

Verbose Detailed Output
Word Output

This script is a beast, given that at the end of the day we are pulling data directly out of SQL, there was a world of pain mapping every. single. setting. in the WEM console to it’s appropriate value within the Database. I found all sorts of fun lying around in the DB schema, settings never implemented, settings on the way, forgotten bits of settings that maybe-could-of-should-of-might-be implemented in WEM at some point one day *Shrugs*.

Example Advanced Settings

It supports multiple configuration sets, and allows you to list them if you aren’t sure who is what, and what ID is who

List Config Sets

My code is what it is, this script is completely open to improvements via github. Go hell for leather with feedback or suggestions, or submit pull requests with your changes.

I hope the hours of head scratching and trawling through tables helps people out, it has been tested up to WEM 1912 release and captures all configurations associated with all features.


7 thoughts on “Citrix WEM Documentation Script v2

Add yours

  1. We have subscribed to the cloud WEM service we do not have direct access to SQL. In order to use your health check script and also if we want to create some HTML reports using PowerShell for WEM. What are the option we have to connect to the WEM cloud?


      1. Hello James, great work. Thanks for that. Do you maybe have an update regarding the use with the WEM service? Would be a cool thing to be able to document there as well.


  2. Hi , will there come an update for new WEM versions? I am trying to use Docu Scripts and get the error: New-WEMDatabaseConnection : Connected to a database version with unsupported schema: 2012.1.0.1 (schema 2012)


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create a website or blog at

Up ↑

%d bloggers like this: