Izenda Logo

This documentation is for the legacy Izenda 6 product. Documentation for the new Izenda 7 product can be found at https://www.izenda.com/docs/

About

This tutorial is meant to provide guidance in setting up Izenda to work with MongoDB's Connector for BI. The MongoDB Connector for BI is proprietary to MongoDB, and will only be available to MongoDB Enterprise users. Izenda will not ship with MongoDB or the BI Connector. The BI Connector is designed for use with business intelligence applications like Izenda, and provides an ODBC connection and SQL translator for a MongoDB noSQL database. It does not store information, but it creates a schema, and uses PostgreSQL 9.4 as a standard.

Izenda is not responsible for any data issues resulting from the use of the MongoDB Connector for BI.

Prerequisites

You will need to have a MongoDB Enterprise Server set up to use the Connector for BI. You will also need to set up the BI Connector on a Linux server. Please see the following links for more information:

Setting Up the Connection

Once you have installed the Connector for BI and opened the appropriate ports, you are ready to connect Izenda to your MongoDB database. Izenda does not require any special downloads or drivers to connect to the BI Connector, as Izenda ships with a PostgreSQL driver. To connect, simply form your connection string:

  • Server=(host name);Port=(port - MongoDB default is 27032);Database=(same as username);User Id=(username created during setup for BI Connector);Password=(created during setup for BI Connector);

You can add the connection string via AdHocSettings.PostgreSQLConnectionString, or via Fusion connection.

Code Samples

Global.asax (C♯)

//main class: inherits DatabaseAdHocConfig or FileSystemAdHocConfig
public class CustomAdHocConfig : Izenda.AdHoc.DatabaseAdHocConfig
{
  // Configure settings
  // Add custom settings after setting the license key and connection string by overriding the ConfigureSettings() method
  public static void InitializeReporting() {
    //Check to see if we've already initialized.
    if (AdHocContext.Initialized)
      return;
    AdHocSettings.LicenseKey = "INSERT_LICENSE_KEY_HERE";
    AdHocSettings.PostgreSQLConnectionString = "Server=127.0.0.1;Port=27032;Database=izmongo;User Id=izmongo;Password=***;";  //The relevant setting
    Izenda.AdHoc.AdHocSettings.AdHocConfig = new CustomAdHocConfig();
    HttpContext.Current.Session["ReportingInitialized"] = true;
  }
}

Global.asax (VB.NET)

'main class: inherits DatabaseAdHocConfig or FileSystemAdHocConfig
Public Class CustomAdHocConfig
    Inherits Izenda.AdHoc.DatabaseAdHocConfig

    Shared Sub InitializeReporting()
        'Check to see if we've already initialized
        If HttpContext.Current.Session Is Nothing OrElse HttpContext.Current.Session("ReportingInitialized") IsNot Nothing Then
            Return
        'Initialize System
        AdHocSettings.LicenseKey = "INSERT_LICENSE_KEY_HERE"
        AdHocSettings.PostgreSQLConnectionString = "Server=127.0.0.1;Port=27032;Database=izmongo;User Id=izmongo;Password=***;"  'The relevant setting
        Izenda.AdHoc.AdHocSettings.AdHocConfig = New CustomAdHocConfig()
        HttpContext.Current.Session("ReortingInitialized") = True
    End Sub

End Class