Pipe HCL Domino Data to CSV in PowerShell

Ready to get started?

Download a free trial of the HCL Domino Cmdlets to get started:

 Download Now

Learn more:

HCL Domino Icon HCL Domino Data Cmdlets

An easy-to-use set of PowerShell Cmdlets offering real-time access to HCL Domino. The Cmdlets allow users to easily read, write, update, and delete live data - just like working with SQL server.

Use standard PowerShell cmdlets to access HCL Domino tables.

The CData Cmdlets Module for HCL Domino is a standard PowerShell module offering straightforward integration with HCL Domino. Below, you will find examples of using our Domino Cmdlets with native PowerShell cmdlets.

Creating a Connection to Your HCL Domino Data


The connector requires the Proton component to be installed. Normally, Proton is distributed as part of the AppDev pack. See the HCL documentation for instructions on acquiring and installing Proton or the AppDev pack.

Once the Proton service is installed and running, you will also need to create a user account and download its Internet certificate. This certificate can be used to set the connector certificate connection properties.

Authenticating to Domino

  • Server: The name or IP address of the server running Domino with the Proton service.
  • Port: The port number that the Proton service is listening on.
  • Database: The name of the database file, including the .nsf extension.
  • SSLClientCertType: This must match the format of the certificate file. Typically this will be either PEMKEY_FILE for .pem certificates or PFXFILE for .pfx certificates.
  • SSLClientCert: The path to the certificate file.
  • SSLServerCert: This can be set to (*) if you trust the server. This is usually the case, but if you want to perform SSL validation, you may provide a certificate or thumbprint instead. See the documentation for SSLServerCert for details.

Additional Server Configuration

The connector supports querying Domino views if any are defined. Before views can be queried by the connector they must be registered with the design catalog.

Please refer to the Catalog Administration section of the AppDev pack documentation for details on how to do this.

$conn = Connect-Domino  -Server "$Server" -Database "$Database" -Port "$Port" -SSLClientCertType "$SSLClientCertType" -SSLClientCert "$SSLClientCert" -SSLServerCert "$SSLServerCert"

Selecting Data

Follow the steps below to retrieve data from the ByName table and pipe the result into to a CSV file:

Select-Domino -Connection $conn -Table ByName | Select -Property * -ExcludeProperty Connection,Table,Columns | Export-Csv -Path c:\myByNameData.csv -NoTypeInformation

You will notice that we piped the results from Select-Domino into a Select-Object cmdlet and excluded some properties before piping them into an Export-Csv cmdlet. We do this because the CData Cmdlets append Connection, Table, and Columns information onto each "row" in the result set, and we do not necessarily want that information in our CSV file.

The Connection, Table, and Columns are appended to the results in order to facilitate piping results from one of the CData Cmdlets directly into another one.