- 2.1 Selecting a report
- 2.2 Parameter values
- 2.3 Running and viewing the output
- 2.4 Output formats
- 2.5 Email
- 2.6 Scheduling a report
- 3.1 Report creation steps
- 3.2 Anchors and binds
- 3.3 Dynamic SQL example
- 3.4 Report header
- 3.5 Parameters
- 3.6 Assignments
- 3.7 Categories
- 3.8 Multi-language
- 3.9 Access control
- 4.1 LOVs
- 4.2 Assignments
- 4.3 Categories
- 4.4 Copy Report
- 4.5 Export
- 4.6 Import Concurrent Program
- 4.7 Column Translations
- 4.8 Dynamic Column Translations
- 4.9 License Key
- 5.1 Debugging
- 5.2 Supported browsers
- 5.3 Outbound Interfaces
- 5.4 MS Excel and CSV files
- 5.5 Disable protected view
Blitz Report is an Oracle Forms-based software, fully integrated with Oracle E-Business Suite. It enables your IT support team to easily store and edit SQL scripts for reports, and to make them available to your business users. Blitz Report runs as a concurrent process and generates output files in XLSX or text delimited CSV format. Upon completion, reports automatically download and open in Excel.
When developing Blitz Report, our aim was to create the most simple and efficient operational reporting tool for Oracle EBS – optimized for skilled IT professionals to better organize and maintain reporting SQLs and for business users to quickly extract application data without having to learn new skills.
We hope that you enjoy Blitz Report and welcome your feedback to firstname.lastname@example.org.
2. Running Blitz Report
Basic steps to run a Blitz Report are:
2.1 Selecting a report
When opening Blitz Report, a selection of available reports is displayed automatically. The list can be restricted further by typing the first characters of the desired report name.
Reports can also be selected by:
- Performing a text search by typing into the report name field. This executes a full text search on report name, description, parameters and/or SQL definition, enabling you to search by column names, for example. The search is not case sensitive and allows creation of logical expressions using keywords ‘and’ or ‘or’ and use of brackets to group sub-expressions.
- A double click into the report name field
- Using the LOV attached to the report name
- Pressing the F1-key
- Picking a Category from the dropdown list
- Using the find/torch menu symbol
- Running a query on the report name or description fields via F11, Ctrl+F11
By default, users can select from reports assigned to their current logon responsibility only.
The LOV of reports can be extended by setting profile option ‘Blitz Report Filter Reports by Responsibility’ to ‘No’. This way, users will see all the reports assigned to them, regardless of their current logon responsibility.
Text search example:
Scrolling further to the right in the search results shows the matching score and fields in which the keywords are found.
When entering multiple keywords, the search matches all keywords by default.
Above example lists all reports containing both words, ‘item’ and ‘invoice’.
To search on either of the keywords, combine them with ‘or’.
2.2. Parameter values
Report parameters filter, limit or define the extracted data. Parameters can have lists of values that either enforce selection of one particular value (e.g. account number) or that allow matching by wildcards such as ’%’ or ‘_’.
To display the LOV for a parameter, double click either into the parameter value field or on the three LOV dots on the right.
Some parameters may allow entry of multiple values, depending on the definition of the parameter (see here for details).
To run a report for a list of account numbers for example, tick the ‘Multiple Values’ checkbox next to the parameter and either select account numbers one by one from the LOV or enter a comma-separated list of numbers manually.
Larger lists of multiple parameter values up to a length of 32000 characters can be entered using the ‘edit field’ menu function.
Multiple values can be separated by either comma, semicolon or line feed. Using the ‘edit field’ menu in combination with a line feed separator for example allows running a report for a list of parameter values copied directly from an excel sheet column.
2.3 Running and viewing the output
A click on the ‘Run’ button launches a background concurrent process to extract the report data. The output XLSX file opens automatically upon program completion.
While the report concurrent process is pending or running, the request status is displayed on the output button.
Profile option ‘Blitz Report Output Button Refresh Interval’ controls the frequency of this status update (in seconds). Setting this profile option to zero will disable the recurring check for request completion and prevent the output from opening automatically. In this case, the output button status can be refreshed by navigating into the report name or description field instead. Once the report finishes, the output button will become available for output file download.
2.4 Output formats
Blitz Report extracts data in XLSX format as a default. Use profile option ‘Blitz Report Output Format’ to extract data to delimited text formats CSV or TSV.
While XLSX output is convenient to use, its output size is limited to 1048575 rows.
CSV output, on the other hand, is not limited in file size and offers maximum extraction performance.
Tick the email checkbox to send the Blitz Report output file as an email attachment. The email address defaults to the user’s email address and can be changed manually. Multiple email addresses can be entered as a comma-separated list. A double click into the email-address field opens a bigger editor window to facilitate entry.
It is also possible to set up a default email address for particular reports or via profile option ‘Blitz Report Default Email Address’ (see here for details).
The default email subject for Blitz Reports is stored in FND message XXEN_REPORT_EMAIL_SUBJECT. To change this text, navigate to Application Developer → Application → Message → query message XXEN_EMAIL_SUBJECT and edit the message text.
You can use the following placeholders for automated replacement at run-time:
&REPORT_NAME &ROW_COUNT &DB_NAME &USER_NAME &REQUEST_ID &SITE_NAME
You can also create new custom messages. Prefix these with XXEN_EMAIL and use them as default email subjects by setting the profile option ‘Blitz Report Email Subject’.
2.6 Scheduling a report
Blitz Reports can be scheduled as background processes to run at a certain date or time. This feature can be used to run time-consuming data extractions during non-office hours or to use a scheduled Blitz Report as an outbound interface.
The easiest way to schedule a report, with the appropriate parameters, is to use the Blitz Report form to start a one-time run of the desired report and to then copy the submitted background concurrent request of that run:
- Run a report from the Blitz Report execution form with parameter restrictions as required
- Navigate to the menu → view → requests → submit a new request → single request → Copy → Find → select the concurrent request submitted in step 1.
- Update schedule and delivery options as required and re-submit the request
Alternatively, you can submit a new ‘Blitz Report’ concurrent request, populating its parameters manually. Select the required report name from the LOV and populate parameters 1 to 98 with values in exactly the same order as they appear on the Blitz Report execution window. For example, if the third parameter is ‘Operating Unit’ with a value of ‘Vision Operations’, then Parameter3 of the concurrent request would need to be populated with this value in order to filter the report data by operating unit.
A multiple value string can be entered by using the keyword <multiple_values> (see below).
To schedule the report ‘Customer Sites’ and extract the data as shown in the previous example, concurrent request parameters would need to be entered as follows.
3. Building a Blitz Report
3.1 Report creation steps
With Blitz Report you can easily leverage existing SQL to make a robust report for your users.
A Blitz Report consists of a main extraction SQL and optional parameters that enable users to control or restrict data returned by a report.
To create new Reports, the profile option ‘Blitz Report Access Level’ must be set to either ‘Developer’ or ‘System’. With this profile setting, the Blitz Report execution window shows an additional ‘Setup’ button, which opens the setup window as shown below.Basic steps to create a new report are:
Unlike most reporting tools, Blitz Report creates dynamic SQL at run-time, combining the extraction SQL and the user-specified parameters in an optimal way. This allows unused parameters to be dropped at run-time, thus eliminating a frequent source of non-performant SQL – the very common WHERE clause for optional parameters ‘column_name=nvl(:bind_variable, column_name)’.
To ensure that there is no unnecessary parsing of the dynamic SQL, Blitz Report’s parameterization uses bind variables.
3.2 Anchors and binds
Anchors are ‘placeholders’ in the extraction SQL, which allow the precise placement of additional (optional) parameterized SQL clauses at run-time. These clauses are constructed from user-specified parameters, which are then inserted into the extraction SQL at run-time. There are two types of Anchors:
WHERE clause SQL anchors, such as ‘1=1’, ‘2=2’ etc. Blitz Report inserts the associated SQL text directly before these anchors, automatically adding the keyword ‘and’ and a line feed, to create valid SQL. This allows quick parameter creation – no need to consider the precise position of the ‘and’ keyword.
Lexical parameter references work in the same way as lexical parameters in sqlplus or Oracle reports. Blitz Report replaces these placeholders completely with the parameter SQL text at run-time. If a parameter value is left blank, the corresponding reference is removed before SQL execution.
However, the ‘n=n’ anchor can only be used for WHERE clauses (since the ‘n=n’ syntax remains in the run-time SQL).
The ‘&lexical’ anchor can be used to add whatever SQL ‘snippets’ are required by the report, featuring (but not limited to):
- WHERE clauses
- Dynamic tables and columns
- ORDER BY, GROUP BY
- Complete subselects or EXISTS clauses
The same anchor may be used multiple times inside a main SQL. Blitz Report inserts the corresponding parameter text for each occurrence.
Similar to other reporting solutions, Blitz Report also supports the use of bind parameters in the main SQL. To avoid performance issues due to due to nvl(:bind_variable, column_name) coding for optional parameters however, it is recommended to use one of the above anchors for dynamic SQL instead.
|Anchor Type||Main SQL||Parameter SQL text||Run-time SQL|
3.3 Dynamic SQL example
A query on parties and accounts (see below) should allow users to extract all customers’ information or to restrict the data by optional parameters such as customer name or account number.
select hp.party_number, hp.party_type, hp.party_name, hca.account_number from hz_parties hp, hz_cust_accounts hca where 1=1 and hp.party_id=hca.party_id
A restriction to customer name would require addition of a WHERE clause:
upper(hp.party_name) like upper(:customer_name)
In Blitz Report, the parameterized WHERE clauses are set up separately from the main SQL. Blitz Report only inserts individual WHERE clauses into the extraction SQL (at run-time) if the user enters a value for that particular parameter.
In this example, If the user provides a value for the customer name parameter, Blitz Report would add the above WHERE clause at the position of the anchor ‘1=1’ and execute the below SQL for data extraction.
select hp.party_number, hp.party_type, hp.party_name, hca.account_number from hz_parties hp, hz_cust_accounts hca where upper(hp.party_name) like upper(:customer_name) and 1=1 and hp.party_id=hca.party_id
3.4 Report header
Report name uniquely identifies reports. Names should be short and descriptive.
3.4.5 Author email
Email address of the report author.
Additional information can be found on registered authors in our online library.
3.4.6 Default email
Default email address for sending output files. If different email address are set up on different levels, the default email on the Blitz Report execution window is derived in following order:
- Default email setup on report level
- Profile option ‘Blitz Report Default Email Address’
- FND user’s email
- HR person’s email
3.4.7 Number Format
Display format for numeric values in XLSX output files. By setting the number format, column values can be shown with thousands separator and a fixed number of two decimals for example.
The display format can also be set for individual report columns or on profile option level, see column translations.
Defines whether a report is visible to end users. Disabling a particular report would remove it from the end user report list. This may be useful during the development and testing phase. Even if a report is disabled, it may still be run by users having user admin, developer or system access.
Double click on a report version number to review the change history and previous report SQLs. Note that a new report version number is added and stored automatically at each update of a report’s main SQL. Other report setup modifications such as report name, description or parameter changes are not stored in the version history.
Reports of type ‘Protected’ or ‘System’ are visible to users with access profiles set to ‘User Admin’ or ‘Developer’, but may only be edited by users with access profiles set to ‘System’.
This serves as an additional level of protection for reports providing important system functionality such as outbound interfaces or search screens.
See tutorials on www.enginatics.com for examples on how to use Blitz Report for custom system functionality.
3.4.11 BI Code
BI Publisher data definition code. When populated, Blitz Report executes the dataTrigger section e.g. beforeReportTrigger of the associated data definition XML template. This allows running BI Publisher report SQLs through Blitz Report where the data extracted is based on global temporary tables preprocessed in the before report trigger.
Double click onto the BI Code to download and view the data definition XML template.
3.4.12 Row Limit
3.4.13 Time Limit
Maximum execution time limit in seconds. The Blitz Report Monitor concurrent program automatically cancels reports exceeding the set time limit. This avoids excessive server load if a user submits a report with insufficient parameter restrictions for example.
Parameter definitions consist of:
- a parameter name, display sequence and optional parameter description and default value
- SQL text to be inserted into the main SQL dynamically at run-time
- an anchor as a reference to a position for the insertion
- a parameter type and optional LOV
- an optional matching value to restrict the SQL text insertion to certain parameter values
3.5.1 Display Sequence
Sequence number that defines the order in which parameters are displayed.
If different WHERE clauses are used for the same parameter name, e.g. to insert a different SQL text at different SQL positions or depending on different parameter matching values, display sequence is populated only for one record and left blank for subsequent lines of that parameter name.
3.5.2 Parameter Name
3.5.3 SQL Text
Parameter specific text added dynamically into the main SQL if a value for the parameter is entered at run-time. Usually, the SQL text would contain a bind variable name starting with a colon e.g. ‘:account_number’. Blitz Report would automatically detect the variable and bind it with the value entered by the user. A maximum of one bind variable is allowed.
Blitz Report also allows the insertion of SQL text using matching values. If the SQL text does not contain a bind variable, then the field ‘Matching Value’ becomes mandatory. Blitz Report inserts the corresponding SQL text if the parameter value entered by the user matches the matching value.
188.8.131.52 Multiple Values
If the SQL text includes a bind variable restriction and the user ticks the multiple values checkbox, Blitz Report automatically replaces the restriction with an IN-clause instead. This replacement works for the following WHERE clause restrictions using an ‘equal’ or ‘like’ operator:
column=:bind_variable column like :bind_variable upper(column) like upper(:bind_variable) lower(column) like lower (:bind_variable)
If the comparison between column and bind variable is done by a different operator e.g. column>=:bind_variable or, if the bind variable is encapsulated in additional functions, automated IN-clause replacement is not possible and the multiple values checkbox cannot be ticked by the users.
The position inside the main SQL where the parameter SQL text is inserted. The LOV for this field shows all anchors used in the main SQL. See here for detailed explanation of Anchors.
3.5.5 Parameter Type
Type of parameter used to control the LOV for parameter values at run-time. For parameter records with blank display sequence, type remains blank.
The following Types may be used:
- Char: free text
- Date: a valid date
- DateTime: a valid date including timestamp
- Number: a valid number
- LOV: a list of values shared among different reports and parameters, see Tools → LOVs
- LOV custom: a list of values used by one parameter only
- LOV Oracle: an Oracle standard list of values
3.5.6 LOV Name
3.5.7 LOV Query
SQL definition for a list of values. Double click on this field to open the LOV definition window. Valid SQLs need to have the columns ‘value’ and ‘description’ selected.
3.5.8 Matching Value
If the parameter value entered at run-time matches the matching value, then the corresponding SQL text is inserted.
Matching values may contain wildcard characters. If, for the same Anchor, the parameter value entered by the user matches more than one matching value due to use of wildcards, then the SQL text of the best (longest string) match is inserted.
3.5.9 Default Value
Specifies a default parameter value. If the value starts with the keyword ‘select’, then Blitz Report would execute the SQL to derive the default value dynamically instead of using a fixed value. Example: To get the current date in GL period format, use the following SQL as a default value:
select to_char(sysdate,'MON-RR') from dual
184.108.40.206 Advanced logical expression
Using the ‘Required’ button, you can define an advanced definition for required parameters by entering a logical expression based on parameter names.
This allows creating an either-or logic, for example, if at least one, but not all parameters are required.
An example of a logical expression forcing the user to enter either the parameter ‘Customer Name’ or ‘Account Number’ would be:
:Customer_Name is not null or :Account_Number is not null
Parameters are referenced by their names (in the installed base language, usually US), prefixed with a colon and having spaces or other non-word characters replaced with a single underscore.
Blitz Report evaluates the logical expression at run-time and displays an error message in case the expression is not met. The default message text displayed is stored in FND message XXEN_REPORT_INSUFFICIENT_PARAM and, for expressions enforcing at least one parameter entry, in message XXEN_REPORT_ONE_PARAM_REQUIRED.
To display a specific error message for your logical expression, enter a message text as required.
For reports that have an advanced logical expression set up for their parameter requirements, the required button label shows ‘Advanced’ instead of ‘Required’. One expression can be set up per report.
Access to individual Blitz Reports for normal users can be controlled using the following levels:
- Site: all users in the system
- Application: users having a matching application (via their responsibilities)
- Operating Unit: users having access to the assignment operating unit (either via Oracle’s MOAC / security profiles or profile ‘MO: Operating Unit’)
- Request Group: users having a responsibility linked to the assignment request group
- Responsibility: users having the assignment responsibility
- User: inclusion or exclusion by specific user
Exclusions take precedence over inclusions. A report included on Site level, but excluded for application ‘Receivables’, for example, would be accessible by all users in the system except from users only having responsibilities linked to the receivables application.
By default, inclusion assignments are implemented as a union, which means that the user can access a report if there is a match on any of the assignment levels.
For assignments on operating unit level in combination with request group or application however, it may be required to limit access to the combination or intersect of assignment level values instead of adding them.
This can be achieved by profile option ‘Blitz Report Restrict Assignments by Operating Unit Level’.
If set to ‘Yes’, users would, in addition to an assignment application or request group, require to have access to the assignment operating unit in order to access a particular report.
|Include||Operating Unit||Vision Australia|
|Include||Request Group||OE Concurrent Programs|
- Profile ‘Blitz Report Restrict Assignments by Operating Unit Level’=No
Users can access a report if they have a responsibility that is either linked to the receivables application or that has access to operating unit ‘Vision Australia’ or that is linked to request group ‘OE Concurrent Programs’.
- Profile ‘Blitz Report Restrict Assignments by Operating Unit Level’=Yes
Users can access a report if they have a responsibility that is either linked to the receivables application or request group ‘OE Concurrent Programs’ and that responsibility has access to operating unit ‘Vision Australia’.
Please note that assignments control report access for normal users only. Users having their access profile set to ‘User Admin’, ‘Developer’ or ‘System’ can access all reports in the system, irrespective of report assignments, and can run them, depending on report type and access profile as described here.
Blitz Report shows by default all reports accessible from all active responsibilities of a particular user, regardless of the current login responsibility. If profile option ‘Blitz Report Filter Reports by Responsibility’ is set to ‘Yes’, only reports assigned to the current login responsibility are shown.
Assignments can also be edited via Tools → Assignments
If you have a large number of reports in your system, category assignments will help users to find the reports they require via the category drop-down list on the execution window.
To create a new category, navigate to the menu Tools → Categories.
3.8.1 Report data
If you have more than one language installed, Blitz Report offers multi-language support via the Oracle EBS translation menu icon for fields visible on the execution window.
These fields are:
- Report name
- Report description
- Parameter name
- Parameter description
- LOV description
- Column translation
3.8.2 User messages
3.8.3 Execution window labels
The Labels shown on the Blitz Report execution window can be translated via Application Developer → Application → Lookups → Application Object Library, query Lookup XXEN_REPORT_TRANSLATIONS enter translations for the lookup code descriptions as required.
3.9 Access control
Three different report types, ‘Standard’, ‘Protected’ and ‘System’ are distinguishedand functionality is available according to following table.
|Functionality \ Access Profile||User||User Admin||Developer||System|
|Create modify or delete categories||no||yes||yes||yes|
|Edit licensing information||no||no||yes||yes|
|Run reports* (Standard or Protected)||yes||yes||yes||yes|
|Run reports* (System)||no||no||no||yes|
|Assign reports to users or categories (Standard or Protected)||no||yes||yes||yes|
|Assign reports to users or categories (System)||no||no||no||no|
|Create modify or delete reports (Standard)||no||no||yes||yes|
|Create modify or delete reports (Protected or System)||no||no||no||yes|
Users with access profile set to ‘User Admin’, ‘Developer’ or ‘System’ can access all reports in the system, irrespective of report assignments, and can run them, depending on report type and access level as shown above.
4. Tools menu
4.1.3 Validate From List
If checked, the parameter validation enforces selection of one record from the LOV and does not allow use of wildcards. If unchecked, the parameter value is not validated against the LOV and use of wildcards is allowed.
4.1.4 Filter Before Display
If checked, the LOV prompts the user to enter a (partial) value before LOV display. This is the recommended setting for LOVs containing a large number of records, such as customer names or transaction numbers. For performance reasons, execution of an unrestricted query on all LOV records should be avoided.
However, for better usability of LOVs with a small number of records, it is recommended to leave ‘Filter Before Display’ unchecked. The LOV then displays all values immediately the user clicks on the LOV icon next to the parameter value field.
4.1.5 LOV Query
Define categories to help users find reports, using predefined lists.
4.4 Copy Report
Creates a new copy of an existing report.
The Blitz Report export functionality generates a SQL script for automated load of report definitions, LOVs, categories and other Blitz Report related setup for migration purposes.
Following items can be exported as SQL load scripts:
- Reports from Category
- Reports except Category
- Column Translations
- Dynamic Column Translation Rules
- All Content (Reports, LOVs, Categories, Column Translations)
- Menu Entries
- Profile Option Values
- All Setup (Assignments, Menu Entries, Profile Option Values)
- Everything (complete Content and Setup)
To generate a SQL script for migration of all reports and their related setup, but without user and responsibility specific assignments, choose ‘All Content’.
To generate a script for load of all Blitz Report function menu entries including request group assignments for the Blitz Report background concurrent program to the responsibilities that have access to the Blitz report function, choose export type ‘Menu Entries’.
- If a report already exists, the load script updates it with the new definition while keeping the previous SQL in the version history.
- Report version numbers are generated automatically in each environment and thus may differ between environments. Reports imported into an environment for the first time start with version number 1.
- Report load scripts contain current report SQLs versions only. They do not include previous versions SQL history.
- The load of parameters based on shared LOVs requires the referenced LOV to be imported first. If a referenced LOV does not exist, the parameter is loaded with a custom LOV instead.
4.6 Import Concurrent Program
Blitz Report allows importing concurrent programs including their parameter and request group assignment setup via the ‘Import Concurrent Program’ menu entry.
This functionality can be used to migrate reports developed in other technologies such as BI Publisher, Oracle Reports or other PLSQL programs automatically into Blitz Report.
When importing BI Publisher concurrent programs of the JDOTEXE executable type, Blitz Report derives the report SQL from the corresponding XML datasource definition. If the originating datasource contains multiple SQLs, the largest one is imported.
For concurrent programs other than BI Publisher, only report name, description, parameter setup and request group assignments are imported and the main report SQL would need to be transferred manually.
During import, reports can be assigned to categories automatically, depending on the originating concurrent program’s application module, controlled by lookup XXEN_REPORT_APPS_CATEGORIES.
Reports from application modules listed in the lookup code column are assigned to the category listed in the description column during import.
There are three ‘special’ lookup codes ALL, ALL_BI_PUBLISHER and ALL_CONCURRENT_PROGRAM which can be used to assign all imported reports of a particular type to a specific category.
Mass import of reports from existing concurrent programs can also be done via a SQL script using the following API:
xxen_api.import_concurrent_program( p_application_short_name in varchar2, p_concurrent_program_name in varchar2, p_include_assignments in varchar2, l_report_id out pls_integer, l_message out varchar2 );
4.7 Column Translations
Column Translations offer multilanguage support for SQL column headers and setting of number formats for numeric columns.
4.8 Dynamic Column Translations
Dynamic column translations allow dynamic header column names based on an individual SQL. This can for example be used to generate reports with column names corresponding to actual date values e.g. Mar-17, Feb-17, Jan-17 etc.
Double click on the active users count to open a detailed list of active Blitz Report users.
Note: If you are using the free version of Blitz Report without a license key, you can still use Blitz Report’s full functionality for storing and maintaining SQLs, but Blitz Report will generate an output for the 30 most recently created reports only.
5. Tips and tricks
If you encounter an error during Blitz Report execution e.g. the message ‘Blitz Report output file creation failed.’, then this is usually due to an error encountered during SQL execution. Review the report concurrent logfile for error messages and try to execute the SQL as shown in the logfile directly in a development tool such as Toad or SQL Developer for further debugging. The logfile also shows the user entered parameter values and corresponding bind variables.
5.2 Supported browsers
The latest Oracle EBS forms technology stack supports Firefox and Internet Explorer on Microsoft Windows clients. We recommend using Firefox as it allows automated download and opening of output files without repeatedly prompting for user confirmation.
5.3 Outbound Interfaces
Integration with Oracle’s concurrent delivery options allows using Blitz Report as an outbound interface or monitoring tool. To schedule a Blitz Report for an incremental export of transaction line data, for example, you can restrict the main SQL to records that were modified since the report’s last run date by a parameter SQL such as:
rctla.last_update_date>= (select fcr0.actual_start_date from fnd_concurrent_requests fcr, fnd_concurrent_requests fcr0 where fcr.request_id=fnd_global.conc_request_id and fcr.parent_request_id=fcr0.request_id)
Oracle’s delivery options allow sending the report output e.g. as an email attachment, to an FTP location or uploading it to a WebDAV cloud storage.
If a scheduled report does not retrieve any data, Blitz Report does not send an empty output file. In case you also want to send empty output files for scheduled reports, set profile option ‘Blitz Report Suppress Empty File Delivery’ to ‘No’.
If you want to give your outbound interface report an additional level of protection and allow modifications by users with ‘System’ access profile only, set its type to ‘Protected’.
5.4 MS Excel and CSV files
5.4.1 Default delimiter
When opening a comma-separated CSV file with Microsoft Excel, the data gets parsed and arranged into different columns automatically. For this parser to work, the delimiter used in the output file needs to match the delimiter defined in the client computer’s regional settings.
In some countries, the default regional settings use a semicolon instead of a comma separator. To open output files correctly for these cases, there are three options:
Option1: Set the output format for Blitz Reports to TSV, tab-separated-values. Note: As Microsoft Excel does not associate itself with TSV file extensions upon installation, this requires an additional setup step on client computers to associate these file types to Excel.
Option2: Change the client computer’s regional settings from a semicolon to a comma.
Option3: Set profile option ‘Blitz Report CSV Delimiter’ according to the regional settings.
5.4.2 Column type detection – retain leading zeroes
When opening CSV files, Microsoft Excel automatically detects column datatypes and formats the data accordingly.
If you have alphanumeric data with numeric content, such as serial numbers for example, Excel’s automated type detection would import the data as number format and lose any leading zeroes.
This problem can be avoided by prefixing column data with an equal sign and enclosing it in double quotes to retain the alphanumeric format:
5.4.3 Macro to filter and freeze top row
One of the most common repetitive tasks when dealing with Excel spreadsheets is adding a filter and freezing the top row. For increased productivity, we recommend creating a Visual Basic macro for this task using Excel’s personal macro workbook (see Microsoft’s documentation on how to create a VB macro in PERSONAL.XLSB).
Example Visual Basic code:
Sub filter_and_freeze() ' ' macro to apply a filter and freeze the first line ' ' assign shortcut: ctrl+j ' Selection.AutoFilter With ActiveWindow .SplitColumn = 0 .SplitRow = 1 End With ActiveWindow.FreezePanes = True Rows("1:1").Select Selection.Font.Bold = True Range("A1").Select Dim myColumn As Integer Dim iColumn As Integer Cells.Select With Selection .WrapText = False End With Range("A1").Select myColumn = Cells.SpecialCells(xlCellTypeLastCell).Column Range(Cells(1, 1), Cells(1, myColumn)).EntireColumn.AutoFit For iColumn = 1 To myColumn If Columns(iColumn).ColumnWidth > 40 Then _ Columns(iColumn).ColumnWidth = 40 Next iColumn End Sub
5.5 Disable protected view
By default, MS Excel is configured to open downloaded files in protected view mode. To open files for editing without additional mouse click, we recommend disabling the protected view. Navigate to File → Options → Trust Center → Trust Center Settings → Protected View → untick: Enable Protected View for files originating from the Internet.
6. Profile options
The profile option ‘Blitz Report Access Level’ should be set to ‘Developer’ for users with the SQL skills required for creating Blitz Reports.
The following optional profile options can be set to configure Blitz Report functionality according to your business and user requirements:
|Profile option||Description||Default if not set|
|Blitz Report Access Level||Access level to Blitz Report:
User: run assigned reports only
User Admin: access all reports and assignment setup plus read only report definition
Developer: full access except system reports
System: full access including system reports (see Access control for more information)
|Blitz Report Additional Output Directory APPS Node||Directory path on the applications node to write output files to (in addition to witing them to $APPLCSF/out)|
|Blitz Report Additional Output Directory DB Node||Directory name on the database node to write output files to (in addition to witing them to $APPLCSF/out)|
|Blitz Report Additional Output Filename Pattern||Filename postfix pattern for output files written to a directory on the database node, if profile ‘Blitz Report Additional Output Directory’ is set. Use a date format string in single quotes e.g. ‘DD-MM-YYYY’ or request_id as a keyword.||_request_id|
|Blitz Report CSV File Delimiter||Delimiting character in Blitz Report CSV output files||,|
|Blitz Report Default Email Address||Default email address for Blitz Reports|
|Blitz Report Disable Column Translations||Set to ‘Yes’ to disable automated column header translations. Per default, SQL column headers get translated automatically to strings defined in Tools->Column Header Translations.||No|
|Blitz Report Email Attachment Size Limit (bytes)||Maximum attachment size for Blitz Reports sent via email. If the output exceeds this limit, the email will be sent without attachment and show a corresponding message in the email.||no limit|
|Blitz Report Email Subject||Message name for Blitz Report outbound emails. Message names must start with XXEN_EMAIL%.||XXEN_EMAIL_SUBJECT|
|Blitz Report Filter Reports by Responsibility||When set to ‘Yes’, the LOV of Blitz Reports is filtered to records assigned to a user’s current login responsibility only.
When set to ‘No’, all reports available to a user (also from others than the current login responsibility) are displayed.
|‘Yes’ for users with standard user access, otherwise ‘No’|
|Blitz Report Include Parameters in CSV Output||Defines whether parameter values are displayed at the beginning of Blitz Report CSV and TSV output files. Output to XLSX format always includes parameters on a second sheet.||No|
|Blitz Report Include SQL in XLSX Output||When set to ‘No’, the report SQL is not included on the parameter tab of Blitz Report XLSX output files||Yes|
|Blitz Report Log Retention Days Error||Number of days that log data for errored or cancelled report runs is kept. When left blank, no automated purge of log data is done.||no purge of log data|
|Blitz Report Log Retention Days Standard||Number of days that log data for successful standard report runs is kept. When left blank, no automated purge of log data is done.||no purge of log data|
|Blitz Report Log Retention Days System||Number of days that Blitz Report log data for successful system type report runs is kept. When left blank, no automated purge of log data is done.||no purge of log data|
|Blitz Report Output Button Refresh Interval||Blitz Report output button refresh interval in seconds. If set to zero, no automatic refresh is done.||1|
|Blitz Report Output Button Refresh Time Limit||Time limit in seconds within which Blitz Report checks for report completion and opens the output file automatically||no limit|
|Blitz Report Output Format||Blitz Report output file format (CSV, TSV or XLSX)||XLSX|
|Blitz Report Restrict Assignments by Operating Unit Level||If set to ‘Yes’, inclusion assignments on operating unit level work restrictive in combination with assignments on application or request group level, performing an intersect to these levels rather than adding them as a union.||No|
|Blitz Report Rownum Limit||Default limit for maximum number of rows returned by Blitz Report if not set up on individual report level.||no limit for CSV and TSV, 1048575 for XLSX|
|Blitz Report Show LOV When Opening Form||When set to ‘Yes’, the LOV of available reports opens automatically when opening Blitz Report.
Yes: automatically show LOV when opening Blitz Report
not set: show LOV when opening the execution window, but not when opening the setup window
No: don’t show LOV when opening Blitz Report
|show LOV when opening the execution window only|
|Blitz Report Show Tooltip Help||Enable or disable tooltip help display||Yes|
|Blitz Report Start Tab||Start tab when opening the Blitz Report setup window||SQL|
|Blitz Report Start Window||Start window when opening Blitz Report. This affects access levels other than ‘User’ only:
Execution: start with the Blitz Report execution window. Useful for users with development access, but daily tasks requiring mainly to run reports rather than maintaining them
Setup: start with the Blitz Report setup window
|Blitz Report Suppress Empty File Delivery||For scheduled Blitz Reports, file delivery through Oracle standard’s delivery options is suppressed if the report is empty. If set to ‘No’, also empty files are send for scheduled Blitz Reports||Yes|
|Blitz Report Time Limit||Default maximum execution time limit in seconds||no limit|
|Blitz Report XLSX Column Header Color||Hexadecimal code e.g. EAEFF5 for the column header background color in Blitz Report excel spreadsheets.||EAEFF5|
|Blitz Report XLSX Column Width Mode||Defines if the column width in Blitz Reports XLSX output files gets aligned to the column headers, the data or both.||both|
|Blitz Report XLSX Date Format||Date format mask for Blitz Report XLSX output files. If not set, profile ‘ICX: Date format mask’ is used.||value from profile ‘ICX: Date format mask’|
|Blitz Report XLSX Font||Blitz Report XLSX output file font||Calibri|
|Blitz Report XLSX Font Size||Blitz Report XLSX output file font size||10|
|Blitz Report XLSX Max Column Width||Maximum column width for Blitz Report XLSX output files||60|
|Blitz Report XLSX Min Column Width||Minimum column width for Blitz Report XLSX output files||2|
|Blitz Report XLSX Number Format||Numeric column format string for Blitz Report XLSX output files||General|
|Blitz Report XLSX Use Long Date Format||When set to ‘Yes’, dates in Blitz Report output XLSX files show the full year and leading zero for single digit days e.g. 05-Jan-2018 as opposed to 5-Jan-18||No|
|LOV||List of Values|