Developer-Changelog
Diese Seite zeigt Änderungen, die in den Releases der einzelnen Versionen enthalten sind und für BPC Modulentwickler relevant sind.
Für die Auflistung aller Änderungen siehe Changelog.
BPC 5.0.1
Release Datum: 2025-11-24
Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module
Verbesserungen
-
Bessere Testbarkeit von Comboboxen BPC-10196
Die Werte der verschiedenen Optionen in Comboboxen werden nun nicht mehr pauschalt durch ein
ergänzt. Dies erleichtert das automatisierte Testen der Oberflächen.Betrifft: BPC Core |
-
Code löschen, der als Deprecated und Marked for Removal gekennzeichnet ist BPC-10243
Code, der als deprecated markiert war, wurde aus BPC entfernt.
Betrifft: BPC Core |
BPC 5.0.0
Release Datum: 2025-10-24
Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | Karaf
Breaking Changes
|
Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen. |
-
Harmonisierung der Schnittstellen für verschiedene Monitor Funktionen BPC-9770
Die Query String Parameter
gridId,gridExtId,multiRecords,buttonIdund der Form ParametertablePrefixwurden aus den Prozess Aktion Anfragen entfernt. Um zusätzliche Kontext- oder Konfigurationsinformationen mitzusenden, kann "Prozessaktions-Metadaten" in den Monitor-Einstellungen konfiguriert werden.In Prozess Startern wurde das mitgesendete XML durch JSON ersetzt. Dadurch wurden
portletArchiveName,operation,mandant,gridID,key,bpcModule,bpcModuleInstanceIdundcustomentfernt.keywurde einheitlich zuidumbenannt. Zusätzliche Kontext- oder Konfigurationsinformationen können durch die "metadata" Konfiguration in der Prozesstarter-Konfiguration in den Monitor-Einstellungen zuverlässig mitgesendet werden. Die Prozessparameter sind gebündelt unter config.parameters im Request Payload zu finden. Fileuploads enthaltenfilename,typeunddata. Grids enthalten eine Liste mit ihren Records.Bei Change State wurden
tablePrefix,mandantundchangeStatusBox_<Spaltenname>entfernt.commandwurde einheitlich umbenannt zutypeund erhält den Wert "statusChange".columnsstringwurde umbenannt zucolumn.newStatusCombo_<Spaltenname>wurde umbenannt zunewStatus.commentfieldwurde umbenannt zucomment.childStatuswird nicht mehr per Default in der Change State Konfiguration auf "Info" gesetzt und wird, falls konfiguriert, nach metadata migriert. Im "metadata" Objekt in der Change State Konfiguration können zusätzliche Informationen übergeben werden.Die ungenutzten Einstellungen
inubit_aperakEndPoint,inubit_dbGridIdundinubit_pmMandantwurden entfernt. Die Einstellungeninubit_actionEndpoint,inubit_changeStateEndpointundinubit_VpsEndpointwurden durchactionEndpointProcessor,changeStateEndpointProcessorundvpsEndpointProcessorersetzt.Betrifft: BPC Core | Process Monitoring | Dokumentation |
-
Eingeschränkte Weiterleitung von Session-Informationen BPC-9925
HTTP-Proxy Backend-Connections und Flow-Verbindungen filtern jetzt stets den Session-Cookie, damit ein Empfänger nicht im Kontext des Benutzers Aufrufe im BPC tätigen kann. Die Einstellung
filterSessionCookieentfällt somit. Stattdessen gibt es mit der neuen EinstellungsendSessionIddie Möglichkeit, die Session-ID des Benutzers mitzuschicken, welche am EndpunktGET /cxf/bpc-core/authentication/session/{sessionid}überprüft werden kann. Bei aktivierter EinstellunginjectUserSessionJWTwird nun nicht mehr ein selbst-erstellter JWT mitgeschickt, sondern der signierte ID-Token des OpenID Connect Providers gesendet. Genaueres können Sie in Backend Connections - HTTP-Proxy nachlesen.Betrifft: BPC Core | Dokumentation |
-
Umbennenung von childs zu children im Log Service Payload BPC-8478
Benutzer der Log Service API müssen in ihren POST-Daten alle Vorkommen von
childsdurchchildrenersetzen. Innerhalb einer Übergangszeit kannchildseingehend noch verwendet werden. Diese Rückwärtskompatibilität wird in einem folgenden Release entfernt. Auch ist darauf zu achten, dass in den Rückantworten der Log Service Endpunkte nunchildrenanstattchildsenthalten ist.Betrifft: BPC Core |
Neue Funktionen
-
OpenAPI Spezifikation für REST API BPC-8513
Mit diesem Update ist es erforderlich, den Karaf zu aktualisieren.
Betrifft: BPC Core | Dokumentation | Forms | Karaf |
-
BPC Deeplinks über LogService BPC-8798
Man kann sich über die Log Service API direkt in die Log Service Konfiguration oder zu angebundene Monitore weiterleiten zu lassen. Dazu gibt es gibt zwei neue LogService Endpunkte, welche den Benutzer beim Aufruf auf die entsprechenden BPC Seiten weiterleiten:
-
zum öffnen der Admin Seite einer LogService Instanz:
http://<bpc_host>:<bpc_port>/cxf/bpc-logservice/<logservice-instance-id>/open/logservice -
zum öffnen eines Monitors (ohne Filter)
http://<bpc_host>:<bpc_port>/cxf/bpc-logservice/<logservice-instance-id>/open/monitor -
zum öffnen eines Monitors (mit Filter)
http://<bpc_host>:<bpc_port>/cxf/bpc-logservice/<logservice-instance-id>>/open/monitor?instance.id=foobar
Siehe auch API Dokumentation: Log Service API
Betrifft: BPC Core | Dokumentation |
-
-
Es ist nun möglich beim Schreiben von Audit-Informationen Referenzen auf externe Ressourcen anzugeben. So kann zum Beispiel auf die IGUASU-Instanz verwiesen werden, die den Eintrag erzeugt hat.
Betrifft: BPC Core | Dokumentation |
-
Neuer Setting Type zur Auswahl von Modulinstanzen aus mehreren Modulen (Flow & Backend Connections) BPC-9289
Es wurde ein neues Setting hinzugefügt, mit dem sich die Endpunkte bzw. Prozessoren von Flow & Backend Connections auswählen lassen. Die Auswahl generiert eine BPC URL nach dem Schema bpc://<flow/backendconnection>/<instanceId>/<endpointOrProcessor>. Es gibt jeweils Settings für Prozess Aktionen, Prozess Starter und Change State.
Betrifft: BPC Core | Process Monitoring |
-
Validierungsergebnisse im `state` BPC-8481
Ergebnisse aus der Validierung werden nun im
statevorgehalten. Dadurch können diese z.B. auch für Bindungs verwendet werden. Siehe auchvalidateBetrifft: Forms |
Verbesserungen
-
Editor mit SQL Support BPC-9351
Das Setting
Common Table Expression Abfragein der Replikation kann nun in einem Editor bearbeitet werden, der SQL Syntax unterstützt.Betrifft: BPC Core |
-
Überarbeitung von Link-Benachrichtigungen BPC-9624
Für Benachrichtigungen gibt es nicht mehr den Typen 'link', stattdessen können alle Benachrichtigungen nun Verlinkungen angeben. Dafür wird das Feld
linkDataverwendet (davortypeSpecificData). Für Verweise auf externe Webseiten wird weiterhin das Feldurlverwendet, für BPC-interne Navigationen wird nun die Hash-Komponente der BPC-URL im Feldnavigationangegeben. Weiteres lesen sie in Benachrichtigungstypen und unter Notification API nach.In der Benachrichtigungsoberfläche (BPC → Konfiguration → Übersicht → Benachrichtigungen) kann nun auch eine Verlinkung konfiguriert werden (siehe Benachrichtigungen an Anwender).
Betrifft: BPC Core | Dokumentation |
-
Harmonisierung der Schnittstellen für verschiedene Monitor Funktionen BPC-9770
Die Query String Parameter
gridId,gridExtId,multiRecords,buttonIdund der Form ParametertablePrefixwurden aus den Prozess Aktion Anfragen entfernt. Um zusätzliche Kontext- oder Konfigurationsinformationen mitzusenden, kann "Prozessaktions-Metadaten" in den Monitor-Einstellungen konfiguriert werden.In Prozess Startern wurde das mitgesendete XML durch JSON ersetzt. Dadurch wurden
portletArchiveName,operation,mandant,gridID,key,bpcModule,bpcModuleInstanceIdundcustomentfernt.keywurde einheitlich zuidumbenannt. Zusätzliche Kontext- oder Konfigurationsinformationen können durch die "metadata" Konfiguration in der Prozesstarter-Konfiguration in den Monitor-Einstellungen zuverlässig mitgesendet werden. Die Prozessparameter sind gebündelt unter config.parameters im Request Payload zu finden. Fileuploads enthaltenfilename,typeunddata. Grids enthalten eine Liste mit ihren Records.Bei Change State wurden
tablePrefix,mandantundchangeStatusBox_<Spaltenname>entfernt.commandwurde einheitlich umbenannt zutypeund erhält den Wert "statusChange".columnsstringwurde umbenannt zucolumn.newStatusCombo_<Spaltenname>wurde umbenannt zunewStatus.commentfieldwurde umbenannt zucomment.childStatuswird nicht mehr per Default in der Change State Konfiguration auf "Info" gesetzt und wird, falls konfiguriert, nach metadata migriert. Im "metadata" Objekt in der Change State Konfiguration können zusätzliche Informationen übergeben werden.Die ungenutzten Einstellungen
inubit_aperakEndPoint,inubit_dbGridIdundinubit_pmMandantwurden entfernt. Die Einstellungeninubit_actionEndpoint,inubit_changeStateEndpointundinubit_VpsEndpointwurden durchactionEndpointProcessor,changeStateEndpointProcessorundvpsEndpointProcessorersetzt.Betrifft: BPC Core | Process Monitoring | Dokumentation |
-
Klassen für Menu-Buttons für geringeren Pfeil-Abstand BPC-10060
An Buttons können nun die Klassen
arrow-spacing-sm(small) undarrow-spacing-xs(extra small) genutzt werden, um den Abstand des Pfeils zu reduzieren.Betrifft:
-
Backend Bundles sollten keine feature.xml enthalten BPC-10115
Für BPC Modul Entwickler:
Wenn in den Modul-Sourcen eine
feature/feature.xmlverwendet wird, dann bitte in derpom.xmlden folgenden resource-Block entfernen:<resources> ... <resource> <directory>src/main/feature</directory> <filtering>true</filtering> <targetPath>${project.build.directory}/feature</targetPath> </resource> </resources>Durch diesen Eintrag wurde die
feature.xmlals Ressource festgelegt und mit in die JAR-Datei eingebettet. Das ist nicht notwendig.Allerdings muss trotzdem noch das
maven-resources-pluginverwendet werden um Platzhalter in derfeature.xmlzu ersetzen.Dazu folgendes Plugin-Aufruf hinzufügen:
<plugins> <!-- Replace the placeholders in the feature.xml file --> <!-- Documentation : https://maven.apache.org/plugins/maven-resources-plugin/ [https://maven.apache.org/plugins/maven-resources-plugin/] --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>${maven-resources-plugin.version}</version> <executions> <execution> <id>copy-feature-file</id> <phase>generate-resources</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/feature</outputDirectory> <resources> <resource> <directory>src/main/feature</directory> <filtering>true</filtering> </resource> </resources> </configuration> </execution> </executions> </plugin> ... </plugins>Betrifft: BPC Core | Process Monitoring | Data Analysis | Forms |
-
Umbennenung von childs zu children im Log Service Payload BPC-8478
Benutzer der Log Service API müssen in ihren POST-Daten alle Vorkommen von
childsdurchchildrenersetzen. Innerhalb einer Übergangszeit kannchildseingehend noch verwendet werden. Diese Rückwärtskompatibilität wird in einem folgenden Release entfernt. Auch ist darauf zu achten, dass in den Rückantworten der Log Service Endpunkte nunchildrenanstattchildsenthalten ist.Betrifft: BPC Core |
-
Event Erstellung von der veralteten Dictionary auf Map umstellen BPC-9483
Beim Event Handling sollte
Mapanstelle vonDictionaryverwendet werden.Betrifft: BPC Core |
Security
-
Eingeschränkte Weiterleitung von Session-Informationen BPC-9925
HTTP-Proxy Backend-Connections und Flow-Verbindungen filtern jetzt stets den Session-Cookie, damit ein Empfänger nicht im Kontext des Benutzers Aufrufe im BPC tätigen kann. Die Einstellung
filterSessionCookieentfällt somit. Stattdessen gibt es mit der neuen EinstellungsendSessionIddie Möglichkeit, die Session-ID des Benutzers mitzuschicken, welche am EndpunktGET /cxf/bpc-core/authentication/session/{sessionid}überprüft werden kann. Bei aktivierter EinstellunginjectUserSessionJWTwird nun nicht mehr ein selbst-erstellter JWT mitgeschickt, sondern der signierte ID-Token des OpenID Connect Providers gesendet. Genaueres können Sie in Backend Connections - HTTP-Proxy nachlesen.Betrifft: BPC Core | Dokumentation |
Interne Abhängigkeiten / Dependency Updates
-
Der Core wird nun nicht mehr in alte ECMAScript transpiliert und es werden keine Polyfills mehr hinzugefügt. Damit wird eine Unterstützung neuerer Sprachfeatures ermöglicht. Dies bedeutet, dass auch ExtJS-Packages in ihrer
packages/local/PACKAGENAME/package.jsonfolgenden Inhalt haben sollten:{ "...", "compressor": { "polyfills": "none" }, "language": { "js": { "output": "ANY" } }Betrifft: BPC Core | Process Monitoring | Process Dashboard | Data Analysis | Forms |