Category: Oracle Analytics Publisher

November 16th, 2021 by admin_der_it_macher

In einem früheren Post habe ich bereits über die REST Services des Oracle BI/Analytics Publisher berichtet. Hier ist insbesondere die POST-Methode interessant, mit der man existierende Berichtsdefinitionen ausführen kann.

Kürzlich kam in einem Projekt die Frage auf, ob man mit Hilfe eines REST-Aufrufs die definierte Datenquelle eines Berichts überschreiben kann. Diese Anforderung tritt auf, wenn ich ein und denselben Bericht gegen verschiedene Datenbanken (z.B. Test, Produktion, Schulung) laufen lassen will.

Da ich mit den SOAP Services des Analytics Publishers beim Aufruf die definierte Datenquelle überschreiben kann, stellt sich die Frage, ob dies auch mit den REST Services möglich ist.
Die offizielle Dokumentation gibt an dieser Stelle wenig her. Also blieb mir nichts weiter übrig, als es auszuprobieren.

Als Vorlage diente mir die Struktur des Datentyps „ReportRequest“, der in mehreren Methoden der SOAP Services (z.B. runReport, scheduleReport) verwendet wird.

<v2:reportRequest>
<v2:attributeFormat>pdf</v2:attributeFormat>
<v2:attributeLocale>en-US</v2:attributeLocale>
<v2:attributeTemplate>Test_Template</v2:attributeTemplate>
<v2:byPassCache>true</v2:byPassCache>
<v2:dynamicDataSource>
<v2:JDBCDataSource>
<v2:JDBCDriverClass>?</v2:JDBCDriverClass>
<v2:JDBCDriverType>?</v2:JDBCDriverType>
<v2:JDBCPassword>?</v2:JDBCPassword>
<v2:JDBCURL>?</v2:JDBCURL>
<v2:JDBCUserName>?</v2:JDBCUserName>
<v2:dataSourceName>?</v2:dataSourceName>
</v2:JDBCDataSource>
</v2:dynamicDataSource>
<v2:flattenXML>false</v2:flattenXML>
<v2:reportAbsolutePath>?</v2:reportAbsolutePath>
<v2:reportOutputPath>?</v2:reportOutputPath>
<v2:sizeOfDataChunkDownload>-1</v2:sizeOfDataChunkDownload>
</v2:reportRequest>

 

Transformiert man diese Struktur in ein JSON-Format sieht der Data Type so aus:

{
„attributeFormat“:“pdf“,
„attributeLocale“:“en-US“,
„attributeTemplate“:“Test_Template“,
„byPassCache“:true,
„flattenXML“:false,
„dynamicDataSource“: {
„JDBCDataSource“: {
„JDBCDriverClass“: „oracle.jdbc.OracleDriver“,
„JDBCDriverType“:“jdbc“,
„JDBCPassword“:“password“,
„JDBCURL“:“jdbc:oracle:thin:@ora19c:1521/PDB“,
„JDBCUserName“:“username“,
„dataSourceName“:“beliebig“
}
}
}

Baut man diesen Datentyp dann in das Formular der POST-Methode ein und ruft diese auf, wird der angegebene Bericht mit der im Aufruf angebenen Data Source ausgeführt.

Offensichtlich wurden die REST Services des Analytics Publisher so implementiert, dass sie die gleichen Aufrufstrukturen wie die SOAP Services verwenden. Dies gibt dem Entwickler viele Möglichkeiten und erleichtert die Nutzung der REST Services in eigenen Anwendungen.

Jürgen Menge (Der IT-Macher)

Posted in Oracle Analytics Publisher

Januar 19th, 2021 by Juergen Menge

Dieser Post kann glücklicherweise sehr kurz gehalten werden, denn es gibt wenige Probleme oder Auffälligkeiten bei der Installation.

Mit der Version 12.2.5.5 wurde der bisherige Oracle BI Publisher in das Paket des Oracle Analytics Server integriert und zugleich umbenannt. Da sich die Standalone-Version des BI Publisher in der Version 12.2.1.4 nicht installieren ließ, kann mit dieser Version endlich der WebLogic Server 12.2.1.4 zum Einsatz kommen.

