Skip Headers

Oracle Business Intelligence Publisher Administrator's and Developer's Guide
Release 10.1.3.4
Part Number E12188-01
Go to Table of Contents
Contents
Go to previous page
Previous
Go to next page
Next

Using the BI Publisher Web Services

Overview

PublicReportService is the Web service that wraps the Oracle BI Publisher public APIs. The following general categories of operations are supported:

Note: For more information about Web services, see http://ws.apache.org/axis/java/user-guide.html

WSDL Definition for PublicReportService

After you have installed or deployed Oracle BI Publisher, there is a unique URL associated with PublicReportService:

http://<host>:<port>/xmlpserver/services/PublicReportService?wsdl

Enter this URL in your browser, substituting in the correct host and port number, to display the full Web Service Description Language definition for the publicly supported BI Publisher Web service.

Oracle BI Publisher Web Service Data Types

This section contains the following topics:

Base Data Types

Oracle BI Publisher Web services use the following base data types:

Base Type Description Example
xsd:boolean Boolean true, false
xsd:dateTime Date and Time 2007-10-26T21:32:52
xsd:int Integer 23
xsd:string String /Home/Shared/HR Reports/Salary Report
xsd:base64Binary 64 bit binary A document, for example a PDF or HTML report

XML-to-Java Data Type Mappings

BI Publisher Web Services use document/literal formats. The mapping between Web service XML schema data types and Java data types depends on the SOAP development environment. The following table shows mappings for the Oracle JDeveloper environment:

Base Type Oracle JDeveloper
xsd:boolean java.lang.Boolean
xsd:dateTime java.util.Date
xsd:int java.lang.Integer
xsd:string java.lang.String
xsd:base64Binary java.lang.Byte

Complex Types

Oracle BI Publisher Web services define and use the following complex types:

AccessDeniedException

<complexType name="AccessDeniedException">
 <sequence />
</complexType>

Description: message returned when the user credentials do not have adequate privileges to complete an operation.

ArrayOfItemData

<complexType name="ArrayOfItemData">
   <complexContent>
      <restriction base="soapenc:Array">
      <attribute ref="soapenc:arrayType"
wsdl:arrayType="impl:ItemData[]" />
      </restriction>
   </complexContent>
</complexType>

Description: an array of ItemData - objects contained in the report repository.

ArrayOfParamNameValue

<complexType name="ArrayOfParamNameValue">
   <complexContent>
      <restriction base="soapenc:Array">
      <attribute ref="soapenc:arrayType" wsdl:arrayType="impl:ParamNameValue[]" />
      </restriction>
   </complexContent>
</complexType>

Description: an array of ParamNameValues.

ArrayOf_xsd_string

<complexType name="ArrayOf_xsd_string">
  <complexContent>
    <restriction base="soapenc:Array">
    <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]"/>
    </restriction>
  </complexContent>
</complexType>

Description: an array of strings used in other complex types.

DeliveryRequest

<complexType name="DeliveryRequest">
  <sequence>
    <element name="emailOption" nillable="true" type="impl:EMailDeliveryOption"/>
    <element name="faxOption" nillable="true" type="impl:FaxDeliveryOption"/>
    <element name="ftpOption" nillable="true" type="impl:FTPDeliveryOption"/>
    <element name="localOption" nillable="true" type="impl:LocalDeliveryOption"/>
    <element name="printOption" nillable="true" type="impl:PrintDeliveryOption"/>
    <element name="webDAVOption" nillable="true"
type="impl:WebDAVDeliveryOption"/>
  </sequence>
</complexType>

Description: an object that provides the options to deliver a report to multiple destinations. This type is used in the following complex type structures:

JobInfo

ScheduleRequest

Parameter Type Description
emailOption EMailDeliveryOption See EMailDeliveryOption
faxOption FaxDeliveryOption See FaxDeliveryOption
ftpOption FTPDeliveryOption See FTPDeliveryOption
localOption LocalDeliveryOption See LocalDeliveryOption
printOption PrintDeliveryOption See PrintDeliveryOption
webDAVOption WebDAVDeliveryOption See WebDAVDeliveryOption

EMailDeliveryOption

<complexType name="EMailDeliveryOption">
  <sequence>
    <element name="emailBCC" nillable="true" type="xsd:string"/>
    <element name="emailBody" nillable="true" type="xsd:string"/>
    <element name="emailCC" nillable="true" type="xsd:string"/>
    <element name="emailFrom" nillable="false" type="xsd:string"/>
    <element name="emailReplyTo" nillable="true" type="xsd:string"/>
    <element name="emailSubject" nillable="false" type="xsd:string"/>
    <element name="emailTo" nillable="false" type="xsd:string"/>
  </sequence>
</complexType>

Description: the options to set for e-mail delivery of a report.

This type is used in the following complex type structure: DeliveryRequest.

Parameter Type Description
emailBCC string The e-mail addresses of to receive blind copies of the e-mail.
emailBody string A text string that will appear as the body of the e-mail.
emailCC string The e-mail addresses to receive copies of the e-mail.
emailFrom string The e-mail address that will appear as the From address.
emailReplyTo string The e-mail address to appear in the Reply-to field.
emailSubject string The subject line of the e-mail.
emailTo string The addresses to which to send the e-mail.

FaxDeliveryOption

<complexType name="FaxDeliveryOption">
  <sequence>
    <element name="faxNumber" nillable="false" type="xsd:string"/>
    <element name="faxServer" nillable="false" type="xsd:string"/>
  </sequence>
