Oracle® Fusion Middleware

Release Notes for Business Intelligence

Release 12.2.1.4.0

E91530-04

September 2019

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers that have purchased support have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.

Oracle Business Intelligence Release Notes

Learn about the issues you may encounter when using Oracle BI Enterprise Edition and Oracle BI Publisher, and how to work around them.

Compatibility of Oracle Business Intelligence with Oracle Fusion Middleware

Understand the compatibility of Oracle Business Intelligence with Oracle Fusion Middleware.

You must install Oracle Business Intelligence 12c (12.2.1.4.0) with Oracle Fusion Middleware 12.2.1.3.0. You can't install Oracle Business Intelligence 12.2.1.4.0 in the same Oracle Home directory as Oracle Fusion Middleware 12.2.1.4.0.

Obtaining Patches from My Oracle Support

Periodically, Oracle Business Intelligence patches are released.

To learn more about the patches and find the available patches for your environment, see Obtaining Patches Required For Your Installation in Patching with OPatch.

Apply the following patches to the WebLogic Server: Patch numbers 27823500, 27401639, and 27479453. The Node Manager doesn't work with a non-Oracle database unless you apply these patches.

Error Accessing Reports in a High Availability Environment

In a high availability environment, users accessing reports from the Oracle BI EE search results might receive Page not found errors.

To work around this issue, go to the report URL and replace the alias host name (for example, bihost1) with the physical host name.

Initialization Block for E-Business Suite Displays NQS Error Message

While creating a database object and connection pool for the Oracle E-Business Suite database, in the Oracle BI Administration Tool’s Session Variable Initialization Block dialog, with Database as the Data Source Type, and Default initialization string selected, if you click Test, an expected error displays. The error message is [nQSError: 23006] The session variable, NQ_SESSION.ICX_SESSION_COOKIE, has no value definition.

The error is expected. The Test button command only works when the user links from the E-Business Suite, and the browser supplies the ICX cookie.

Integration with and Migration from Oracle BI Discoverer Is Not Supported

Oracle Business Intelligence 12c does not provide support for integrating with or migrating from Oracle BI Discoverer.

You can ignore any mentions of such integration or migration in the documentation set. For example, Chapter 8, Using Discoverer Data in Applications, in Integrator's Guide for Oracle Business Intelligence Enterprise Edition is not applicable for Oracle Business Intelligence 12c.

Reconfiguring Custom Messages in the BI Sample Application After Upgrade

When you upgrade to a new version of Oracle BI Enterprise Edition, custom messages in the sample application are overwritten.

When the BI Sample Application is upgraded, any customized messages saved to the reference file signin.html and message file logonmessages.xml are overwritten with the system default messages.

Note:

For migration scenarios, the same two files must be replaced from Oracle BI Enterprise Edition 11g to 12.2.1.x.

You can back up your customized messages and add them to the new customization files after you upgrade.

  1. Back up the following Oracle BI Enterprise Edition 12.2.1.x files that you have customized:
    • On UNIX: $ORACLE_HOME/bi/bifoundation/web/msgdb/l_en/messages/logonmessages.xml and $ORACLE_HOME/bi/bifoundation/web/msgdb/pages/common/signin.html
    • On Windows: %ORACLE_HOME%\bi\bifoundation\web\msgdb\l_en\messages\logonmessages.xml and%ORACLE_HOME%\bi\bifoundation\web\msgdb\pages\common\signin.html
  2. After you have upgraded to the most recent version, reapply the custom messages in the logonmessages.xml and signin.html files:
    • On UNIX: $NEWORACLE_HOME/bi/bifoundation/web/msgdb/l_en/messages/logonmessages.xml and $NEWORACLE_HOME/bi/bifoundation/web/msgdb/pages/common/signin.html
    • On Windows: %NEWORACLE_HOME%\bi\bifoundation\web\msgdb\l_en\messages\logonmessages.xml and %NEWORACLE_HOME%\bi\bifoundation\web\msgdb\pages\common\signin.html
  3. Stop then start the services.

Exported BAR Files Don't Include Data Files

When you back up an instance into an Oracle Business Intelligence application archive (BAR) file, data files that you uploaded aren't included in the BAR file.

When you import the BAR file into a target system, only the metadata for the data files is imported, rather than the data files themselves. To work around this issue, upload the data files into the target system after importing the BAR file.

Starting Oracle BI Server in Oracle Business Intelligence 12.2.1.4.0 on IBM AIX Might Fail

After you install Oracle Business Intelligence Release 12.2.1.4.0 on IBM AIX, you might notice a failure when starting the Oracle BI Server.

You might see error text such as the following in the log file for the obis1 instance:

