Exporting from views and reports
Platform provides export capabilities from views and reports. The header part of each view component contains links to export the view's records in XLS, XLSX, CVS, a spreadsheet in Google Docs (see Integrating with Google applications.) or PDF. The following screen shows all the export formats available for a view in Platform:
Likewise, the following screen shows all the export formats available for a view in Platform for all asynchronous exports.
Exports created in this way are limited as defined in the MaxExportRows shared property due to performance reasons.
You can hide individual export options by adding the following JavaScript code to Application custom header section (to apply changes to the entire application).
<script>
rb.newui.options.listView.hideXlsExportOption = false;
rb.newui.options.listView.hideCsvExportOption = false;
rb.newui.options.listView.hideGoogleExportOption = false;
rb.newui.options.listView.hidePDFExportOption = false;
</script>
By default all these export options are set to false. As per your requirement, you can modify these boolean values to hide the export options from the menu.
If you want to hide all the export options, use Hide Export List View property from the Page Designer. These options are available only in NewUI.
Background job processing on exporting records
Infinite Blue Platform can adequately direct any time constraint and resource centric jobs to the background in order to process them asynchronously. See Asynchronous Processing for more information.
To access background jobs and jobs history:
-
User Level:
-
Navigate to User Profile Menu > Background Jobs.
Note:- This is available in UI Blueprint 1 & 2, and is not available in Old UI (including Setup pages) and Old UI pages.
- This view show jobs submitted by user itself or all the tenant jobs for admin users.
-
-
Tenant Level:
-
Navigate to Setup Home > Monitoring > System Jobs (or)
-
-
System Level:
-
Navigate to System Console > Monitoring > Jobs and Events > Jobs/Jobs History
For more information, see System jobs.
-
Additionally, the following section briefs how any large data operations are picked up in case of List View and Reports.
List View
If the records are exported from a list view of any object definition and considering the count of records is above the limit as defined in the MaxRecordsForSyncActions shared property, the export job is submitted in the background for asynchronous processing.
The user is notified with a similar growl as displayed below, confirming the records are being exported in an asynchronous operation. Upon job completion, the user is notified via a UI notification and an e-mail serving the download link of the exported records.
If the count of records subjected to the export job is under the limit as defined in the MaxRecordsForSyncActions shared property, the export job is processed synchronously.
Reports
-
Tabular Reports - The generate report job behaviour for tabular reports is much similar to any list view record export job. If any tabular report is generated and considering the count of records in the report is above the limit as defined in the MaxRecordsForSyncActions shared property, the export job is submitted in the background for asynchronous processing.
The user is notified with a similar growl as displayed below, confirming the report is being generated in an asynchronous operation. Upon job completion, the user is notified via a UI notification and an e-mail serving the download link of the generated report.
-
Document Template - The document template report generation job involves rendering of the output which may take a considerable amount of time while blocking the interface until the report is generated. Likewise, a dialogue box as displayed below is prompted on submitting a document template report generation job.
After entering a valid email address, the user can choose to Email this report or Run Now to get the job scheduled asynchronously or synchronously respectively. The accordance of conduct remains similar to List View & Tabular Report jobs.
- In the case of HTML, JavaScript and Custom Reports, the export process remains the same as described in the Document Template section.
An active user session is required to open the download link to retrieve the generated report.
Upon report generation or record export, the email serving the download link is valid only until 3 days for all the jobs processed asynchronously.
Field types such as File Upload, Image Upload, Template Field, Email Template are not supported during export even if they are part of list view/ tabular reports.
Multi-threaded Report/Export Jobs
Platform 6.6 now provides multi threaded functionality at user level. With this capabilty, now two or more report/export job can be submitted on the same list view by the user to run in parallel, provided the Platform instance is set up with as many threads. This capabilty is managed by the shared property - LargeDataReadJobsExecutorThreadCount.
Until Platform 6.5, the Large Jobs Executor service consisted of only 1 thread per system component (MASTER, PROD1, PROD2, etc). This single thread served following queued job types for all users loaded on the corresponding components.
-
ReportJob,
-
ListViewExportJob,
-
MassUpdateJob,
-
RelAttachDetachJob,
-
SetExpressionJob,
-
MassRunJob
From Platform 6.6 , Large Jobs Executor Service has been split into LargeDataRead and LargeDataWrite job groups.
LargeDataRead can have 1-10 threads and following jobs are served based on the configured number of threads simultaneously. For example, any two export jobs or one export and one report job submitted by the user may run in parallel by two threads if the shared property is set to > or = 2
.
-
ReportJob
-
ListViewExportJob
LargeDataWrite job group will still serve a single thread for remaining 4 job types.
10+
additional threads per node for the execution of massive data read operations. Adjust the thread count based on the Platform instance's needs or raise the thread count of MaxAlarmThreads shared property.