</complexType>

Description: the options to set for facsimile (fax) delivery of a report.

This type is used in the following complex type structure: DeliveryRequest

Parameter Type Description
faxNumber string The number to which to send the fax. For example: 916505069560
faxServer string The fax server to which to send the fax. For example: ipp://mycupsserver:631/printers/fax2

FTPDeliveryOption

<complexType name="FTPDeliveryOption">
  <sequence>
    <element name="ftpServerName" nillable="false" type="xsd:string"/>
    <element name="ftpUserName" nillable="false" type="xsd:string"/>
    <element name="ftpUserPassword" nillable="false" type="xsd:string"/>
    <element name="remoteFile" nillable="false" type="xsd:string"/>
    <element name="sftpOption" type="xsd:boolean"/>
  </sequence>
</complexType>

Description: the options to set for FTP delivery of a report.

This type is used in the following complex type structure: DeliveryRequest

Parameter Type Description
ftpServerName string The FTP server name. For example myftpserver.mycompany.com
ftpUserName string A user name for the FTP server.
ftpUserPassword string The password for the user entered.
remoteFile string The name to assign the file on the server. For example: report.pdf.
sftpOption boolean True indicates to use the secure FTP option.

InvalidParametersException

<complexType name="InvalidParametersException">
 <sequence />
</complexType>

Description: message returned when invalid parameters are supplied for a Web service operation.

ItemData

<complexType name="ItemData">
  <sequence>
    <element name="absolutePath" nillable="true" type="xsd:string"/>
    <element name="creationDate" nillable="true" type="xsd:dateTime"/>
    <element name="displayName" nillable="true" type="xsd:string"/>
    <element name="fileName" nillable="true" type="xsd:string"/>
    <element name="lastModified" nillable="true" type="xsd:dateTime"/>
    <element name="lastModifier" nillable="true" type="xsd:string"/>
    <element name="owner" nillable="true" type="xsd:string"/>
    <element name="parentAbsolutePath" nillable="true" type="xsd:string"/>
    <element name="type" nillable="true" type="xsd:string" />
  </sequence>
</complexType>

Description: description of an object contained in the report repository.

Parameter Type Description
absolutePath string The path to the report object. For example: /HR Manager/ HR Reports/Employee Listing.xdo
creationDate dateTime The creation date of the report object.
displayName string The display name for the report object. For example: Employee Listing
fileName string The file name for the report object. For example Employee Listing.xdo
lastModified dateTime The last modified date for the report object.
lastModifier sring The user name of the last person to modify the report.
owner string The user name of the owner of the report.
parentAbsolutePath string The absolute path of the parent folder. For example, “/HR Manager/HR Reports” is the parentAbsolutePath for the report having the absolute path “/HR Manager/ HR Reports/Employee Listing.xdo”.
type string The item type. Possible values are: "report" or "folder".

JobHistoryInfo

<complexType name="JobHistoryInfo"> 
  <sequence>
     <element name="createdDate" nillable="true" type="xsd:dateTime"/>
     <element name="documentDataAvailable" type="xsd:boolean"/>
     <element name="documentDataContentType" nillable="true" type="xsd:string"/>
     <element name="documentOutput" nillable="true" type="xsd:base64Binary"/>
     <element name="jobID" type="xsd:int"/>
     <element name="jobMessage" nillable="true" type="xsd:string"/>
     <element name="jobName" nillable="true" type="xsd:string"/>
     <element name="outputID" type="xsd:int"/>
     <element name="reportData" nillable="true" type="xsd:base64Binary"/>
     <element name="reportDataAvailable" type="xsd:boolean"/>
     <element name="reportDataContentType" nillable="true" type="xsd:string"/>
     <element name="reportName" nillable="true" type="xsd:string"/>
     <element name="reportURL" nillable="true" type="xsd:string"/>
     <element name="status" nillable="true" type="xsd:string"/>
     <element name="statusDetail" nillable="true" type="xsd:string"/>
     <element name="userName" nillable="true" type="xsd:string"/>
     <element name="username" nillable="true" type="xsd:string"/>
    </sequence>
</complexType>

Description: lists parameters describing the job history.