Die Installation verläuft in den typischen 4 Schritten einer Oracle Fusion Middleware-Installation. Die erforderliche Software kann von edelivery.oracle.com heruntergeladen werden. Voraussetzung ist ein JDK ab Version 8.

  1. Installation der Fusion Middleware-Infrastruktur 12.2.1.4
    (java -jar fmw_12.2.1.4.0_infrastructure.jar)
  2. Installation der Oracle Analytics Server-Software
    (java -jar Oracle_Analytics_Server_5.5.0.jar)
  3. Anlegen des Fusion Middleware Repository mit Hilfe des Utiltity rcu
  4. Anlegen der Domain, d.h. der WebLogic Server (Admin und bi_server1)

Danach kann der Oracle Analytics Publisher über die gewohnte URL
(http://hostname:9502/xmlpserver) aufgerufen werden.

Während der Installation wird kritisch angemerkt, dass die Software nicht für dieses Betriebssystem zertifiziert ist. Außerdem wird das Fehlen des Paketes glibc bemängelt. Das Paket lässt sich auch nicht in den Paketquellen von Linux Mint bzw. Ubuntu finden.
Man kann diese Warnung aber ignorieren (Skip) und das Produkt problemlos ohne das Paket installieren.

Posted in Oracle Analytics Publisher

Februar 12th, 2019 by admin_der_it_macher

 

Eine der großen Stärken des Oracle BI Publisher ist die Möglichkeit, wiederkehrende Elemente (z.B. Header und Footer) in einem Sub-Template zu definieren und dieses Sub-Template in alle Reports einzubinden. Der Vorteil besteht darin, dass die Änderung an diesen Elementen dann nur noch an einer Stelle zu pflegen ist und sich sofort auf alle aufgerufenen Berichte auswirkt.
Sub-Templates können entweder im RTF- oder im XSL-Format entwickelt werden.

Wenn man ein RTF-Sub-Template entwickelt hat, möchte man dies natürlich gerne im Word Desktop Builder testen (Preview), bevor es auf den Server kopiert wird.
Dabei stößt man allerdings in der aktuellen Version des BI Publisher auf eine Schwierigkeit, bei der die Dokumentation wenig hilft.

Deshalb hier eine kurze Beschreibung der Schritte:

  1. Erstellen des RTF-Subtemplates
    Hier reicht ein einfaches Beispiel, indem folgender Text in eine RTF-Datei
    (z.B. Subtemplate.rtf) geschrieben wird. Anstelle des Textes Mein Header kann auch ein Bild verwendet werden.
     <?template:header?>
     Mein Header
     <?end template?> 
  2. Erstellen eines Templates mit dem Aufruf des Sub-Templates
    Auch hier sollte ein einfaches Beispiel reichen, indem folgender Text in das RTF-Template geschrieben wird.
    <?import:file:C:///BI_Publisher/Subtemplate.rtf?>
    <?call-template:header?>
    <?start:body?> 
  3. Versucht man nun, das Template im Preview des Word Desktop Builders zu testen, tritt möglicherweise der folgende Fehler auf:
    oracle.xdo.XDOException: java.util.EmptyStackException
    Dieser Fehler kann entweder entstehen, weil sich im Import-Statement ein Fehler eingeschlichen hat und die Datei Subtemplate.rtf nicht gefunden wird. Wenn diese Ursache ausgeschlossen werden kann, verhindert ein Security Feature des Java Development Kit (JDK) den Zugriff auf das Sub-Template.
  4. Die Lösung besteht darin, für die Word Desktop-Umgebung den Parameter xdk-secure-io-mode in der Datei xdo.cfg auf False zu setzen. Diese Datei muss im Verzeichnis config unterhalb des Installationsverzeichnisses des Word Desktop Builders angelegt werden. Eine Beispiel-Datei xdo_example.cfg ist dort bereits vorhanden.
  5. Bei der Fehlersuche bietet der Template Viewer Unterstützung. Hier kann der Parameter direkt unter dem Reiter Settings gesetzt werden.

Danach sollte der Inhalt des Sub-Templates auch im Preview des Word Desktop Builders sichtbar sein.

Jürgen Menge (Der IT-Macher)

 

Posted in Oracle Analytics Publisher

Juli 23rd, 2018 by admin_der_it_macher

Wer kennt diese Nachricht nicht, arbeitet man als Entwickler mit dem Oracle BI Publisher und wurde einige Zeit durch ein Gespräch oder Telefonat abgelenkt.

BI Publisher Session Timeout

BI Publisher Session Timeout

War es im BI Publisher 10 g noch relativ einfach, diese Zeit heraufzusetzen, gestaltet sich das in der aktuellen Version 11 g nicht ganz so einfach.
Ein erster Versuch, den Parameter Session Timeout (in seconds) über die WLS Console in der Konfiguration des Deployments zu ändern bringt jedenfalls nicht das gewünschte Ergebnis.

Session Timeout in der WLS Console

Session Timeout in der WLS Console

Dieser Wert beträgt standardmäßig 3600 (Sekunden). Da der Timeout wesentlich früher zuschlägt, zieht dieser Wert offenbar nicht. Tatsächlich findet man in der Datei web.xml folgende Einstellung (Angaben in Minuten)

<session-config>
<session-timeout>20</session-timeout>
</session-config>

Offensichtlich kommt die erste Warnung vor dem Timeout 5 Minuten bevor der Benutzer abgemeldet wird.
Die Datei web.xml befindet sich in Abhängigkeit von der installierten Version des BI Publisher an unterschiedlichen Stellen. Man muss aber nicht mühsam danach suchen, da wir die Einstellung ohnehin nicht in der Datei ändern werden.
Stattdessen werden wir einen Deployment Plan erzeugen und den gewünschten Wert dort eintragen.
Es gibt verschiedene Möglichkeiten, einen Deployment Plan zu erzeugen (Oracle JDeveloper, Oracle Enterprise Pack for Eclipse, WLS Scripting Language, WLS Console).
Wir verwenden in diesem Fall die Web Console des WLS (http://host:port/console) und rufen zunächst die Applikation des BI Publisher ( bipublisher bzw. xmlpublisher ) unter dem Punkt Deployments auf.

BI Publisher Deployment

BI Publisher Deployment

Dann wählen wir einen beliebigen Parameter, z.B. den (wirkungslosen) Session Timeout unter Configuration aus, ändern den Wert und speichern die Änderung ab. Der WLS fordert uns nun auf, einen Deployment Plan unter dem Namen Plan.xml anzulegen.

Deployment Plan

Deployment Plan

Wir akzeptieren sowohl den Namen als auch das Verzeichnis und können danach die Console schließen. Das der WebLogic Server im laufenden Betrieb eine Kopie der Plan.xml vorhält, müssen wir zunächst den Server herunterfahren, bevor wir Änderungen in der Datei vornehmen.
Bevor wir manuelle Änderungen in der Datei Plan.xml vornehmen, sollte unbedingt eine Sicherheitskopie der Datei erzeugt werden. Sind die Änderungen fehlerhaft, startet in vielen Fällen die Anwendung nicht mehr und wir können notfalls auf die Sicherheitskopie zurückgreifen.

In der Datei Plan.xml sind folgende Ergänzungen vorzunehmen:

  1. In der Sektion <variable-definition><variable>
    <name>NewSessionValue</name>
    <value>150</value>
    </variable>
  2. In der Sektion <module-override>
    <module-descriptor external=“false“>
    <root-element>web-app</root-element>
    <uri>WEB-INF/web.xml</uri>
    <variable-assignment>
    <name>NewSessionValue</name>
    <xpath>/web-app/session-config/session-timeout</xpath>
    </variable-assignment>
    </module-descriptor>

Da wir direkt im Text ändern, muss sehr sorgfältig auf die korrekte Schachtelung der Tags und die Syntax geachtet werden.
Anschließend kann der WLS wieder gestartet werden. Danach sollte man noch einmal das Deployment der Applikation in der WLS Console auf eventuelle Fehlermeldungen überprüfen.
Im Beispiel ist der Wert auf 150 Minuten gesetzt. Hier wäre es sinnvoll, zunächst mit einem kleinen Wert (z.B. 5 Minuten) zu testen. Taucht nach dieser Zeit das Fenster mit dem Warnhinweis auf, war unser Vorgehen offensichtlich erfolgreich und wir können den Wert hochsetzen.

Möglicherweise tritt bei der Aktivierung des Deployments bzw. dem Neustart des Servers folgender Fehler im Admin Server Log auf:
java.lang.ClassNotFoundException: oracle.as.scheduler.ejb.AsyncRequestBean
In der WLS Console erscheint zudem folgende Meldung:
The configuration for bipublisher is still being loaded from your last request, please wait a moment and retry.
Die Ursache besteht darin, dass die Shared Libraries bip-shared-libraries nicht auf dem Admin Server verfügbar (targeted) sind. Die Lösung besteht darin, diese Shared Libraries auch auf dem Admin Server verfügbar zu machen (siehe dazu die Oracle Support Note 2367150.1).

Ein besonderer Dank geht an meinen ehemaligen Kollegen Michael Fuhr, der diesen Lösungsvorschlag entwickelt hat.

Jürgen Menge (Der IT-Macher)

Posted in Oracle Analytics Publisher

März 23rd, 2018 by admin_der_it_macher

Der Oracle BI Publisher bietet die Möglichkeit, mehrere gleichartige Dokumente (z.B. Abrechnungen für Mandanten) in einem Job zu verarbeiten, die Ergebnisse anschließend zu zerlegen (Bursting) und dann an die Empfänger (z.B. die Mandanten) zu verteilen.
Dokumentation zum Bursting

Dies hat den Vorteil, dass die Vor- und Nachbearbeitung pro Job nur einmal anfällt und damit die gesamte Verarbeitungszeit in der Summe der Dokumente reduziert werden kann.

Das folgende Beispiel beschreibt das Vorgehen bei der Definition und Ausführung eines Bursting Jobs.

  1. Zunächst muss das Datenmodell des Reports erstellt werden. Im Beispiel werden die Auftragsdaten (ORDERS und ORDER_ITEMS) aus dem Schema OE selektiert.
  2. Danach wird im Data Model Editor das Bursting-Kriterium definiert. In unserem Fall soll der Job nach Kunden (CUSTOMER_ID) gesplittet und ausgeliefert werden werden. Alle weiteren Angaben sind in der Bursting Query enthalten. Sie lautet in unserem Beispiel:

    select distinct „CUSTOMERS“.“CUSTOMER_ID“ as „KEY“,

    ‚Serienbrief‘ TEMPLATE,
    ‚RTF‘ TEMPLATE_FORMAT,
    ‚en-US‘ LOCALE,
    ‚PDF‘ OUTPUT_FORMAT,
    ‚FILE‘ DEL_CHANNEL,
    ‚/tmp‘ PARAMETER1,
    CUSTOMER_ID || ‚.pdf‘ PARAMETER2
    from „OE“.“CUSTOMERS“ „CUSTOMERS“

    Es gibt insgesamt 10 Parameter, die fest definiert sind. Wir verwenden nur die ersten beiden Parameter, die im Falle des Schreibens in Dateien das Verzeichnis (PARAMETER1) und den Dateinamen (PARAMETER2) repräsentieren.

    Bursting-Kriterium

    Bursting-Kriterium

  3. Danach legen wir einen Report mit einem RTF-Template an, welches den Namen Serienbrief erhält. Bei den Eingeschaften des Reports muss Enable Bursting mit dem ausgewählten Bursting-Kriterium aktiviert werden.

    Report Properties

    Report Properties

  4. Damit sind wir soweit und können den Report testen, indem wir mit der Funktion Schedule einen Job für diesen Report definieren. Auf dem Reiter Output muss die Option Use Bursting Definition to Determine Output & Delivery Destination aktiviert sein, damit die von uns definierte Bursting Query berücksichtigt wird. Alle weiteren Angaben sind optional.

    Schedule Report

    Schedule Report

  5. Der Job kann jetzt durch den Button Submit abgesetzt werden. Wir müssen einen Namen für den Job vergeben und können anschließend in der Job History nachsehen, ob der Job erfolgreich ausgeführt wurde.
    Wenn alle Angaben korrekt waren, müssten wir jetzt im Verzeichnis /tmp auf dem Server zahlreiche einzelne PDF-Dateien mit den Namen der Kunden (<CUSTOMER_ID>.pdf) finden.
    Die Job History zeigt uns auch eine detaillierte Übersicht der gesplitteten Dateien.
  6. Sollte der Job nicht erfolgreich ausgeführt werden können oder die Dateien lassen sich nicht im vorgegebenen Verzeichnis finden, kann die Diagnose eingeschaltet und der Job erneut gestartet werden.
    Diagnose

    Diagnose

    Happy Bursting !

Jürgen Menge (Der IT-Macher)

Posted in Oracle Analytics Publisher Tagged with:

März 11th, 2018 by admin_der_it_macher

 

Der Oracle BI Publisher verfügt seit vielen Jahren über ein sehr leistungsfähiges Web Service API auf der Basis von SOAP. Ich habe zusammen mit Kollegen mehrere White Paper geschrieben, die die Integration dieser Web Services in Oracle Forms und in Oracle ADF beinhalten.
Noch vor einiger Zeit bekam ich auf meine Frage nach einem REST Service API die Antwort, dass es keine Planung dafür gäbe. Umso größer war die Überraschung, dass mit dem Release 12c des BI Publisher eine REST Service-Schnittstelle veröffentlich wurde. Natürlich war die Neugier groß, das API zu testen.

Die Dokumentation ist knapp gehalten und enthält einige kleinere Fehler, die allerdings etwas zur Verwirrung beitragen. Die in der Dokumentation verwendeten Beispiele benutzen das Kommandozeilen-Werkzeug curl. Da ich mich in der Vergangenheit mit dem Postman, einer grafischen Umgebung zum Testen von REST Services angefreundet habe, wollte ich den Test mit diesem Werkzeug durchführen.
Es folgt eine kurze Beschreibung der notwendigen Schritte.

Um die REST Services nutzen zu können, muss der BI Publisher Server gestartet sein. Für die Aurufe stehen folgende HTTP-Methoden zur Verfügung.

 GET Informationen über eine Oracle BI Publisher Ressource erhalten
 POST Anlegen einer BI Publisher Ressource,
Informationen über eine Oracle BI Publisher Ressource erhalten
 PUT Aktualisieren einer BI Publisher Ressource
 DELETE Löschen einer BI Publisher Ressource

Wir beginnen zunächst mit dem GET-Aufruf einer Reports-Ressource aus dem Verzeichnis Samples des BI Publisher Repository.
Die URL für einen Bericht lautet:

http://<hostname>:9502/xmlpserver/services/rest/v1/reports/Samples%2F2.%20Features%2FLast%20Page%20Handling%2FTelecom%20Bill

Zu beachten sind die Sonderzeichen %20 für ein Leerzeichen und %2F für den Forward Slash (beginnend erst ab dem Shared Folder !!).
Zusätzlich müssen wir im Postman zwei Header Variablen definieren:

Accept = application/json
Content-Type = application/json

Für die erfolgreiche Ausführung ist eine Authentifizierung beim BI Publisher Server erforderlich. Dazu wählen wir im Reiter Authorization den Typ Basic Authentication aus und tragen sowohl den User als auch das Passwort eines berechtigten Benutzers ein. Postman erzeugt daraus ein Token und fügt es automatisch als dritte Header-Variable hinzu.
Schicken wir diesen Request als GET ab, erhalten wir in einer JSON-Struktur detaillierte Informationen (Metadaten) über den Bericht „Last Page Handling Telecom Bill“.

Wollen wir diesen Bericht per REST Call ausführen, wird es komplizierter, denn wir müssen dem Aufruf zahlreiche Parameter mitgeben. Dazu verwenden wir die POST-Methode und übergeben beim Request eine JSON-Struktur mit allen erforderlichen Angaben, analog dem Formular einer Webseite.

Die URL für den POST ist leicht abgewandelt und lautet jetzt:

http://<hostname>:9502/xmlpserver/services/rest/v1/reports/Samples%2F2.%20Features%2FLast%20Page%20Handling%2FTelecom%20Bill/run

Auch die beiden Header Variablen müssen geändert werden:

Accept =multipart/form-data
Content-Type =multipart/form-data; boundary=“Boundary_1_1153447573_1465550731355″

Die Authentifizierung bleibt unverändert.
Zusätzlich muss beim POST die zu übergebende JSON-Struktur definiert werden. Sie enthält die notwendigen Parameter des Berichts und verwendet die im Content-Type angegebene Begrenzung (boundary).

Für unseren Bericht sieht diese Struktur folgendermaßen aus:

–Boundary_1_1153447573_1465550731355
Content-Type: application/json
Content-Disposition: form-data; name=“ReportRequest“

{
„byPassCache“:true,
„flattenXML“:false,
„attributeFormat“:“pdf“,
„attributeTemplate“:“Telecom Bill Layout“
}
–Boundary_1_1153447573_1465550731355–

Sind alle diese Angaben fehlerfrei, bekommen wir beim Aufruf über die Send-Funktion des Werkzeugs den HTTP-Statuscode 200 und eine PDF-Datei als Datenstrom zurück.

POST-Methode zum Aufruf eines BI Publisher Reports

POST-Methode zum Aufruf eines BI Publisher Reports

Verwenden wir statt Send die Funktion Send and Download wird der Datenstrom heruntergeladen und mit einem PDF Viewer angezeigt.
Ein Vorteil des Werkzeugs Postman besteht darin, dass man die getesteten Aufrufe in einer Collection für die spätere Verwendung oder den Austausch über Export/Import abspeichern kann.

Jürgen Menge (Der IT-Macher)

 

Posted in Oracle Analytics Publisher Tagged with:

Januar 15th, 2018 by admin_der_it_macher

Der Oracle BI Publisher ist Teil der Oracle Fusion Middleware, so dass sich seit dem Release 12c ein standardisiertes Vorgehen bei der Installation etabliert hat.

Installation Oracle BI Publisher

Installation Oracle BI Publisher

In zahlreichen Installationen des BI Publisher habe ich mir eine bestimmte Reihenfolge der Installationsschritte angewöhnt, die ich hier kurz beschreiben möchte.

  1. Download der notwendigen Installationspakete.
    Für die Installation des Oracle BI Publisher benötigen wir maximal 3 Pakete:
    – Fusion Middleware Infrastructure Installer 12.2.1.3 (plattform-unabhängig)
    – Oracle Business Intelligence 12.2.1.3 (plattform-abhängig)
    – Oracle BI Publisher Desktop 12.2.1.3 (optional, für die Entwicklung von Templates in MS Word bzw. MS Excel)
  2. Installation der Fusion Middleware Infrastructure 12.2.1.3
    Voraussetzung ist ein aktuelles Java Development Kit 8.
  3. Installation der Software Oracle Business Intelligence 12.2.1.3 in das vorher angelegte Oracle Home. Hier sollte die Option BI Platform with Samples ausgewählt werden, da damit zahlreiche Beispiel-Berichte installiert werden.
    Obwohl bestimmte Plattformen (z.B. Ubuntu) nicht offiziell supported werden, ist eine Installation auch auf diesen Plattformen möglich. Allerdings muss man ggf. mit Fehlern auf Grund fehlender oder nicht gefundener Libraries kämpfen, die man jedoch noch während der Installation korrigieren kann.
  4. Im nächsten Schritt wird die WebLogic Domain für den BI Publisher konfiguriert. Es wird empfohlen, die dazu notwendigen Schemata in der Infrastruktur-Datenbank der Fusion Middleware während der Konfiguration und nicht vorab in einem separaten Schritt mittels Repository Creation Utility (RCU) anzulegen.
    Zu Beginn der Konfiguration kann die Option BI Publisher ausgewählt werden, wenn nur der BI Publisher genutzt werden soll.
    In der Infrastruktur-Datenbank werden die folgenden Schemata angelegt:
    – <prefix>_biplatform
    – <prefix>_opss
    – <prefix>_stb
    – <prefix>_wls
    – <prefix>_wls_runtime
    – <prefix>_iau_viewer
    – <prefix>_iau
    – <prefix>_iau_append
    – <prefix>_mds
    Als initial zu installierende Applikation sollte die Sample App Lite ausgewählt werden.
    Im Ergebnis der Konfiguration werden ein Admin Server sowie ein Managed Server bi_server1 im Cluster bi_cluster angelegt.

Nach der erfolgreichen Installation des Oracle BI Publisher habe ich mir angewöhnt, anschließend noch einige Konfigurationsänderungen durchzuführen.

  1. Da der BI Publisher das Umschalten zwischen verschiedenen Security-Modellen erlaubt, ist es angeraten, im Menüpunkt Administration => Security einen Superuser einzurichten. Er dient als Noteingang, falls man nach dem Aktivieren eines Security-Modells sich nicht mehr beim Server anmelden kann.
  2. Hinterlegen von Username und Password in einer Datei boot.properties für den Admin Server und den Managed Server bi_server1. Das Passwort wird beim ersten Hochfahren des Servers verschlüsselt.
  3. Anpassen der Data Source demo an eine eigene Datenbank und Anlegen weiterer Data Sources bei Bedarf.
  4. Es kann zweckmäßig sein, in der Datei <bi_domain>/bidata/components/bipublisher/repository/Admin/Configuration/xmlp-server-config.xml den Debug Level auf Statement-Ebene zu setzen:
    <property name=“DEBUG_LEVEL“ value=“statement“/>
    Damit erhält man in der Console (stdout) detailliertere Informationen im Betrieb des BI Publisher Servers.
  5. Das Repository des BI Publisher besteht aus einem Report- und einem Admin-Teil. Leider kann man im Release 12c den Speicherort des Repositories bzw. der beiden Teile nicht mehr über die Web-Oberfläche ändern. Es befindet sich nach der Installation im Verzeichnis
    <bi_domain>/bidata/components/bipublisher/repository.
    Ich arbeite hier mit symbolischen Links, um das neu angelegt Repository mit den Beispiel-Berichten mit meinen Berichten aus früheren Releases zu kombinieren.

Zum Abschluss kann man optional noch den BI Publisher Desktop unter MS Windows installieren, wenn das Layout der Berichte (Templates) in MS Word oder Excel entwickelt werden soll. Die Installation selbst gestaltet sich sehr einfach durch Anklicken der ausführbaren Datei. Frühere Versionen sollten vorher über das Control Center deinstalliert werden. Die Installation sollte wenn möglich als Administrator ausgeführt werden.
Der einzige Fallstrick bei der Installation ist die Wahl der 32- oder 64-bit-Variante des BI Publisher Desktop. Auch unter einem 64-bit Windows muss die 32-bit Version der Software installiert werden, wenn die Office-Version in einer 32-bit-Variante vorliegt.

Und nun viel Erfolg bei der Installation des Oracle BI Publisher !

 

Jürgen Menge (Der IT-Macher)

 

Posted in Business Intelligence, Oracle Analytics Publisher

Januar 15th, 2018 by admin_der_it_macher

Seit Freitag gibt es eine gute Nachricht für Kunden, die eine Oracle Forms/Reports-Lizenz (OFR) einsetzen. Im Oracle Fusion Middleware Licensing Information User Manual heißt es im Abschnitt 2.17.1 „Restricted-Use Licenses“:

A license to OFR includes a restricted-use license to Oracle Business Intelligence Publisher. Use of Oracle Business Intelligence Publisher is restricted to use for production deployment purposes only. For use of Oracle Business Intelligence Publisher with application development and testing, a full use Oracle Business Intelligence Publisher, Oracle Business Intelligence EE, or Internet Developer Suite license is required

Im Klartext heißt das:

  • vorhandene Oracle Forms/Reports-Lizenzen berechtigen zur Nutzung des BI Publisher in der Produktion.
  • vorhandene Oracle Internet Developer Suite-Lizenzen berechtigen zur Entwicklung von BI Publisher-Berichten.

Dafür haben wir, Rainer Willems und ich, jahrelang gekämpft. Damit ist der Weg frei für eine kostengünstige Ablösung von Oracle Reports, für das der Support im Oktober 2020 ausläuft.

Jürgen Menge (Der IT-Macher)

Posted in Oracle Analytics Publisher, Oracle Reports

Januar 13th, 2016 by admin_der_it_macher

 

Der Post beschreibt in kurzer Form die Installation des Oracle BI Publisher 12c (12.2.1.x) im Standalone-Modus, d.h. ohne weitere Komponenten der Oracle BI Suite. Dies ist dann sinnvoll, wenn der BI Publisher als Reporting-Lösung in Verbindung mit Anwendungen (z.B. Oracle Forms, APEX, ADF) eingesetzt werden soll. Die folgende Beschreibung setzt Kenntnisse des Oracle BI Publisher voraus. Neueinsteigern wird empfohlen, sich zunächst über den BI Publisher zu informieren und danach die offizielle Dokumentation des BI Publisher zu Rate zu ziehen.

Installationsprozess

Der Installationsprozess folgt dem allgemeingültigen Vorgehen bei der Installation von Komponenten der Oracle Fusion Middleware 12c.

  1. Benötigt wird auf dem Rechner ein aktuelles 64-bit JDK (Version 8).
  2. Im ersten Schritt wird die WebLogic Server Infrastructure 12.2.1.x installiert. Die verwendete Java-Version muss auf das JDK 8 verweisen.
  3. Im nächsten Schritt werden die benötigten Software -Komponenten in ein Oracle Home installiert. Wenn man später die zahlreichen Beispiel-Reports nutzen will, sollte man bei der Auswahl der zu installierenden Komponenten die Option BI Platform with Samples auswählen.
  4. Im dritten Schritt erfolgt die Konfiguration des BI Publishers, d.h. die WLS Domain wird einschließlich der Server und ihrer Konfiguration erzeugt.
    Entsprechen die Ergebnisse nicht den Wünschen, kann dieser Schritt wiederholt werden, indem die Domain komplett gelöscht und neu erzeugt wird.
    Während der Konfiguration müssen in einer Repository-Datenbank mehrere Schemata erzeugt werden. Dies kann man mit Hilfe des Repository Creation Utility (RCU) entweder vor dem Aufruf der Konfiguration oder innerhalb des Konfigurationsprozesses tun.
    Das Utility RCU kann aus dem Verzeichnis $ORACLE_HOME/oracle_common/bin aufgerufen werden.

Ergebnisse der Installation

Im Ergebnis der Installation werden der Node Manager, der WLS Admin Server und ein Managed Server angelegt. Als Security-Modell ist Fusion Middleware Security voreingestellt. Eine erste Anmeldung ist mit den Daten des Administrators möglich.

 

 

Nacharbeiten und Besonderheiten der Version 12c

  1. Bei der Windows-Version der BI Publisher-Software werden zu Beginn der Installation (Schritt 3, siehe oben) anstelle der Option Oracle BI Publisher die Oracle BI Beans angeboten. Dabei handelt es sich offensichtlich um eine fehlerhafte Anzeige.
  2. Zunächst empfiehlt sich die Einrichtung eines Super Users im Security Tab des BI Publishers, der unabhängig von den verschiedenen Security-Modellen für die Anmeldung genutzt werden kann.
    Stellt man danach das Security-Modell auf BI Publisher um, können nach einem Restart des Servers Benutzer direkt über das User Interface des BI Publisher eingerichtet werden.
  3. Es fällt auf, dass der Speicherort des BI Publisher Repositories nicht mehr über das User Interface geändert werden kann. Auch eine Trennung zwischen dem Reports- und dem Admin-Teil des Repositories ist so nicht mehr möglich.
    Will man dennoch das Repository an einem anderen Speicherort verwenden, so kann man dies in der Datei
    $DOMAIN_HOME/config/fmwconfig/bienv/core/bi-environment.xml
    durch die Änderung des Parameters <bi:singleton-data-directory> erreichen
    (siehe http://docs.oracle.com/middleware/1221/biee/BIESG/cluster.htm#BIESG9273).
    Wird diese Datei nicht gefunden, können folgende JVM-Parameter (z.B. in der Datei setDomainEnv.sh) gesetzt werden:
    -DXDO_FONT_DIR={path_to_font_directory}/fonts
    -Dxdo.server.config.dir={path_to_bip_repository}
    -Dxdo.server.resource.type=file
    -Dxdo.obischema=false
    Ich habe eine relativ einfache Lösung durch die Verwendung von symbolischen Links gewählt und konnte damit auch Reports- und Admin-Teil des Repositories voneinander trennen.
  4. Installiert man testweise die Domain für den BI Publisher auf einem Rechner, auf dem bereits eine Domain mit Oracle Forms und Reports existiert, kann es zu einem Konflikt zur Laufzeit kommen.
    Das Problem entsteht dann, wenn die Domain mit Forms und Reports im Development Mode angelegt wurde. Da man während der Installation des Oracle BI Publisher diese Option nicht auswählen kann, wird die BI Domain im Production Mode angelegt.
    Dies führt dazu, dass der unter beiden Domains liegende Middleware Cache (Coherence ) sich weigert, Server aus Domains in unterschiedlichen Modi zu starten. Man wird also immer nur die Server einer Domain starten können und bekommt beim Versuch, die Server der zweiten Domain zu starten, eine Fehlermeldung. Dieser Fehler tritt meist dann auf, wenn man die Integration von BI Publisher Reports in Oracle Forms testen will.
    Die einfache Lösung besteht darin, den Mode einer der beiden Domains umzustellen.

Jürgen Menge (Der IT-Macher)

Posted in Oracle Analytics Publisher