Empfehlen Sie stabile Open-Source-Berichtstools

Ich bin dabei, mit der Entwicklung einer Webplattform zu beginnen, mit der ich gehen kann:

  • ASP.NET – MVC 4 – Entitätsframework
  • Rubin auf Schienen
  • JAVA (JSP, Spring, Ruhezustand)

Mein Kunde benötigt 6 spezifische Berichte, hat aber eigentlich darum gebeten, dass er selbst mehr Berichte erstellen könnte.

Könnten Sie mir bitte Links zu Bibliotheken/Diensten zur Verfügung stellen, die Open Source sind und es einem fortgeschrittenen Endbenutzer ermöglichen, seine eigenen Berichte zu erstellen, indem er Tabellen/Felder zum Kombinieren auswählt

Ich kenne Jasper Studio - http://community.jaspersoft.com/project/jaspersoft-studio , möchte aber auch andere Reporting-Tools in Betracht ziehen, um zu entscheiden, in welcher Sprache/Technologie ich die Website implementieren möchte

UPDATE Es gibt eine SQL-Datenbank, aber mein Kunde kennt/will SQL nicht verwenden.

Er möchte Tabellen und Felder auswählen und kombinieren. Im Moment könnten die Ergebnisse in einer Listen- oder Tabellenansicht ausreichen, aber ich denke, dass in Zukunft LINE CHART oder PIE CHARTS benötigt werden

Willkommen bei den Softwareempfehlungen! Könnten Sie uns mehr darüber erzählen, wie die Berichte aussehen sollten, welche Funktionen Sie für Ihre Berichtssuite haben möchten usw. So wie es aussieht, würde alles passen, was irgendwie Daten von irgendwoher auswählt und sie irgendwie jemandem präsentiert, was ziemlich weit gefasst ist. Welche Daten sollen präsentiert werden? Auf welche Weise? Listen? Zusammenfassungen? Kreisdiagramme? Kennt der "fortgeschrittene Endbenutzer" SQL (falls eine SQL-Datenbank vorhanden ist?) Wo werden die Daten gespeichert und wie soll sich das Reporting-Tool damit verbinden?
@AngeloFuchs Ich habe gerade meine Frage aktualisiert
"Mein Kunde kennt/will SQL nicht verwenden. Er möchte Tabellen und Felder auswählen und kombinieren" - Sie möchten also etwas, um die Datenbank zurückzuentwickeln und ihn dann Tabellen und Spalten über eine GUI auswählen zu lassen? Etwas wie tmssoftware.com/site/qs.asp , aber webbasiert. Ist das korrekt?
@Mawg klingt ungefähr richtig. auch wenn das Reverse Engineering nicht benötigt wird (indem konfiguriert wird, welche Tabellen/Spalten zum Erstellen der Berichte verwendet werden können)
Wo wären die Daten? Nicht in der SQL-Datenbank?
@NicolasRaoul es gibt eine SQL-Datenbank (probaby mysql oder mssqlserver)
@MauricioGracia: Sie möchten also über Daten aus der SQL-Datenbank berichten, aber ohne SQL zu verwenden, verstehe ich das richtig?
@NicolasRaoul der Benutzer weiß nicht, wie man SQL schreibt, das Tool sollte es ihm ermöglichen, Tabellen/Spalten auszuwählen und sie visuell zu kombinieren. Das Tool sollte dies nach Bedarf in SQL übersetzen
@MauricioGracia: Großartig, jetzt verstehe ich. Könnten Sie bitte diese Informationen zu Ihrer Frage hinzufügen? Vielen Dank!
@NicolasRaoul ist schon da alles nochmal lesen ;-)

Antworten (3)

Ich empfehle Ihnen, Jasper Reports mit seinem Client Jaspersoft Studio zu verwenden . Ich habe seinen Vorgänger iReport ziemlich oft und mit viel Erfolg verwendet. Für meine Bedürfnisse war die Community-Version immer ausreichend, so dass ich die Extended-Produkte nicht persönlich ausprobiert, aber Gutes darüber gehört habe.

Jasper-Berichte bestehen aus drei Teilen: Einer ist eine Bibliothek, die Sie mit Ihrem Java-Programm ausliefern, die den zweiten Teil übernimmt, die JRXml-Datei, die die technische Definition des Berichts enthält und eine schöne Ausgabe erzeugt.

