Ad-hoc-Anwendungsszenarien

Es gibt zwei Implementierungen des Ad-hoc-Berichtsclients:

  • Java Swing-basierter Client, der als eigenständiger Client oder eingebettet in Java-Anwendungen verwendet werden kann
  • Echo Webanwendungs-Framework-basierter Client, erfordert zur Ausführung nur einen Webbrowser auf dem Client-Betriebssystem

Dieses Kapitel beschreibt die gebräuchlichsten Verwendungen der Ad-hoc-Berichterstellungskunden.

Remote-Obefläche

Die Verwendung von Ad-hoc-Berichten als Modul in der Remote-Oberfläche von INETAPP ist die primäre Verwendungsart. Hierfür wird das Plugin in der Konfiguration aktiviert und und im Konfigurationsmanager des Servers eingestellt. Weitere Einzelheiten zum Einrichten der Konfiguration finden Sie im Kapitel Configuration.

Einbetten des Ad-hoc-Berichtsmoduls

Das Ad-hoc-Berichtsmodul der Web-Oberfläche kann in eine bestehende Website eingebettet werden. Der eingebettete Modus blendet die globale Symbolleiste der Web-Oberfläche aus, um sicherzustellen, dass nur der Modulinhalt sichtbar ist.

Aufgrund des notwendigen HTML-Inhalts muss ein iframe verwendet werden. Der folgende Code ist ein Beispiel für die Einbettung des Moduls, das auf einem Server <host> mit dem Anwendungskontext <context> läuft.

<iframe src="https://<host>/<context>/adhoc/?embedded=true" width="800" height="600"></iframe>

Wenn die Authentifizierung auf dem INETAPP Server aktiviert ist, ist es möglich, die Funktion Gastkonto zu verwenden. Damit kann jeder Benutzer mit dem konfigurierten Kontonamen angemeldet werden. Der Benutzer muss also keinen Benutzernamen und kein Passwort eingeben, sondern ist mit einem Konto angemeldet, dessen Rechte verwaltet werden können.

Eingebettete Java-Anwendung

Der Swing-Client der Ad-hoc-Berichterstellung basiert auf einem JPanel, das leicht in jede Java Swing-Anwendung eingebettet werden kann.

Sie haben die Wahl, entweder den Client mit Report-Viewer zu verwenden, der durch die Klasse com.inet.adhoc.client.AHClient repräsentiert wird, oder nur die reine Wizard-Komponente zu verwenden, die com.inet.adhoc.client.AHWizard ist.

Client mit Viewer

Die Verwendung des Clients mit dem Report-Viewer ist eine "out of the box"-Lösung mit einer Einschränkung: Die Klasse AHClient hat keine Funktion, um die generierte Engine oder den generierten Report programmatisch zurückzugeben. Sie soll nur als Berichtsgenerator für den Benutzer dienen.

Um den AHClient zu verwenden, instanziieren Sie einfach die Klasse mit der URL zu Ihrem Server und fügen Sie sie in den Komponentenbaum Ihrer Java Swing-Anwendung ein.

AHClient client = new AHClient( serverURL, ahHelpProvider );

Der Parameter AHHelpProvider kann auf null gesetzt werden. In diesem Fall wird der Client versuchen, die Hilfeseiten durch die serverURL aufzulösen und die Seiten im Standardbrowser zu öffnen.

Assistent

Der AHWizard enthält nur die Seiten zur Ad-hoc-Berichtserstellung. Er enthält keine Render-Komponente wie der Swing-Berichtsviewer des AHClients. Andererseits ist er besser anpassbar, da Sie seine Konfiguration ändern und benutzerdefinierte Request-Handler für die Verbindung mit mehreren Servern gleichzeitig einstellen können.

Da auf die Request-Handler zugegriffen werden kann, haben Sie die Möglichkeit, die generierte Engine vom Server anzufordern, indem Sie die folgende Anfrage senden:

IResponse response = requestHandler.handleRequest( request, false );
XMLSerializableByteArray engineData = 	(XMLSerializableByteArray)response.getProperties().get( 
		AHConstants.KEY_ENGINE_DATA );
if( engineData != null ){
	return RDC.loadEngine( 
			new URL( "file:/"), 
			new ByteArrayInputStream( engineData.getValue() ),
			Engine.EXPORT_DATA, null );
}

Diese Art der Einbettung wird auch für den i-net Designer verwendet.