Parameter Type Description
createdDate dateTime The date the report job was created.
documentDataAvailable boolean True indicates that the user selected the “Save Output” option when the report was scheduled.
documentDataConentType string The content type of the generated document. Possible values are:
"text/html;charset=UTF-8"
"text/plain;charset=UTF-8"
"application/pdf"
"application/vnd.ms-powerpoint"
"application/vnd.ms-excel"
"application/msword" "application/x-shockwave-flash" "text/xml"
"message/rfc822"
documentOutput base64binary The output document.
jobID integer The identification number assigned to the job by BI Publisher.
jobMessage string When a scheduled report is executed, the scheduler generates a plain-text message associated with the scheduled job. This is the server message containing detailed information. For example, {pstatus=success, job_tz=America/Dawson, job_cal=GREGORIAN, job_locale=en_US, dstatus=success, dstatus4=nstarted, dstatus3=nstarted, dstatus2=nstarted, dstatus1=nstarted, dstatus0=nstarted}
...
Or upon failure, gives you some error message as well – {pstatus=success, job_tz=Asia/Chongqing, job_cal=GREGORIAN, job_locale=zh_CN, dstatus=success, dstatus4=nstarted, dstatus3=nstarted, dstatus2=nstarted, dstatus1=nstarted, dstatus0=failed, ...
jobName string The user-assigned job name.
outputID integer The identification of the report in history. One scheduled JobID can be associated with multiple outputIDs or historyIDs. This is because one scheduled report can be executed or republished multiple times.
reportData base64binary The XML data generated by the report data model.
reportDataAvailable boolean True indicates that the user selected "Save data for republish" when the report was scheduled.
reportDataContentType string The content type value of the XML data that BI Publisher will use to generate the report. The value is “text/xml”.
reportName string The name of the report.
reportURL string The report absolute path URL For example: “/HR Manager/ HR Reports/Employee Listing.xdo”.
status string Valid values are: "Completed", "Error", "Running", "Scheduled", "Suspended" and "Unknown"
statusDetail string Detailed status information from the BI Publisher server.
username string The user who scheduled the report. For example, "Administrator".

JobInfo

<complexType name="JobInfo">
   <sequence>
     <element name="burstingOption" type="xsd:boolean"/>
     <element name="createdDate" nillable="true" type="xsd:dateTime"/>
     <element name="deliveryDescription" nillable="true" type="xsd:string"/>
     <element name="deliveryParameters" nillable="true" type="impl:DeliveryRequest"/>
     <element name="endDate" nillable="true" type="xsd:dateTime"/>
     <element name="jobGroup" nillable="true" type="xsd:string"/>
     <element name="jobID" type="xsd:int"/>
     <element name="jobName" nillable="true" type="xsd:string"/>
     <element name="locale" nillable="true" type="xsd:string"/>
     <element name="reportName" nillable="true" type="xsd:string"/>
     <element name="reportParameters" nillable="true" type="impl:ArrayOfParamNameValue"/>
     <element name="reportSet" type="xsd:boolean"/>
     <element name="reportURL" nillable="true" type="xsd:string"/>
     <element name="runType" nillable="true" type="xsd:string"/>
     <element name="scheduleDescription" nillable="true" type="xsd:string"/>
     <element name="scheduleParameters" nillable="true" type="xsd:string"/>
     <element name="startDate" nillable="true" type="xsd:dateTime"/>
     <element name="status" nillable="true" type="xsd:string"/>
     <element name="username" nillable="true" type="xsd:string"/>    
    </sequence>
</complexType>

Description: the collection of information about a job request.

Parameter Type Description
burstingOption boolean True indicates the bursting option is on.
createdDate dateTime The date the job was created.
deliveryDescription string Description of the scheduled delivery. In the current implementation this parameter returns null.
deliveryParameters DeliveryRequest See DeliveryRequest
endDate dateTime The date the job ended.
jobGroup string In the current implementation this parameter returns the userID. The "jobGroup" refers to the group of scheduled requests that belong to a particular user, as when you query for a particular user's scheduled requests.
jobID integer The numeric identification assigned by BI Publisher to the job request.
jobName string The user-assigned job name.
locale string The user-selected locale for the scheduled report.
reportName string The name of the report.
reportParameters ArrayOfParamNameValue See ArrayOfParamNameValue
reportSet boolean True indicates the report is a member of a report set. In the current implementation this will always return false.
reportURL string The report absolute path URL, for example: /HR Manager/Employee Reports/Employee Salary Report.xdo.
runType string Possible values are: “Run Once Only” or “Run Recurring”.
scheduleDescription string The description for a report schedule. In the current implementation this parameter returns null.
scheduleParameters string See ScheduleRequest.
startDate dateTime The date the schedule is to start.
status string The status of the scheduled job request. Valid values are: Canceled", "Done", "Scheduled", "Suspended", or "Unknown".
username string The username of the user submitting the job request.

JobStatus

<complexType name="JobStatus">
    <sequence>
     <element name="jobID" nillable="true" type="xsd:string"/>
     <element name="jobStatus" nillable="true" type="xsd:string"/>
     <element name="message" nillable="true" type="xsd:string"/>
    </sequence>
   </complexType>

Description: describes the scheduled job status.

Parameter Type Description
jobID string The numeric identification assigned by BI Publisher to the job request.
jobStatus string The status of the job request. Possible values are: "Completed", "Error" "Running", "Scheduled", "Suspended", "Unknown"
message string BIP scheduler server message string.

LocalDeliveryOption

<complexType name="LocalDeliveryOption">
  <sequence>
    <element name="destination" nillable="false" type="xsd:string"/>
  </sequence>
</complexType>

Description: the options to set for delivery of a report to the BI Publisher repository.

This type is used in the following complex type structure: DeliveryRequest

Parameter Type Description
destination string The file path to the BI Publisher repository on the local server.

OperationFailedException

<complexType name="OperationFailedException">
  <sequence />
</complexType>

Description: the message returned when an operation fails.

ParamNameValue

<complexType name="ParamNameValue">
   <sequence>
      <element name="multiValuesAllowed" type="xsd:boolean" />
      <element name="name" nillable="true" type="xsd:string" />
      <element name="values" nillable="true" type="impl:ArrayOf_xsd_string" />
   </sequence>
</complexType>

Description: a parameter name and array of parameter values.

Parameter Type Description
multiValuesAllowed boolean True indicates that a parameter may contain multiple values.
name string The parameter name.
values ArrayOf_xsd_string See ArrayOf_xsd_string

PrintDeliveryOption

<complexType name="PrintDeliveryOption">
  <sequence>
    <element name="printNumberOfCopy" nillable="true" type="xsd:string"/>
    <element name="printRange" nillable="true" type="xsd:string"/>
    <element name="printSide" nillable="true" type="xsd:string"/>
    <element name="printTray" nillable="true" type="xsd:string"/>
     <element name="printerName" nillable="false" type="xsd:string"/>
  </sequence>
</complexType>

Description: the options to set for printer delivery of a report.

This type is used in the following complex type structure: DeliveryRequest

Parameter Type Description
printNumberOfCopy string The number of copies to print.
printRange string A range of pages to print. Separate multiple ranges with a comma. For example: 1,3-5,8-10
printSide string Valid values are "Single sided", "Double Sided Long Edge (Duplex)", and "Double Sided Short Edge (Tumble)"
printTray string Valid values are "Default", "Tray 1", "Tray 2", and "Tray 3"
printerName string The name of the printer to which to send the report.

ReportDataChunk

<complexType name="ReportDataChunk">
   <sequence>
      <element name="reportDataChunk" nillable="true" type="xsd:base64Binary"/>
      <element name="reportDataFileID" nillable="true" type="xsd:string"/>
      <element name="reportDataOffset" type="xsd:long"/>
   </sequence>
</complexType>
Parameter Type Description
reportDataChunk xsd64binary The report data.
reportDataFileID string The report file identifier.
reportDataOffset long The offset at which the data portion of the chunk begins.

ReportDefinition

<complexType name="ReportDefinition">
   <sequence>
      <element name="autoRun" type="xsd:boolean"/>
      <element name="cacheDocument" type="xsd:boolean"/>
      <element name="defaultOutputFormat" nillable="true" type="xsd:string" />
      <element name="defaultTemplateId" nillable="true" type="xsd:string" />
      <element name="diagnostics" type="xsd:boolean"/>
      <element name="listOfTemplateFormatsLabelValues" nillable="true" type="impl:ArrayOfTemplateFormatsLabelValues"/>
      <element name="onLine" type="xsd:boolean"/>
      <element name="openLinkInNewWindow" type="xsd:boolean"/>
      <element name="parameterColumns" type="xsd:int"/>
      <element name="parameterNames" nillable="true"
        type="impl:ArrayOf_xsd_string" />
      <element name="reportParameterNameValues" nillable="true"
        type="impl:ArrayOfParamNameValue" />
      <element name="reportDefnTitle" nillable="true" type="xsd:string"/>
      <element name="reportDescription" nillable="true" type="xsd:string"/>
      <element name="reportName" nillable="true" type="xsd:string"/>
      <element name="reportParameterNameValues" nillable="true" type="impl:ArrayOfParamNameValue"/>
      <element name="reportType" nillable="true" type="xsd:string"/>
      <element name="showControls" type="xsd:boolean"/>
      <element name="showReportLinks" type="xsd:boolean"/>
      <element name="templateIds" nillable="true" type="impl:ArrayOf_xsd_string" />
      <element name="useExcelProcessor" type="xsd:boolean"/>
   </sequence>
</complexType>

Description: object returned from getReportDefinition.

Parameter Type Description
autoRun boolean True indicates that the report property Auto Run is turned on.
cacheDocument boolean True indicates that the report property Enable document cache is turned on.
defaultOutputFormat string The default output format. Valid values are: pdf, rtf, html, flash, csv, data, mhtml, excel, excel2000, and powerpoint.
defaultTemplateId string The default template identified for the report.
diagnostics boolean True indicates that diagnostics have been turned on for the report.
listOfTemplateFormatsLabelValues ArrayOfTemplateFormatsLabelValues Passes the list of template format labels via the ArrayOfTemplateFormatsLabelValues structure.
onLine boolean True indicates the property "Run report online" is turned on for the report.
openLinkInNewWindow boolean True indicates the property "Open Links in New Window" is turned on for the report.
parameterColumns integer The value of the report property "Parameters per line."
parameterNames ArrayOf_xsd_string Passes the parameter names defined for the report via the ArrayOf_xsd_string structure.
reportParameterNameValues ArrayOfParamNameValue Passes the report name-value pairs via the ArrayOfParamNameValue structure.
reportType string This currently returns null.
showControls boolean True indicates the report property "Show controls" has been turned on.
showReportLinks boolean True indicates the report property "Show report links" has been turned on.
templateIds ArrayOf_xsd_string Passes the layout names of the report templates via the ArrayOf_xsd_string structure.
useExcelProcessor boolean True indicates that the report property "Disable Client Access from Analyzer for Excel" has not been turned on.

ReportRequest

<complexType name="ReportRequest">
   <sequence>
      <element name="attributeFormat" nillable="true" type="xsd:string"/>
      <element name="attributeLocale" nillable="true" type="xsd:string"/>
      <element name="attributeTemplate" nillable="true" type="xsd:string"/>
      <element name="flattenXML" type="xsd:boolean"/>
      <element name="parameterNameValues" nillable="true"
type="impl:ArrayOfParamNameValue"/>
       <element name="reportAbsolutePath" nillable="false" type="xsd:string"/>
       <element name="reportData" nillable="true" type="xsd:base64Binary"/>
      <element name="reportDataFileName" nillable="true" type="xsd:string"/>
      <element name="sizeOfDataChunkDownload" type="xsd:int"/>
   </sequence>
</complexType>

Description: the collection of settings needed to run a report. Note that allowable values for attributeFormat will vary according to the type of template used (for example, PDF templates can only generate PDF output.)

Parameter Type Description
attributeFormat string The output format of the requested report. Valid values are: pdf, rtf, html, excel, excel2000, mhtml, csv, data, flash, and powerpoint.
attributeLocale string The locale selection for the report. Example: fr-FR
attributeTemplate string The template to apply to the report. For example: Employeelisting.rtf.
flattenXML boolean True indicates that the XML is to be flattened. This flag is used for the Analyzer for Microsoft Excel because Excel requires XML data structure to be flattened.
parameterNameValues ArrayOfParamNameValue The parameter name-value pairs to be used in the submission of this report request, passed via the ArrayOfParamNameValue structure.
reportAbsolutePath string The absolute path to the report in the BI Publisher repository. For example: /HR Manager/HR Reports/Employee Listing.xdo.
reportData base64binary If you are providing the data directly for the report use this element to pass the data.
reportDataFileName string If using a data file to create the report, enter the data file name.
sizeOfDataChunkDownload integer If you set flattenXML to true, or if you do not want to chunk the data, set this parameter to -1 to return all data back to the client.

ReportResponse

<complexType name="ReportResponse">
   <sequence>
      <element name="reportBytes" nillable="true" type="xsd:base64Binary" />
      <element name="reportContentType" nillable="true" type="xsd:string" />
      <element name="reportLocale" nillable="true" type="xsd:string" />
   </sequence>
</complexType>

Description: the document (in whatever file format attributeFormat is set to in ReportRequest), document type, and document locale that is returned from the runReport operation.

Parameter Type Description
reportBytes base64binary The report binary data output.
reportContentType string The report content type. Possible values are:
"text/html;charset=UTF-8"
"text/plain;charset=UTF-8"
"application/pdf"
"application/vnd.ms-powerpoint"
"application/vnd.ms-excel"
"application/msword"
"application/x-shockwave-flash"
"text/xml" "message/rfc822"
reportLocale string The locale selected for the report. For example: fr-FR

ScheduleRequest

<complexType name="ScheduleRequest">
  <sequence>
    <element name="cronExpression" nillable="true" type="xsd:string"/>
    <element name="deliveryRequest" nillable="false"
type="impl:DeliveryRequest"/>
    <element name="endDate" nillable="true" type="xsd:dateTime"/>
    <element name="jobCalendar" nillable="true" type="xsd:string"/>
    <element name="jobLocale" nillable="true" type="xsd:string"/>
    <element name="jobTZ" nillable="true" type="xsd:string"/>
    <element name="notificationTo" nillable="true" type="xsd:string"/>
    <element name="notifyWhenFailed" type="xsd:boolean" />
    <element name="notifyWhenSuccess" type="xsd:boolean" />
    <element name="notifyWhenWarning" type="xsd:boolean" />
    <element name="repeatCount" type="xsd:int"/>
    <element name="repeatInterval" type="xsd:int"/>
    <element name="reportRequest" nillable="false" type="impl:ReportRequest"/>
    <element name="saveDataOption" type="xsd:boolean" />
    <element name="saveOutputOption" type="xsd:boolean" />
    <element name="scheduleBurstingOption" type="xsd:boolean" />
    <element name="schedulePublicOption" type="xsd:boolean" />
    <element name="startDate" nillable="true" type="xsd:dateTime"/>
    <element name="useUTF8Option" type="xsd:boolean" />
    <element name="userJobName" nillable="true" type="xsd:string"/>
  </sequence>
</complexType>

Description: the options to schedule a report.

Parameter Type Description
cronExpression string The Cron expression that defines a recursive schedule.
deliveryRequest DeliveryRequest Required. Contains the delivery information for the scheduled request via the DeliveryRequest structure.
endDate dateTime The end date of the schedule.
jobCalendar string The report formatting calendar to use for the scheduled requests. Valid values are: Gregorian, Arabic Hijrah, English Hijrah, Japanese Imperial, Tha Buddha, and ROC Official.
jobLocale string The locale to use for the scheduled requests. Example: fr-FR
jobTZ string The time zone to use for the scheduled requests.
notificationTo string E-mail addresses to send notifications to.
notifyWhenFailed boolean True indicates to send a notification when the job request fails.
notifyWhenSuccess boolean True indicates to send a notification when the job request succeeds.
notifyWhenWarning boolean True indicates to send a notification when the job completes with a warning.
repeatCount integer The number of times to repeat the schedule. For the recursive scheduling of a report, startDate must not be null, and repeatCount repeatInterval should be greater than 0 for any meaningful schedule. The endDate can be null.
repeatInterval integer The interval between two scheduled jobs in seconds.
reportRequest ReportRequest Information about the request included via the ReportRequest structure.
saveDataOption boolean True indicates that the report data from the scheduled request run will be saved.
saveOutputOption boolean True indicates that the report output from the scheduled request run will be saved.
scheduleBurstingOption boolean True indicates that the scheduled requests will be burst.
schedulePublicOption boolean True indicates that the scheduled requests are to be made public.
startDate dateTime The date on which the schedule starts.
useUTF8Option boolean True indicates that the Use UTF8 option is enabled.
userJobName string The user-entered name for the scheduled job.

WebDAVDeliveryOption

<complexType name="WebDAVDeliveryOption">
  <sequence>
    <element name="deliveryAuthType" nillable="true" type="xsd:string"/>
    <element name="deliveryAuthTypeBasic" nillable="true" type="xsd:string"/>
    <element name="deliveryAuthTypeDigest" nillable="true" type="xsd:string"/>
    <element name="password" nillable="true" type="xsd:string"/>
    <element name="remoteFilePath" nillable="false" type="xsd:string"/>
    <element name="server" nillable="false" type="xsd:string"/>
    <element name="userName" nillable="true" type="xsd:string"/>
  </sequence>
</complexType>

Parameter Type Description
deliveryAuthType string Authentication type. Valid values are: None, Basic, Digest
deliveryAuthTypeBasic string Element to describe the basic authentication type.
deliveryAuthTypeDigest string Element to describe the digest authentication type.
password string If a proxy server has been set up, the password required to access the proxy server.
remoteFilePath string The path to directory on the remote server to which to deliver the report file.
server string The webDAV server name. For example "myserver".
userName string If a proxy server has been set up, the user name required to access the proxy server.

Description: the options to set for Web-based Distributed Authoring and Versioning (WebDAV) delivery of a report.

This type is used in the following complex type structure: DeliveryRequest

BI Publisher Web Service Operations

The operations available in the Oracle BI Publisher Web services can be described by the following categories:

This section describes the input message, output message, possible exception messages and also provides sample code for each operation.

Operations for Validation of Privileges

Operations for validation of privileges include:

validateLogin

Use validateLogin to validate that a UserID and Password have the privilege to access the Oracle BI Publisher report server.

Input Message: validateLoginRequest
Parameter Type Nillable Description
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: validateLoginResponse
Parameter Type Nillable Description
validateLoginReturn boolean n/a True indicates the login ID has the requested privilege.

hasReportAccess

Use hasReportAccess to validate that a UserID and Password have the privilege to access a specific report.

Input Message: hasReportAccessRequest
Parameter Type Nillable Description
reportAbsolutePath string no The directory path to the report. Example: /HR Manager/Employee Reports/Employee Listing.xdo
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: hasReportAccessResponse
Parameter Type Nillable Description
hasReportAccessReturn boolean n/a True indicates the user has the requested privilege.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

Operations to Get Information About Reports and the Repository

Operations to get information about reports and the repository include:

getFolderContents

Use getFolderContents to get all of the items in a folder. This will return all the reports and folders contained in the specified folder. You can then use these items to determine what reports you might want to execute or what folders you may want to further search to identify a report.

Input Message: getFolderContentsRequest
Parameter Type Nillable Description
folderAbsolutePath string no The path to the folder for which you wish to retrieve the contents. For example: /HR Manager/Employee Reports/
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: getFolderContentsResponse
Parameter Type Nillable Description
getFolderContentsReturn ItemData n/a See ItemData

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

Usage Notes

getReportDefinition

Use getReportDefinition to get information about a report such as default template, output type and a listing of template IDs. Once you have a list of template IDs you may wish to generate a report with a template other than the default.

Input Message: getReportDefinitionRequest
Parameter Type Nillable Description
reportAbsolutePath string no The path to the report for which you wish to retrieve the report definition. For example: /HR Manager/Employee Reports/Employee Listing.xdo
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: getReportDefinitionResponse
Parameter Type Nillable Description
getReportDefinitionReturn ReportDefinition n/a See ReportDefinition

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

getReportParameters

Use getReportParameters to get an array of report parameters and their default values. Once you have the list of parameters you can set parameter values before running or scheduling a report.

Input Message: getReportParametersRequest
Parameter Type Nillable Description
reportRequest ReportRequest n/a See ReportRequest
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: getReportParametersResponse
Parameter Type Nillable Description
getReportParametersReturn ParamNameValue n/a See ParamNameValue

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

Operations to Run Reports

Operations to run reports include:

runReport

Use runReport to execute a report and return a generated document. Note that the document is returned in the specified file format.

Input Message: runReportRequest
Parameter Type Nillable Description
reportRequest ReportRequest n/a See ReportRequest
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: runReportResponse
Parameter Type Nillable Description
runReportReturn ReportResponse n/a See ReportResponse

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

uploadReportDataChunk

Input Message: uploadReportDataChunkRequest
Parameter Type Nillable Description
fileID string no In the first call, you do not need to provide the fileID, after the successful uploading of the first chunk of XML Data, it will return a fileID, for examle: filename. On your subsequent calls, you can supply the same fileID in order to append the subsequent data chunks to the same file.
reportDataChunk base64binary n/a The XML data.
Return Message: uploadReportDataChunkResponse
Parameter Type Nillable Description
uploadReportDataChunkReturn string no The return response.

downloadReportDataChunk

Input Message: downloadReportDataChunkRequest
Parameter Type Nillable Description
fileID string no In the first call, you do not need to provide the fileID, after the successful uploading of the first chunk of XML Data, it will return a fileID, e.g. filename. On your subsequent calls, you can supply the same fileID in order to append the subsequent data chunks to the same file.
beginIdx integer N/A The offset of
size integer N/A The size of the file in kilobytes.
Return Message: downloadReportDataChunkResponse
Parameter Type Nillable Description
downloadReportDataChunkReturn ReportDataChunk no See ReportDataChunk

Operations to Manage Scheduled Reports and History of Scheduled Reports

Operations to manage scheduled reports and history of scheduled reports include:

scheduleReport

Use scheduleReport to schedule a report for execution and delivery to either printer, fax, email, WebDAV, ftp or simply save in the report repository. Jobs can be scheduled to run immediately, once, or on a recurring pattern and can have an end date to stop the recurrence. This operation returns JobID upon successfully scheduling the report job.

Input Message: scheduleReportRequest
Parameter Type Nillable Description
scheduleRequest ScheduleRequest n/a See ScheduleRequest
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: scheduleReportResponse
Parameter Type Nillable Description
scheduleReportReturn string no The return response.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

suspendScheduledReport

Use suspendScheduledReport to suspend a scheduled report.

Input Message: suspendScheduledReportRequest
Parameter Type Nillable Description
scheduledJobID string no The job ID of the scheduled report.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: suspendScheduledReportResponse
Parameter Type Nillable Description
suspendScheduledReportReturn boolean n/a True indicates the report is suspended.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

resumeScheduledReport

Use resumeScheduledReport to resume a suspended scheduled report.

Input Message: resumeScheduledReportRequest
Parameter Type Nillable Description
scheduledJobID string no The job ID of the scheduled job.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: resumeScheduledReportResponse
Parameter Type Nillable Description
resumeScheduledReportReturn boolean n/a True indicates the schedule has been resumed.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

deleteScheduledReport

Use deleteScheduledReport to delete a scheduled report.

Input Message: deleteScheduledReportRequest
Parameter Type Nillable Description
scheduledJobID string no The Job ID of the scheduled report.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: deleteScheduledReportResponse
Parameter Type Nillable Description
deleteScheduledReportReturn boolean n/a True indicates that the schedule has been deleted.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

getScheduledReportInfo

Use getScheduledReportInfo to get information about a scheduled report.

Input Message: getScheduledReportInfoRequest
Parameter Type Nillable Description
scheduledJobID string no The Job ID of the scheduled report.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
viewByFilter string no A selected "view by" category. Valid values are: "My History", "Public History", or "All".
Return Message: getScheduledReportInfoResponse
Parameter Type Nillable Description
getScheduledReportInfoReturn JobInfo n/a See JobInfo

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

getScheduledReportHistoryInfo

Use getScheduledReportHistoryInfo to get historical information about a scheduled report.

Input Message: getScheduledReportHistoryInfoRequest
Parameter Type Nillable Description
scheduledJobID string no The job ID of the scheduled report.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
viewByFilter string no A selected "view by" category. Valid values are: "My History", "Public History", or "All".
DownloadReport boolean no True indicates to download the report.
Return Message: getScheduledReportHistoryInfoResponse
Parameter Type Nillable Description
getScheduledReportHistoryInfoReturn JobHistoryInfo n/a See JobHistoryInfo

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

deleteScheduledReportHistory

Use deleteScheduledReportHistory to delete the historical information about a scheduled report.

Input Message: deleteScheduledReportHistoryRequest
Parameter Type Nillable Description
scheduledJobID string no The job ID of the scheduled report.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: deleteScheduledReportHistoryResponse
Parameter Type Nillable Description
deleteScheduledReportHistoryReturn boolean n/a True indicates the report was deleted from history.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

getScheduledReportStatus

Use getScheduledReportStatus to get status information about a scheduled report.

Input Message: getScheduledReportStatusRequest
Parameter Type Nillable Description
scheduledJobID string no The job ID of the scheduled report.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: getScheduledReportStatusResponse
Parameter Type Nillable Description
getScheduledReportStatusReturn JobStatus N/A See JobStatus

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

Operations to Create and Manage Reports

Operations to create and manage reports include:

createReport

Use createReport to create a new report in the BI Publisher Reports Repository with an empty report definition.

Input Message: createReportRequest
Parameter Type Nillable Description
reportName string no The report name to create with the suffix ".xdo". For example, "myreport.xdo".
reportAbsolutePathURL string no The path to the folder in which to place the created report. For example: xmlp/Reports/financials
templateFileName string yes The file name of the template to apply.
templateData base64Binary yes If you are including the template directly, the template data.
XLIFFFileName string yes The file name of the XLIFF file to apply.
XLIFFData base64binary yes If you are including the XLIFF file directly, the XLIFF data.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: createReportResponse
Parameter Type Nillable Description
createReportReturn string no Returns the report path to the newly created report. Note that the syntax for the report path is: <folder_path>/<report_name>/report_name.xdo.
For example:
xmlp/Reports/financials/my report/myreport.xdo where xmlp/Reports/financials is the folder in which the report is stored and "my report" is the report container, not a folder.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

deleteReport

This API deletes a report folder containing the report definition file and any other supporting report files. Either provide the reportAbsolutePath ending with ".xdo", or provide the report folder name.

Input Message: deleteReportRequest
Parameter Type Nillable Description
reportAbsolutePath string no The absolute path to either the report folder or the report .xdo file. For example: C:\OraHome\xmlp\XMLP\Reports\Executive\Revenue by Region\Revenue by Region.xdo
userID string no A valid BI Publisher Administrator user name.
password string no The password for the BI Publisher Administrator user name.
Return Message: deleteReportResponse
Parameter Type Nillable Description
deleteReportReturn boolean n/a True indicates the report was deleted.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

updateReportDefinition

The updateReportDefinition updates attributes of the report definition file (.xdo) and then writes the file back to the BI Publisher Reports Repository.

Input Message: updateReportDefinitionRequest
Parameter Type Nillable Description
reportAbsPath string no The path to the report file. For example: C:\OraHome\xmlp\XMLP\Reports\Executive\Revenue by Region\Revenue by Region.xdo
newReportDefn ReportDefinition no see ReportDefinition
userID string no A valid BI Publisher Administrator user name.
password string no The password for the BI Publisher Administrator user name.
Return Message: updateReportDefinitionResponse
Parameter Type Nillable Description
updateReportDefinitionReturn boolean no True indicates the report definition was updated.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

createReportFolder

Use createReportFolder to create a new folder in the BI Publisher Reports Repository.

Input Message: createReportFolderRequest
Parameter Type Nillable Description
folderAbsolutePath string no The absolute path to the folder the folder you wish to create in the BI Publisher repository.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: createReportFolderResponse
Parameter Type Nillable Description
createReportFolderReturn string no True indicates the report folder was created.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

uploadTemplateForReport

Use uploadTemplateForReport to upload a template to the BI Publisher Reports Repository.

Input Message: uploadTemplateForReportRequest
Parameter Type Nillable Description
reportAbsolutePath string no The path to the report for which you want to upload a template.
templateFileName string no The file name of the template.
templateData base64Binary no The template data.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: uploadTemplateForReportResponse
Parameter Type Nillable Description
uploadTemplateForReportReturn boolean n/a True indicates the template was uploaded successfully.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

removeTemplateForReport

Use removeTemplateForReport to delete a template from the BI Publisher Reports Repository.

Input Message: removeTemplateForReportRequest
Parameter Type Nillable Description
reportAbsolutePath string no The path to the report directory.
templateFileName string no The name of the template file to delete.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: removeTemplateForReportResponse
Parameter Type Nillable Description
removeTemplateForReportReturn boolean n/a True indicates the template was removed.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

uploadReport

Use uploadReport to upload a complete report definition file to the BI Publisher Reports Repository. The uploaded report must be in zipped file format. The API will first create a new report using reportAbsolutePathURL: /Report Folder/reportName.xdo It will then unzip the zipped data to extract the reportName.xdo file and then unzip any other data included with the file.

Input Message: uploadReportRequest
Parameter Type Nillable Description
reportName string no The report name, for example: reportname.xdo
reportAbsolutePathURL string no The path to the report, for example: /Report Folder/report name
reportZippedData base64binary no The report data in zipped format.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: uploadReportResponse
Parameter Type Nillable Description
uploadReportReturn string no The response.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

downloadReport

This API downloads the BI Publisher report definition directory into a zipped format. This includes the report .XDO file and any other files associated with this report.

Input Message: downloadReportRequest
Parameter Type Nillable Description
reportAbsolutePath string no The path to the report to download.
userID string no The BI Publisher user name.
password string no The password for the entered user name.
Return Message: downloadReportResponse
Parameter Type Nillable Description
downloadReportReturn base64binary no The zip file of the downloaded report folder.

Possible Exceptions

See Messages for Errors for descriptions of the possible exceptions.

Operations about the Report Server

Operations about the report server include:

getSecurityModel

This service will return the security model of the BI Publisher server. The supported settings are:

Input Message: getSecurityModelRequest
Parameter Type Nillable Description
none
Return Message: getSecurityModelResponse
Parameter Type Nillable Description
getSecurityModelReturn string no Possible return values are:
  • XDO - XDO_SECURITY_MODEL

  • FND - FND_SECURITY_MODEL

  • LDAP - LDAP_SECURITY_MODEL

  • BI_SERVER - BI_SERVER_SECURITY_MODEL

  • ORACLE_DB - ORACLE_DB_SECURITY_MODEL

  • HYPERION_CSS - CSS_SECURITY_MODEL

getBIPHTTPSessionInterval

Returns the BI Publisher server HTTP session interval in minutes.

Input Message: getBIPHTTPSessionIntervalRequest
Parameter Type Nillable Description
none
Return Message: getBIPHTTPSessionIntervaResponse
Parameter Type Nillable Description
getBIPHTTPSessionIntervalReturn int no The BI Publisher server HTTP session interval in minutes.

Messages for Errors

One of the following messages may be returned to any of the operations if there is an error that occurs in the execution of the operation.

OperationFailedException

<wsdl:message name="OperationFailedException">
   <wsdl:part name="fault" type="impl:OperationFailedException"/>
</wsdl:message>

AccessDeniedException

<wsdl:message name="AccessDeniedException">
   <wsdl:part name="fault" type="impl:AccessDeniedException"/>
</wsdl:message>

InvalidParametersException

<wsdl:message name="InvalidParametersException">
  <wsdl:part name="fault" type="impl:InvalidParametersException"/>
</wsdl:message>

Debugging Web Service Applications

As a Web service developer you may need to see the SOAP request messages being used to invoke Web services along with the SOAP response to those request messages. Oracle BI Publisher bundles the Apache Axis SOAP Monitor utility to monitor the SOAP message flow without requiring any special configuration or restarting of the server.

The client sample code sends a SOAP request to listening port 8888, and then takes advantage of Axis TCP monitor to route SOAP request to port 8080, where the PublicReportService is running. This will be a useful debugging tool for the Web service developer.

To start Axis TCP Monitor (tcpmon), from the command line enter the following:

% java org.apache.axis.utils.tcpmon

This launches the TCP monitor window. A sample of the window without any of the optional arguments is shown in the following figure:

the picture is described in the document text

To use the program, select a local port that tcpmon will monitor for incoming connections, a target host where it will forward such connections, and the port number on the target machine which should be "tunneled" to. Then click Add. Another tab will then display for your new tunneled connection. From there, you will see the SOAP Request and Response message, which facilitates debugging.

To run tcpmonitor, enter the following:

set CLASSPATH=.
set CLASSPATH=%CLASSPATH%;%WEB_HOME%\PORTAL\WEB-INF\lib\axis.jar
set TCPMON_PORT=8081
if not %1.==. TCPMON_PORT=%1
java org.apache.axis.utils.tcpmon %TCPMON_PORT% %ADMINSERVER_HOSTNAME%
%ADMINSERVER_PORT%