[nQSError: 46136] Could not load CSF library
libnqcsfwrapper64.so. [[
file: server/Utility/Generic/Src/SUGCSF.cpp; line: 291

Oracle Business Intelligence Release 12.2.1.4.0 is bundled with the IBM AIX Database Client Release 12.1.0.2.0. The issue of Oracle BI Server not starting is related to the I/O completion ports (IOCP) API symbols dependency in that IBM AIX client library.

To work around this issue for IBM AIX on POWER Systems (64-bit), enable the IOCP module before you install Oracle Business Intelligence. To enable the IOCP module, set the IOCP module to Available, as described in the documentation for your IBM AIX system. Ensure that you restart the system after making the setting.

To check if the IOCP module is enabled, run the lsdev command as in the following example: $ lsdev | grep iocp

The following sample output shows that IOCP module status is Defined (the default), which means Disabled:

iocp0      Defined       I/O Completion Ports

BI Composer Unavailable in SSL Configuration

If your Oracle BI EE system is running with an SSL configuration, then you can't use BI Composer functionality.

This issue has no workaround.

IBM Informix Dynamic Server Not Supported as a Data Source for Oracle  BI on Solaris x86-64

DataDirect Connect ODBC drivers and driver managers for connecting to IBM Informix Dynamic Server (DS) databases aren't available for the Solaris X86-64 operating system. If your Oracle BI instance is running on the Solaris x86-64 operating system, then you can't use IBM Informix Dynamic Server as a data source.

For information on DataDirect drivers, see Configuring the DataDirect Connect ODBC Driver for Informix Database in Metadata Repository Builder's Guide for Oracle Business Intelligence Enterprise Edition.

Known Issues with Oracle Essbase Database Connections and Data Sources

The Oracle Essbase database connection type and Oracle Essbase data sources have a number of known issues.

  • Searching for a specific column within an Oracle Essbase data source displays a "No Matches Found" message.

  • When you click an Oracle Essbase data source column from the BI Ask search results, you'll see an "Error Loading Data" message.

  • The Advanced Analytics functions don't work for Oracle Essbase data sources.

  • If you create an Oracle Essbase connection and provide invalid login information, you'll see this incorrect error message:"Failed to save the connection. JDS - Invalid syntax." The error message should state "Failed to save the connection due to an invalid user name and password.”

  • When creating an Oracle Essbase connection, you can choose the Require users to enter their own username and password authentication option, but Oracle Data Visualization Desktop doesn’t activate this behavior and instead authenticates all users with the user name and password that you specified.

  • Time-based columns are sometimes not imported correctly. A column displaying a date in text can’t be converted to a column of date data type because of format mismatch.

  • Oracle Essbase data sources don’t work in data flows.

  • When working in a project, you can’t use match columns to join an Oracle Essbase data source to any other data source included in the project.

  • When you import an Oracle Essbase data source, you can’t prepare the data, and you can’t edit the data after import. For example, you can't change a column’s data type or aggregation.

Null Values in XLSX File Set to String

If you're adding an XLSX file as a data source and if the spreadsheet’s null values are expressed as hyphens, then Data Visualization treats the null values as strings irrespective of the other values in the column.

To work around this issue, remove the hyphens from the column and try to import the XLSX file again.

Error Importing XLSX Files Generated from Microsoft Access

Importing an XLSX file generated from Microsoft Access can sometimes fail. Data Visualization can interpret such XLSX files as headerless or even empty.

Perform the following procedure to work around this issue.
  1. Open the Access-outputted XLSX file in Microsoft Excel.
  2. Select a cell.
  3. Make and reverse a change. For example, select the top left cell, type an X, and then remove the X.
  4. Save the file.
You can now import this modified file successfully into Data Visualization.

Error Creating a Data Set from a Microsoft Access Database Containing Spaces

If you're creating a data set from a Microsoft Access database and the database contains schema, table, or column names with spaces (for example, Asset Category rather than AssetCategory), then you get an error and the creation of the data source fails.

Perform the following procedure to work around this issue.
  1. Open the database in Microsoft Access.
  2. Remove the offending spaces.
  3. Save the database.
  4. Build the data source again.

Bidirectional Languages Aren't Supported

Oracle Data Visualization Desktop doesn’t support bidirectional languages, such as Arabic and Hebrew.

This issue has no workaround.

Connection Not Found Error Message After Importing Project and Opening Oracle Database Data Flow

If you import a project that is sourced from an Oracle Database then try to open the data flow, you might see an error message that connection can't be found.

To work around this issue, click the connection name, select it again, and save and reopen the data flow.

Time Series Forecast Step in a Data Flow Fails for Insufficient Number of Historical Values

The Time Series Forecast step requires a minimum number of historical values for every group to be forecasted; otherwise, the step produces an error when the data flow is previewed and executed.

All columns except for the selected Target and Time columns will be used for grouping, which can create a large number of groups if the columns aren’t selected prior to the Time Series Forecast Step. To work around this issue, select the appropriate columns for the Time Series Forecast Step before previewing or executing the step.

Oracle Business Intelligence Analyses and Dashboards Issues and Workarounds

This section describes issues and workarounds for Oracle Business Intelligence analyses and dashboards.

Treemap View Fails to Download in PDF, Excel, or Powerpoint Format

If an analysis includes a treemap view, you can’t properly export the results to Adobe Acrobat, Microsoft Excel, or Microsoft Powerpoint unless Oracle BI EE was installed with the correct version of the Java Development Kit (JDK).

To work around this issue, install JDK 1.8.0.60 on the Oracle BI Server machine. The JDK version must be 8u60 Build b10 or later. You must install JDK before you install Oracle BI EE.

Archiving and Unarchiving Dashboards Loses Links for Analyses

When you archive a dashboard and unarchive it on another server, you might notice that some or all links below analyses on that dashboard are missing.

To work around this issue, ensure that the catalog folders and objects on the destination server match the structure on the original server.

Prompt Value Reset to All Column Values

You can create prompts and make every prompt dependent on all other prompts.

When you then select a value in a prompt, the query for each prompt is recreated. You might find that the previously selected value of some prompts is reset to "All Column Values," and the query returns no results. To work around this issue, don't make all prompts dependent on each other.

Oracle BI Publisher Issues and Workarounds

This section describes issues and workarounds for Oracle BI Publisher.

Bar Charts Showing Time on the X-Axis Don’t Display Axis Labels Correctly

When an Oracle BI Publisher report using BI Publisher Template (.xpt) includes a bar chart and if Time is represented along the x-axis, then the x-axis labels aren’t displayed properly.

The first label entry is skipped and the first bar data appears glued to the y-axis. This issue is caused by a limitation in the data visualization libraries that Oracle BI Publisher uses to generate the chart.
  1. In the data model SQL query for the report, use the TO_CHAR method on the date/time fields to change the data type of the field from Dateto String.
  2. Open the report in the Layout Editor.
  3. Select the chart and expand the Properties pane.
  4. Turn off the Time Series setting and clear the settings for Day, Month, Year, and Time formats.
  5. Save the layout changes.

BI Publisher Displays PDF File Error Message when Printing with ScheduleService Web Service

When you use the ScheduleService web service in BI Publisher to print a document as PDF, you might see an error message such as Document is not a PDF File.

This issue occurs only if you've configured the PDFtoPostScript filter to print the file to a Postscript printer. After converting a PDF file into a Postscript file, BI Publisher doesn't change the content type from application-pdf to application/octet-stream in the web service.

To work around this issue, set the contentType to application/octet-stream in the DeliveryRequest parameter of the web service.

Some Documentation for Oracle BI Publisher and Oracle BI Enterprise Edition Is No Longer Being Updated

This issue addresses documentation for Oracle BI Publisher and Oracle BI Enterprise Edition that is no longer updated.

The following documentation is no longer being updated within the guides themselves. See this and future Release Notes for updates to these documents:

System Requirements and Specifications Guide

The following issues address System Requirements and Specifications Guide.

System Requirements and Specifications Guide Needs Update for Required Packages for IBM AIX Operating System

Oracle Fusion Middleware System Requirements and Specifications Guide includes a section on requirements for the IBM AIX operating system.

That section includes a table with a row for version 7.1 (Update 1). In that row, the values:

  • xlC.aix61.rte (version 12.1.0.1+)

  • xlC.rte (version 12.1.0.1+)

must be replaced with

  • xlC.aix61.rte (version 13.1.0.1+)

  • xlC.rte (version 13.1.0.1+)

Oracle BI Administration Tool Documentation

The following issues address documentation for Oracle BI Administration Tool

Online Help for Oracle BI Administration Tool Is No Longer Updated

The Oracle BI Administration Tool online help is no longer being updated.

Refer to About the Oracle BI Administration Tool in Metadata Repository Builder's Guide for Oracle Business Intelligence Enterprise Edition for current information about current functionality in the Oracle BI Administration Tool, and the Release Notes for documentation updates.

Correction to Help Topic in New Features Section

The Help topic New Command Line Utilities in the section New Features for Oracle BI EE 12c Release (12.2.1) contains two duplicate entries.

The commands Delete Application Role Command and Rename Application Role Command should only be listed once each.

Developer's Guide for Oracle Business Intelligence Enterprise Edition

The following issues address the Developer's Guide for Oracle Business Intelligence Enterprise Edition.

Documentation About Creating and Using Impersonate User is Incorrect

In Developer's Guide for Oracle Business Intelligence Enterprise Edition, Chapter 1 Embedding Business Intelligence Objects in ADF Applications, the How to Create and Use Impersonate User section is inaccurate.

You must use the following procedure instead:
Configuring the Impersonate User in Oracle Business Intelligence 12c

The 11g oracle.bi.server.impersonateUser permission does not exist in 12c. To create a user or application role with permission to impersonate, you must create a permission grant using the Resource Type oracle.bi.user, with a name of an asterisk (*) and an action of impersonate.

Note:

You can choose to grant the newly created permission to either an application role or a user. In this example we choose user.
  1. Connect to Fusion Middleware Control for your Oracle BI EE instance using an administration account.
  2. From the Weblogic Domain menu, select Security.
  3. Click Application Policies.
  4. Click Create to display the Create Application Grant page.
  5. In the Permissions section, click Add (+).
  6. Select Resource Types.
  7. Select oracle.bi.user from the Resource Type list.
  8. Click Continue to display the Add Permission dialog.
  9. Enter an asterisk (*) in the Resource Name field.
  10. Select impersonate in the Permission Actions section.
  11. Click Select.
    You now add a new grantee.
  12. In the Grantee section click Add (+) to display the Add Principal dialog.
  13. Select User from the drop down list.
  14. Select Includes from the Principal Name list, and enter an asterisk (*) into the field.
  15. Click the search arrow icon (>) to display a list of users.
  16. Select the user you want to give the permission to and click OK.
    This example uses weblogic.
  17. Click OK on the Create Application Grant page.
    This gives the impersonate permission to the user.
Documentation Is Incorrect About Which WSDL Version to Use

In Integrator's Guide for Oracle Business Intelligence Enterprise Edition, Chapter 1 Introduction to Oracle Business Intelligence Web Services, the What are the Oracle Business Intelligence Session-Based Web Services? section requires updates.

The last paragraph suggests that depending on your client version, you access the WSDL document using one of the following Oracle BI EE web services URLs:

http://host:port/analytics-ws/saw.dll/wsdl/v6

http://host:port/analytics-ws/saw.dll/wsdl/v7

This paragraph should not mention v6 or v7, but should state that for Oracle BI EE 12c, if you want to develop new code or recompile existing code, you should use version 12 (or later) of the Oracle BI EE web services URL. For example:

http://host:port/analytics-ws/saw.dll/wsdl/v12

Documentation Mentions of Catalog Groups Are No Longer Applicable

Starting with Release 12c (12.2.1.1.0), catalog groups have been removed.

Scheduling Jobs Guide for Oracle Business Intelligence Enterprise Edition and Integrator's Guide for Oracle Business Intelligence Enterprise Edition mention catalog groups. The mentions of catalog groups in these guides are no longer applicable.

In particular, the following methods are deprecated for Oracle BI releases 12.2.1.2.0, 12.2.1.3.0, and 12.2.1.4.0:
Method Section Purpose Deprecated Result
getGroups() 3.13.6 of Integrator's Guide for Oracle Business Intelligence Enterprise Edition Gets a list of catalog groups that are members of the account (for example, user or group). Returns a response such as "getGroups operation is not supported/deprecated".
getMembers() 3.13.7 of Integrator's Guide for Oracle Business Intelligence Enterprise Edition Gets direct members of the catalog group. Returns a response such as "getMembers operation is not supported/deprecated".
Integrator's Guide for Oracle Business Intelligence Enterprise Edition Requires Updates

This issue addresses updates to portions of Integrator's Guide for Oracle Business Intelligence Enterprise Edition, which is no longer being updated.

The following sections address updates to Integrator's Guide for Oracle Business Intelligence Enterprise Edition.

Section 5.3 - Configuring the Action Framework

The statement preceding Table 5.3 currently states:

The Oracle BI EE installation contains a configuration file named ActionFrameworkConfig.xml. You manually edit this configuration file to specify how you want the Action Framework to behave. This configuration file is located by default in the following location:<Oracle Middleware Home>\user_projects\domains\bifoundation_domain\config\fmwconfig\biinstances\coreapplication

This is an error. The configuration file is located by default in the following location:

<Oracle Middleware Home>\user_projects\domains\bi\config\fmwconfig\biconfig\actions

Section - 9.2.3 Updating instanceconfig.xml

Step 2 of this procedure currently states that the instanceconfig.xml file is here:

ORACLE_INSTANCE/config/OracleBIPresentationServicesComponent/coreapplication_o bipsn.

In 12c, the instanceconfig.xml file is here:

BI_DOMAIN/config/fmwconfig/biconfig/OBIPS

Section - 9.3.6 Setting Up a Profile

Step 5 of this procedure currently states:

5. On the resulting screen, under Responsibility, enter the Oracle Business Intelligence URL. For example:
http://my_server.domain.com:port/analytics

This is an error. The /analytics portion of this path should be left out.

Step 5 of this procedure should state:

5. On the resulting screen, under Responsibility, enter the Oracle Business Intelligence URL. For example:
http://my_server.domain.com:port

Section 9.3.7 - Navigating from E-Business Suite to Oracle Business Intelligence

Step 4 of this procedure currently states:

4. In the Menu field, select the menu that you created in Section 9.3.3, Creating a Menu That Invokes the Form Function (for example, OBIEE).

The Form Function is invoked that links to Oracle Business Intelligence.

Step 4 of this procedure should state:

4. In the Menu field, select the menu that you created in Section 9.3.3, Creating a Menu That Invokes the Form Function (for example, OBIEE).

This launches Oracle Business Intelligence

Updating authenticationschemas.xml Needs Additional Statement

In Integrator's Guide for Oracle Business Intelligence Enterprise Edition, Chapter 10 Integrating with Oracle E-Business Suite Security, the Updating authenticationschemas.xml section is incorrect for Oracle BI EE Release 12.2.1 or later.

The following statement must be added between Step 4 and Step 5:

Locate the sub-element RequestVariable source="constant" and change the value of the nameInSource attribute from ssi to the name of the service instance created during domain configuration. If not chosen explicitly, the default value is ssi. For example:

<RequestVariable source="constant" type="auth" nameInSource="ssi" biVariableName="NQ_SESSION.SERVICEINSTANCEKEY" />

If the entry doesn't already exist, then add a new entry under:

<AuthenticationSchema name="EBS-ICX">
Documentation About Setting up E-Business Suite Authentication

In Integrator's Guide for Oracle Business Intelligence Enterprise Edition, Chapter 10 Integrating with Oracle E-Business Suite, the Setting Up Authentication section is inaccurate.

Using session variables in initialization blocks for authentication in the E-Business Suite environment integrated with Oracle Business Intelligence, lightweight single sign-on (SSO) does not work in release 12.2.1.4.0. Lightweight SSO is enabled by default. See Lightweight SSO and Legacy Authentication Options in Security Guide for Oracle Business Intelligence Enterprise Edition.

You must disable lightweight SSO to continue to use session variables in initialization blocks for authentication. You should disable lightweight SSO using the disableBISingleSignOn comand. See Enabling and Disabling SSO Authentication Using WLST Commands in Security Guide for Oracle Business Intelligence Enterprise Edition.

If you must use SSO, there are other options available.

Integrating with Oracle E-Business Suite Security Chapter Requires Updates

In Integrator's Guide for Oracle Business Intelligence Enterprise Edition, Chapter 9 Integrating with Oracle E-Business Suite Security, describes how to set up Oracle Business Intelligence to use Oracle E-Business Suite security.

Some of the information in that chapter is no longer accurate and has been replaced with information in the My Oracle Support Note entitled "Integrating OBIEE 12c with Oracle E-Business Suite (EBS) Security" (Doc ID 2174747.1). See the Support Note for details on setting up Oracle Business Intelligence to use Oracle E-Business Suite security.

Scheduling Jobs Guide for Oracle Business Intelligence Enterprise Edition

The following issues address Scheduling Jobs Guide for Oracle Business Intelligence Enterprise Edition.

Documentation Mentions of Catalog Groups Are No Longer Applicable

Starting with Release 12c (12.2.1.1.0), catalog groups have been removed.

Scheduling Jobs Guide for Oracle Business Intelligence Enterprise Edition and Integrator's Guide for Oracle Business Intelligence Enterprise Edition mention catalog groups. The mentions of catalog groups in these guides are no longer applicable.

In particular, the following methods are deprecated for Oracle BI releases 12.2.1.2.0, 12.2.1.3.0, and 12.2.1.4.0:
Method Section Purpose Deprecated Result
getGroups() 3.13.6 of Integrator's Guide for Oracle Business Intelligence Enterprise Edition Gets a list of catalog groups that are members of the account (for example, user or group). Returns a response such as "getGroups operation is not supported/deprecated".
getMembers() 3.13.7 of Integrator's Guide for Oracle Business Intelligence Enterprise Edition Gets direct members of the catalog group. Returns a response such as "getMembers operation is not supported/deprecated".
Documentation About Impersonation Requires Update

Scheduling Jobs Guide for Oracle Business Intelligence Enterprise Edition, which is no longer being updated, requires an update.

Scheduling Jobs Guide for Oracle Business Intelligence Enterprise Edition is not clear regarding passwords and impersonation. When impersonation is required, don’t provide a password.

System Administration Guide for Oracle Business Intelligence

The following issues address System Administration Guide for Oracle Business Intelligence.

Corrections to Introduction to Using Oracle Essbase in Oracle Business Intelligence Chapter

In the System Administration Guide for Oracle Business Intelligence, the chapter on "Introduction to Using Oracle Essbase in Oracle Business Intelligence" needs a few corrections.

The "About the Essbase Active-Passive Topology" section states that high availability is supported using an active-passive topology. This is inaccurate; Essbase doesn't support a high availability configuration. If you need to use Oracle Essbase as part of a fail-over cluster configuration, use Essbase with EPM 11.1.2.4 with the OPMN process.

For complete documentation on Oracle Business Intelligence go to http://docs.oracle.com/en/middleware/.

Deprecated the LogonExpireMinutes Element

The Appendix on Advanced Configuration Reference mentions the LogonExpireMinutes element. This element has been deprecated. You can use the ClientSessionExpireMinutes element instead.

XML Schema Reference for Oracle Business Intelligence Enterprise Edition

The following issues address XML Schema Reference for Oracle Business Intelligence Enterprise Edition.

Clarification about RefObject Element

XML Schema Reference for Oracle Business Intelligence includes various examples of the RefObject element.

When including this element, ensure that you include both the id attribute and the qualifiedName attribute, even if the id attribute is absent from certain examples in the guide. If you omit the id attribute, then you might see a message that reads similar to could not resolve object error.

Adding Web Center Content as a Delivery Channel

The following issues address corrections to Developer's Guide for Oracle Business Intelligence Publisher.

In the Data Types in Oracle BI Publisher Web Services chapter, the following updates are required.

Add a New Data Type For Delivering Web Center Content

After section FTPDeliveryOption, add a new section called 2.3.27 WCCDeliveryOption.

Use the following two paragraphs as the description, then add the following table:

"Use this data type to define the options to set for WCC delivery of a report. The WCC server must be set up in the BI Publisher Administration pages first. To set up an WCC server see Setting Up Delivery Destinations in Developer's Guide for Oracle Business Intelligence Publisher.

"This type is used in the ArrayOfWCCDeliveryOption complex data type."

Field Description
String WCCAccount Optional. Select an account from the WebContent Server.
String WCCAuthor Optional. Enter the name of the author. If you don’t specify an author, then the value defaults to the login name of the user.
String WCCComments Optional. Enter comments to include with the document on the WebContent Server.
String WCCFileName Required. Enter the name to assign to the file on the server. For example: report.pdf.
Boolean WCCIncludeMetadata Required. Specify True to allow custom metadata to be sent with the document. Custom metadata is defined in the data model.
String WCCSecurityGroup Required. Select the security group on the WebContent Server to assign to the report.
String WCCServerName Required. Enter the name of the WebContent Server as defined in the BI Publisher Administration page.
String WCCTitle Optional. Enter a title for the report. If you don’t enter a title, then the Layout name is used as the title.

Add a New Section Called ArrayOfWCCDeliveryOption

After ArrayOfFTPDeliveryOption, add a new section called 2.3.5 ArrayOfWCCDeliveryOption.

Use the following description and table:

"Use this data type to hold an array of WCCDeliveryOption objects."

Field Description
WCCDeliveryOption [] item See Section 2.3.27 WCCDeliveryOption

Add Row For Delivering Web Center Content

In DeliveryChannels, add a row to Table 2-22 Fields Provided by DeliveryChannels, after the row "ArrayOfFTPDeliveryOption ftpOptions" using the details shown in the following table. The description should cross reference to the new section 2.3.5 ArrayOfWCCDeliveryOption:

Field Description
ArrayOfWCCDeliveryOption wccOptions See Section 2.3.5 ArrayOfWCCDeliveryOption
String JDBCDriverType Field Description Is Incorrect

In Developer's Guide for Oracle Business Intelligence Publisher, Chapter 2 Data Types in Oracle BI Publisher, the JDBCDataSource section contains an incorrect description of the String JDBCDriverType field.

The correct description of the String JDBCDriverType field is:

The driver type as String can be either jdbc or jndi.

Values for the Status Field for JobOutput and JobOutputDelivery Objects

The values that are indicated for the status field of JobOutput and JobOutputDelivery objects in Chapter 2 are incorrect in Developer's Guide for Oracle Business Intelligence Publisher.

The correct list of status values that are available through the getAllScheduledReportHistoryReturn web service are as follows.

JobOutput status values:
  • STATUS_RUNNING = 'R';

  • STATUS_SUCCESS = 'S';

  • STATUS_FAILED = 'F';

  • STATUS_CANCELLING = 'G';

  • STATUS_CANCELED = 'C';

  • STATUS_WITH_DELIVERY_ERROR = 'D';

  • STATUS_SKIPPED = 'K';

  • STATUS_WARNING = 'I'; 

  • STATUS_UNKNOWN = 'X';

JobOutputDelivery status values:

  • STATUS_FAILED = 'F';

  • STATUS_WARNING = 'I';

  • STATUS_UNKNOWN = 'X';

  • STATUS_RUNNING = 'R';

  • STATUS_SUCCESS ='S';

The Definition of getScheduledJobInfo Method is Inconsistent

In Developer's Guide for Oracle Business Intelligence Publisher, Chapter 3 ScheduleService, the getScheduledJobInfo() Method section requires updates. The signature incorrectly references the JobInfo object.

The JobInfo object is currently referenced as follows:

JobInfo getScheduledJobInfo(int jobInstanceID, String userID, String password); 

The signature should instead reference the JobDetail object as follows:

JobDetail getScheduledJobInfo(int jobInstanceID, String userID, String password);
SFTP_HOSTKEY_FINGERPRINT Property for Secure FTP Document Delivery

In Developer's Guide for Oracle Business Intelligence Publisher, Chapter 8 Using the Delivery Manager Java APIs, Table 8–8 Properties for Delivering Documents over SFTP is missing information about the SFTP_HOSTKEY_FINGERPRINT property. See the following section for the correct information.

SFTP_HOSTKEY_FINGERPRINT

Enter the MD5 fingerprint of the SSH host key in a hexadecimal string. Don’t include a delimiter such as a colon (:) to separate each byte. This property is optional.

When this property is set, the MD5 fingerprint of the host key retrieved from the server at runtime is verified to match the supplied value. If it does not match, then the connection is terminated as the fingerprint mismatch indicates that the SSH client is connecting to an unintended host, possibly as a result of a man-in-the-middle attack. When this property is not set, the connection to the host is made without host key fingerprint verification.

Supported Configuration File Properties and Elements

<hostKeyFingerprint> element is supported for <server type="sftp">

Layout Editor in BI Publisher Doesn't Support Custom JavaScript Plug-Ins

In Developer's Guide for Oracle Business Intelligence Publisher, Chapter 11 Adding Extensions to the Layout Editor mentions that you can add JavaScript plug-in extensions to the Layout Editor.

The Layout Editor doesn't support custom JavaScript plug-ins. This issue has no workaround.

Excel Output Format Value is Incorrect for the attributeFormat Field of ReportRequest

In Developer's Guide for Oracle Business Intelligence Publisher, Chapter 2 Data Types in Oracle BI Publisher Web Services, the Complex Data Types section contains an incorrect Excel output format value for the attributeFormat field of the ReportRequest data type.

The Values for attributeFormat sub-section incorrectly mentions Excel (*.xslx) instead of Excel (*.xlsx) as the output format value for the attributeFormat field.

ScheduleRequest Data Types Missing from Developer's Guide for Oracle Business Intelligence Publisher

In Developer's Guide for Oracle Business Intelligence Publisher, Chapter 2 Data Types in Oracle BI Publisher Web Services, the following field descriptions of the ScheduleRequest data type are missing.

Field Description
boolean notifyHttpWhenSkipped Optional. Specify true to send an HTTP notification when a job is skipped. Default is false.
boolean notifyWhenSkipped Optional. Specify true to send an email notification when a job is skipped. Default is false.
boolean saveOutputOption Optional. Specify true to save the report output generated by the scheduled request to a database. Default is false.
boolean scheduleBurstingOption  Optional. Specify true to enable bursting for the scheduled job. Default is false.
downloadReportDataChunk Chunk Size Is In Bytes Not In Kilobytes

In Developer's Guide for Oracle Business Intelligence Publisher, Chapter 4 ReportService, the topic for the downloadReportDataChunk() method contains an incorrect description of the int size field.

The correct description of the int size field is:

int size - The size of the file to download (in bytes).

PDF Merger Documentation

In Developer's Guide for Oracle Business Intelligence Publisher, Chapter 7 Using the BI Publisher Java APIs, the PDF Document Merger section is no longer applicable and is replaced with the following text.

Merging PDF Documents

The PDF Merger class supports merging of multiple documents to create a single PDF document. You can add page numbering, watermarks, or other background images.

Merging PDF Documents with Input/Output File Names

The following code demonstrates how to merge (concatenate) two PDF documents using physical files to generate a single output document.

Input
  • PDF_1 file name (String)

  • PDF_2 file name (String)

Output
  • PDF file name (String)

Sample Code for Merging PDF Documents with Input/Output File Names:

import java.io.*;
import oracle.xdo.common.pdf.util.PDFMerger;
.
.
.
  public static void main(String[] args)
  {

    PDFMerger merger = null;

    try
    {
      // Initialize PDFMerger - last argument is PDF file name for output
      merger = new PDFMerger(new File(args[args.length - 1]));

      // Add PDF documents to merge
      for (int i = 0; i < args.length - 1; i++)
      {
        merger.addDocument(new File(args[i]));
      }
    }
    catch (Exception exc)
    {
      exc.printStackTrace();
    }
    finally
    {
      if (merger != null)
      {
        // Close the merged document
        try
        {
          merger.close();
        }
        catch (Exception exc)
        {
          exc.printStackTrace();
        }
      }
    }
  }

Merging PDF Documents with Input/Output Streams

Input
  • PDF Documents (InputStream Array)

Output
  • PDF Document (OutputStream)

Merging PDF Documents with Input/Output Streams

import java.io.*;
import oracle.xdo.common.pdf.util.PDFDocMerger;
.
.
.
  public boolean mergeDocs(InputStream[] inputStreams, OutputStream outputStream)
  {
    PDFMerger merger = null;

    try
    {
      // Initialize PDFMerger
      merger = new PDFMerger(outputStream);
      
      // Add input stream one by one
      for (InputStream inputStream : inputStreams)
      {
        merger.addDocument(inputStream);
      }
    }
    catch (Exception exc)
    {
      exc.printStackTrace();
      return false;
    }
    finally
    {
      if (merger != null)
      {
        // Close the merged document
        try
        {
          merger.close();
        }
        catch (Exception exc)
        {
          exc.printStackTrace();
          return false;
        }
      }
    }

Merging with Background to Place Page Numbering

The following code demonstrates how to merge two PDF documents using input streams to generate a single merged output stream. You can add page numbers to the PDF.

To merge documents and number pages:

  1. Create a background PDF template document that includes a PDF form field in the position that you would like the page number to appear on the final output PDF document.

  2. Name the form field @pagenum @.

  3. Enter the number in the field from which to start the page numbering. If you don’t enter a value in the field, the start page number defaults to 1.

Input:

  • PDF Documents (InputStream Array)

  • Background PDF Document (InputStream)

Output:

  • PDF Document (OutputStream)

Sample Code for Merging PDF Documents with Background to Place Page Numbering

import java.io.*;
import oracle.xdo.common.pdf.util.PDFDocMerger;
.
.
.
  public boolean mergeDocs(InputStream[] inputStreams, InputStream backgroundStream, OutputStream outputStream)
  {
    PDFMerger merger = null;

    try
    {
      // Initialize PDFMerger
      merger = new PDFMerger(outputStream);

      // Set Background
      merger.setBackground(backgroundStream);
      
      // Add input stream one by one
      for (InputStream inputStream : inputStreams)
      {
        merger.addDocument(inputStream);
      }
    }
    catch (Exception exc)
    {
      exc.printStackTrace();
      return false;
    }
    finally
    {
      if (merger != null)
      {
        // Close the merged document
        try
        {
          merger.close();
        }
        catch (Exception exc)
        {
          exc.printStackTrace();
          return false;
        }
      }
    }

    return true;
  }

Setting a Text or Image Watermark

Some draft documents might require a "DRAFT" watermark in all pages. Other documents might require a background image on the document. The following code sample shows how to use the PDFDocMerger class to set a watermark.

Setting a Text Watermark

Use the setTextDefaultWatermark() method to set a text watermark with the following attributes:

  • Text angle (in degrees): 55

  • Color: light gray (0.9, 0.9, 0.9)

  • Font: Helvetica

  • Font Size: 100

  • The start position is calculated based on the length of the text

Alternatively, use the setTextWatermark() method to set each attribute separately. Use the setTextWatermark() method as follows:

  • setTextWatermark ("Watermark Text", x, y) - declare the watermark text, and set the x and y coordinates of the start position. In the following example, the watermark text is "Draft" and the coordinates are 200f, 200f.

  • setTextWatermarkAngle (n) - sets the angle of the watermark text. If this method is not called, 0 will be used.

  • setTextWatermarkColor (R, G, B) - sets the RGB color. If this method is not called, light gray (0.9, 0.9, 0.9) will be used.

  • setTextWatermarkFont ("font name", font size) - sets the font and size. If you do not call this method, Helvetica, 100 will be used.

The following example shows how to set these properties and then call the PDFDocMerger.

Input:

  • PDF Documents (InputStream)

Output:

  • PDF Document (OutputStream)

Sample Code for Setting a Text Watermark in PDF Documents

import java.io.*;
import oracle.xdo.common.pdf.util.PDFDocMerger;
.
.
.
  public boolean mergeDocs(InputStream[] inputStreams, OutputStream outputStream)
  {
    PDFMerger merger = null;

    try
    {
      // Initialize PDFMerger
      merger = new PDFMerger(outputStream);
      
      // You can use setTextDefaultWatermark() without these detailed setting
      merger.setTextWatermark("DRAFT", 200f, 200f); //set text and place
      merger.setTextWatermarkAngle(80);                //set angle 
      merger.setTextWatermarkColor(1.0f, 0.3f, 0.5f);  // set RGB Color

      // Add input stream one by one
      for (InputStream inputStream : inputStreams)
      {
        merger.addDocument(inputStream);
      }
    }
    catch (Exception exc)
    {
      exc.printStackTrace();
      return false;
    }
    finally
    {
      if (merger != null)
      {
        // Close the merged document
        try
        {
          merger.close();
        }
        catch (Exception exc)
        {
          exc.printStackTrace();
          return false;
        }
      }
    }

    return true;
  }

Setting Image Watermark

An image watermark can be set to cover the entire background of a document, or just to cover a specific area (for example, to display a logo). Specify the placement and size of the image using rectangular coordinates as follows:

float[] rct = {LowerLeft X, LowerLeft Y, UpperRight X, UpperRight Y}

For example:

float[] rct = {100f, 100f, 200f, 200f}

The image will be sized to fit the rectangular area defined.

To use the actual image size, without sizing it, define the LowerLeft X and LowerLeft Y positions to define the placement and specify the UpperRight X and UpperRight Y coordinates as -1f. For example:

float[] rct = {100f, 100f, -1f, -1f}

Input:

  • PDF Documents (InputStream)

  • Image File (InputStream)

Output:

  • PDF Document (OutputStream)

Sample Code for Setting an Image Watermark in PDF Documents

import java.io.*;
import oracle.xdo.common.pdf.util.PDFDocMerger;
.
.
.
  public boolean mergeDocs(InputStream[] inputStreams, OutputStream outputStream, String imageFilePath)
  {
    PDFMerger merger = null;

    try
    {
      // Initialize PDFMerger
      merger = new PDFMerger(outputStream);
      
      FileInputStream wmStream = new FileInputStream(imageFilePath);
      float[] rct = {100f, 100f, -1f, -1f};
      merger.setImageWatermark(wmStream, rct);

      
      // Add input stream one by one
      for (InputStream inputStream : inputStreams)
      {
        merger.addDocument(inputStream);
      }
    }
    catch (Exception exc)
    {
      exc.printStackTrace();
      return false;
    }
    finally
    {
      if (merger != null)
      {
        // Close the merged document
        try
        {
          merger.close();
        }
        catch (Exception exc)
        {
          exc.printStackTrace();
          return false;
        }
      }
    }

    return true;
  }

Oracle Fusion Middleware Release Notes for Business Intelligence, Release 12.2.1.4.0

E91530-04

Copyright © 2010, 2019, Oracle and/or its affiliates. All rights reserved.

This document describes new features and other notable changes for Oracle Business Intelligence Enterprise Edition.

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle.