ReportWeb - Installation
Es gibt kein "SETUP.EXE", um ReportWeb in ihrer Umgebung anzupassen. Es ist ein Framework für eigene Weiterentwicklungen und Anpassungen und genauso müssen Sie an der ein oder anderen Stelle das System auf ihre Bedürfnisse anpassen. Die Installation ist aber dennoch nicht schwer und mit dieser Anleitung sollten Sie das System auch bei ihnen zum Laufen bekommen.
Installationsschritt | Erledigt |
---|---|
Dienstkonto und Sicherheitsgruppe anlegenDie Generierung der Reports wird durch per Taskplaner gestartete PowerShells auf dem System durchgeführt. Bitte nutzen Sie dazu nicht den Administrator. Auch ein Ausführen als "LocalSystem" sollten Sie nicht in Betracht ziehen. Legen Sie ein Dienstkonto mit Kennwort an, welches dann die erforderlichen Berechtigungen bekommt, um die Reports auszuführen. Zudem empfehle ich eine universelle Sicherheitsgruppe, damit Sie den Zugriff auf die Webseite später über eine Gruppe steuern. |
|
Systemvoraussetzungen schaffenReportweg nutzt PowerShell, Taskplaner, IIS und verschiedene Commandlets. Daher sollten Sie auf dem System installieren:
|
|
Report-Web auspackenAls nächsten Schritt kopieren Sie das ReportWeb-Archiv auf den PC und packen Sie es in ein Verzeichnis ihrer Wahl aus (z.B. nach "C:\ReportWeb". Sie können den Pfad gerne ändern, aber sie müssen dann auch in den Konfigurationsdateien und Skripten entsprechend den Pfad anpassen. Es landen einige Verzeichnisse auf dem PC. (Siehe Reportweb Pfade) |
|
Webseite im IIS einbindenUm einen "Blick" auf ihr Werk zu werfen und in den folgenden Schritten den Erfolg zu prüfen, richten Sie nun im bereits installierten IIS das Verzeichnis HTML als neue Webseite oder als virtuelles Verzeichnis in eine bestehende Webseite ein.
|
|
Webseite im Sharepoint Designer bearbeitenSie können nun daran gehen, die Webvorlage nach ihren Wünschen zu verändern. Layout, Logos und auch das Menü am linken Rand müssen Sie selbst erstellen. Siehe dazu auch Reportweb Vorlage. |
|
"reportweb-global.ps1" anpassenDiese Datei enthält globale Variablen, die von allen Programen per "Invoke-Expression .\ReportWeb-global.ps1 " Eingebungen wird. Passen Sie hier die Pfade an ihre Gegebenheiten an. |
|
"reportweb.csv" anpassenDamit der Controller und Worker wissen, was sie zu tun haben, müssen Sie die Reports in der Reportweb.csv pflegen. für jeden Report gibt es hier eine Zeile mit den Parametern. für den Anfang können Sie natürlich die bereits vorhandenen Report einfach verwenden und nach und nach dann ihre eigenen Reports addieren. |
|
Environment-Report einmal interaktiv ausführenUm zu sehen, dass die komplette Umgebung und Konfiguration stimmig ist, können Sie einen Report manuell mit dem Worker ausführen. Starten Sie dazu eine CMD-Box, wechseln Sie in das ReportWeb-Verzeichnis und starten Sie den Environmentreport und danach den Statusreport.:
#
Environmentreport
manuell
ausführen. Der entsprechende Report wird interaktiv ausgeführt. Wenn Sie alles richtig gemacht haben, sollte danach eine "reportwebenv.htm" im HTML-Verzeichnis erstellt worden sein. Dieser Report erstellt einen kleinen Bericht der "LaufzeitUmgebung". |
|
Controller ausführenWenn der Report erstellt wurde und damit die Basisfunktion gegeben ist, dann starten wir nun den Controller interaktiv. Er wird nun alle Reports der CSV-Datei neu erstellen und ablegen.
REM Controller
einmal starten Sie sollten sehen, dass die PowerShell mit dem Controller geladen wird. Der Controller wird die Reports in neuen Fenstern starten. Wenn das soweit funktioniert, können die zum nächsten Schritt übergehen |
|
Reports per Taskplaner einrichtenDer Windows Taskplaner wird als Scheduler für die Reports genutzt. Der Taskplaner startet den "Controller" z.B. alle 5 Minuten. Zuerst wird also der regelmäßige Aufruf in einem neuen Task eingeplant.
Sie können diesen Task auch gerne manuell starten aber werden keine Ausgaben sehen. Allerdings sollte der Controller nach einiger Zeit mit einem Exitcode=0 sich beenden. Im Taskmanager können Sie die verschiedenen Worker verfolgen. Eine zweite Aufgabe des Taskplaners ist den Runner zu starten, wenn z.B. in der ASP.NET-Datei ein Report angetriggert wird. Die ASP.NET-Seite legt dazu eine "TRIGGER"-Datei an und generiert einen Eventlog-Eintrag. Auf diesen Eintrag hin wird der Runner mit einer anderen Option gestartet:
Der nächste Schritt ist, dann die Konfiguration für das Eventlog |
|
ASP.NET Trigger einrichtenÜber die ebenfalls im Paket enthaltene ASP.NET-Seite kann per Browser ein Report angetriggert werden. Dazu ist aber eine Vorarbeit erforderlich: Der IIS kann zwar in das Eventlog schreiben, aber hat nicht das Recht, eine neue Eventlog-Quelle anzulegen. Das muss einmal der Admin in einer PowerShell machen. # Anlegen einer Eventlog Quelle für ReportWeb [System.Diagnostics.EventLog]::CreateEventSource("ReportWeb", "Application") Mehr ist aber nicht erforderlich. Testen Sie die Funktion, indem Sie folgendes im Browser eingeben: http://ihr-report-web-server/ihr-report-verzeichnis/trigger/default.aspx?report=env Sie sollten nun im Eventlog einen Eintrag mit Quelle = Reportweb sehen, in dessen Messagetext zuerst der Reportname aber dann auch die Client-IP und der angemeldete Benutzer angezeigt wird. Sollte Sie nicht gegeben sein, dann finden Sie auf Reportweb:Trigger weitere Informationen. Wenn der Event angelegt wurde, dann kontrollieren Sie im Taskmanager, dass der damit verbundene Task gestartet wurde. Wenn das der Fall ist, dann finden Sie eine passende TRIGGER-Datei im Verzeichnis "\JOBSTATUS". Es sei denn der Controller hat die Datei schon "gesehen", gelöscht und den Report gestartet. |
|
Eigene Reports konfigurierenNun ist die Einrichtung soweit abgeschlossen und es bleibt ihnen nur noch, eigene Reports in das System zu addieren. Die dazu erforderlichen Schritte habe ich auf Reportweb:Addreport beschrieben, |
|