CockroachDB-Daten an List & Label binden

CockroachDB ist ein cloudbasiertes relationales Datenbanksystem. Die SQL-Syntax ist eng an PostgreSQL angelehnt, daher können für die meisten Anwendungen PostgreSQL-kompatible Treiber verwendet werden - so auch für das Reporting mit List & Label.

Um sich mit einem CockroachDB-Cluster zu verbinden sind nur wenige Zeilen Code notwendig. Die benötigten Informationen erhältst du, wenn du in der Clusterkonfiguration auf die Schaltfläche ´Connect` klickst:

Im folgenden Dialog kannst du die Einträge für User, Host, Database und Port kopieren:

Diese Informationen verwendest du dann zur Erstellung der Verbindungszeichenfolge:

NpgsqlConnectionStringBuilder builder = new NpgsqlConnectionStringBuilder();
builder.Username = "...";
builder.Password = "...";
builder.Host = "unsure-tamarin-8005.8nj....";
builder.Database = "...";
builder.Port = 26257;

Im nächsten Schritt kannst du dann eine Verbindung zur Datenbank herstellen und diese an List & Label binden:

NpgsqlConnection connection = new NpgsqlConnection(builder.ConnectionString);
NpgsqlConnectionDataProvider provider = new NpgsqlConnectionDataProvider(connection);

using (ListLabel LL = new ListLabel())
{
    LL.DataSource = provider;
    LL.Design();
}

Danach stehen im Designer alle Tabellen mitsamt ihren Relationen zur Verfügung.

Der Code verwendet den NpgsqlConnectionDataProvider, der als eigenes NuGet-Package bereitsteht.

Analog dazu lassen sich die Daten auch im Report Server einbinden, dafür kannst du einfach eine PostgreSQL-Datenquelle hinzufügen und eine Verbindungszeichenfolge der folgenden Art verwenden:

Host=unsure-tamarin-8005.8nj....;Username=...;Password=...;Database=...;Port=26257