Der dritte Teil ist das JRXml-Erstellungstool (das Studio, ehemals iReport), ein Tool mit einer funktionsfähigen GUI, mit der Sie die Elemente Ihrer Berichte per Drag & Drop verschieben können, um das zu erstellen, was Sie zeigen möchten. Es enthält einen Drag-and-Drop-SQL-Designer, der die meisten einfachen Abfragen wie "SELECT * FROM a, b, c WHERE a.identifier = ? AND a.id = b.a_id AND c.id = a.c_id". Aber es hat seine Grenzen und manchmal wird Ihr Kunde Sie bitten, ihm zu helfen, diese Abfrage richtig zu machen, bis er sich mit SQL vertraut gemacht hat.

Der Creator wird auch mit einem Datenquellen-Verbindungstool geliefert, sodass Sie die Berichte nur mit dem Creator erstellen können. Wenn Sie nur eine Person beim Kunden haben, die die Berichte benötigt, könnte dies der richtige Weg sein, anstatt die Bibliothek mit Ihrem Tool zu versenden.

Jasper Reports funktionieren so: Sie definieren zuerst die Abfrage der Daten, die Sie auswählen möchten. In der Regel handelt es sich dabei um einige Parameter, die aus Ihrem Programm stammen, wie z. B. eine Kundennummer. Dann definieren Sie diese Parameter für den Bericht selbst, damit JR sie später verbinden kann, wenn es an der Zeit ist, den Bericht auszuführen.

Sie lassen dann den Creator alle Felder greifen, die Ihr Bericht aus der Abfrage zurückgibt, und speichern sie als "Feld", das Sie dann per Drag & Drop an die gewünschte Stelle ziehen. Sie entscheiden, welche Informationen oben auf der ersten Seite angezeigt werden sollen (z. B. der Kundenname), welche Informationen oben auf jeder Seite angezeigt werden (z. B. ein kumulierter Betrag) und welche Informationen Sie in jeder Zeile anzeigen möchten. Es gibt mehr Orte als diesen, aber Sie verstehen, worauf es ankommt.

Wenn Sie kumulative Elemente haben möchten, verwenden Sie Variablen, um sie zu codieren, Sie wählen das Feld aus, in dem sie kumulieren, und die Art und Weise, wie sie dies tun. Jede Kumulation wird pro Zeile durchgeführt, die aus Ihrer Abfrage stammt. Sie können die Variablen genauso wie die Parameter und die Felder per Drag & Drop direkt an die gewünschte Stelle ziehen.

Jasper Reports kann einen Großteil der Berichterstellung ganz einfach erledigen, ist jedoch nicht für Endbenutzer geeignet. Die Verwendung des Creator Tools hat eine Lernkurve. Wenn Sie Ihrem Kunden einige einfache Beispielberichte für seinen spezifischen Datensatz geben, machen Sie es ihm viel einfacher.

Stack Overflow bietet viele gute Ressourcen für Fragen zu Jasper Reports .

Es gibt ein neues Tool namens Helical Insight, ein Open-Source-BI-Tool, mit dem Sie Berichte, Dashboards und Datenvisualisierungen erstellen können. Seine einzigartige Funktion ist „Instant BI“, was nichts anderes als NLP und maschinelles Lernen ist, bei dem Sie einfach Ihre Geschäftsfragen eingeben und sofortige Einblicke erhalten. Weitere Einzelheiten finden Sie auf der Website unter www.helicalinsight.com

Wenn Sie Open Source werden möchten, sind Ihre Optionen hauptsächlich Jasper Reports, Pentaho und BIRT, und alle laufen auf Java. Im .NET-Land gibt es meines Wissens keine Open-Source-Berichterstellungstools, aber es gibt viele nette Closed-Source-Tools. Leider kenne ich Ruby on Rails nicht, daher kann ich Sie dazu nicht führen.

Übrigens, ich denke, Sie wollen etwas Hochglanzpoliertes, das die SQL-Sprache so weit wie möglich vermeidet. Ich fürchte, dass Sie in der Open-Source-Welt nichts so benutzerfreundliches finden werden, also müssen Sie es Ihrem Kunden vielleicht sagen entweder SQL lernen oder jemanden einstellen, der es tut.