Like what you see? Have a play with our trial version.

Overview

In addition to the UI configuration options within Yellowfin, a number of SQL-provoked settings exist, outlined below.

Enforce a global language

You can override the global language of a Yellowfin instance, but beware that this applies to all organizations within the instance — primary and clients alike. This forces Yellowfin to be translated into the specified language without any exceptions. To do so, add the following SQL into your configuration database:

INSERT INTO Configuration VALUES (1, "SYSTEM", "OVERRIDE_LANGUAGE", "zh_CN");

In this sample, “zh_CN” refers to the Java language locale code for the language you wish to enforce.

Also in this sample, 1 denotes the primary/default organization. This is a system-wide setting that cannot be enabled for specific client organizations; therefore, this value must always be set to 1.

Hide JS API details

You can hide the Java version and OS version from the JS API response by setting HIDEJSAPIDETAILS. to true. In this case, the following components of the serverInfo object 

javaVersion, operatingSystem, opertatingSystemArch, operatingSystemVersion, releaseVersion, schemaVersion, subVersion, buildVersion

Note: This will not hide the base and loaded resources values because they are always required by the browser to load further parts of the JS API. 

To make use of this option, start by running this SQL on your database (this is a system-wide setting, so the IP Org is set to 1):

INSERT INTO Configuration(IpOrg, ConfigTypeCode, ConfigCode, ConfigData) values(1, 'SYSTEM', 'HIDEJSPAPIDETAILS', 'true');

Next, restart your Yellowfin instance, then embed a piece of content from the JS API. It doesn't matter what it is; you just need to load the JS API. You could even do this with the basic script tag:

<script src="http://yourYfServer/JsAPI/v3"></script>

To test this has worked, open your browser console and type: 

yellowfin.serverInfo

The console should display some empty components for the serverInfo object, apart from the base and loaded resources values (required by the browser).

Limit cached filter context

Use this parameter to force the filter formatting options 'Ignore Report Filters when Loading Cached Value' and 'Restrict SQL Context to Filter Columns Only' on (see the Dimension filter settings table of events on this page for more info). 

When set to FALSE (default), these two options are displayed within the UI and the user can choose whether toggle them on or off.

When set to TRUE, these two options are both forced to be enabled on all filters on all reports on all datasources, and the options within the UI are hidden from display. In this situation, users don't need to remember to switch these settings on, and the only way they can be switched off is by changing this advanced configuration from TRUE to FALSE.

INSERT INTO Configuration(1, 'SYSTEM', 'LIMITCACHEDFILTERCONTEXT', 'TRUE');

In this sample, 1 signifies the primary/default organization.


Prevent data sources from being flagged as "unavailable" even when offline

When Yellowfin flags a data source as unavailable, it relies on a web service call or a Yellowfin administrator to manually bring it back online by accessing the list of data sources in the Admin Console, finding the data source flagged as offline, and clicking on the Test Connection button — even if a data source has come back online independently. In some situations where data sources are only offline temporarily, you may wish to avoid them being flagged as unavailable to reduce manual intervention. In this case, you can use parameter to prevent any flagging.

When set to FALSE (default), if a data source is detected to be offline, it will be flagged as unavailable and will require manual intervention to come back online.

When set to TRUE, none of your data sources will be flagged as unavailable, whether they're offline temporarily or permanently. You would need to manually investigate each data source independently of Yellowfin.

INSERT INTO Configuration VALUES (1, 'SYSTEM', 'NEVERMARKSOURCEUNAVAILABLE', 'true');

This is a system-wide setting that cannot be enabled for specific client organizations; therefore, this value must always be set to 1.

Oracle scope selector

This configuration option can reduce the scope for Yellowfin to use when fetching synonym objects from an Oracle data source. 

When this option is not used, Yellowfin fetches ALL_OBJECTS and ALL_SYNONYMS

When the value of this configuration is "USER", Yellowfin fetches USER_OBJECTS and USER_SYNONYMS to improve performance.

INSERT INTO Configuration VALUES(1,'SYSTEM', 'ORCL_SCOPE','USER');

This is a system-wide setting that cannot be enabled for specific client organizations; therefore, this value must always be set to 1.

Allow empty or null value to be used for cached filter

Use this parameter to get parent filter results to persist when a child filter result contains empty or null values.

When set to FALSE (default), cached filters will ignore empty or null values.

When set to TRUE, cached filters will not ignore empty or null values.

INSERT INTO Configuration values(1, 'SYSTEM', 'ALLOWNULLCACHEFILTERS', 'TRUE');

In this sample, 1 signifies the primary/default organization.

Disable URL title fetching 

This parameter prevents Yellowfin from fetching a URL title when sharing links in discussions. When set to TRUE, only the URL will be displayed in the discussion. When set to FALSE (or omitted, which is the default),  the title of the URL will be displayed in the discussion.

INSERT INTO Configuration VALUES (1, 'SYSTEM', 'DISABLEURLTITLEFETCH', 'TRUE')

In this sample, 1 signifies the primary/default organization.

Conserve memory during export

The low memory export configuration prevents memory from being exhausted when exporting large reports to XLSX format. When the configuration is enabled, the system processes reports in parts rather than as a whole.

To enable this feature, add the following SQL code into your configuration database:

INSERT INTO Configuration(IpOrg, ConfigTypeCode, ConfigCode, ConfigData) values(<IP_org>, 'SYSTEM', 'REPORTLOWMEMORYEXPORT', 'TRUE');

Remember to set your value for <IP_org> to either the primary org (1) or a client org.

Display Low Memory Exports toggle

This configuration displays the Low Memory Exports toggle option on the report Export Settings dialog box, providing the option to enable or disable the feature within the UI per report. The toggle is also displayed on the System Configuration page to enable or disable the feature as the default setting for all report exports.

Enabling this option overrides the global setting, REPORTLOWMEMORYEXPORT which enforces low memory exports. This means exports will be faster, but more memory-intensive.

When set to TRUE, the export option ‘Low Memory Exports’ is displayed in the report Export Settings dialog box. 

To enable this feature, add the following SQL code into your configuration database:

INSERT INTO Configuration VALUES (<IP_org>, 'SYSTEM', 'SHOWLOWMEMORYEXPORTOPTION', 'TRUE');

Remember to set your value for <IP_org> to either the primary org (1) or a client org.

Disable outer join check

During the creation of views, you can configure outer joins to be treated as inner joins when creating View relationships in the database.

The following is the SQL command for this:

INSERT INTO Configuration(IpOrg, ConfigTypeCode, ConfigCode, ConfigData) values(1, 'SYSTEM', 'DISABLEOUTERJOINCHECK', 'TRUE');

In this sample, 1 signifies the primary/default organization.

Conserve memory during report broadcast

Broadcast reports are run for each of the multiple recipients separately, taking into account their access filters, languages or other factors. To conserve memory usage and system performance, use the following configuration so that each recipient’s report is delivered as soon as it’s generated (instead of waiting for all the recipients’ reports to get done before sending them together).

Warning: This may result in emails being delivered to recipients across a long period of time.

INSERT INTO Configuration VALUES (1, 'SYSTEM', 'BROADCASTSENDINLINE', 'TRUE');

In this sample, 1 signifies the primary/default organization.


Enable carbon copy on broadcast emails

This enables the carbon copy option on broadcast emails, so multiple users who have access to the same data are sent a single email which is sent to the first user, with the remaining recipients being sent a carbon copy. Note that all recipients will be visible to one another.

INSERT INTO Configuration VALUES (1, 'SYSTEM', 'COMBINEEMAILGROUPS', 'TRUE');

In this sample, 1 signifies the primary/default organization.

Disable row limit on filtered queries

Yellowfin restricts the number of rows returned from queries that involve filter values. This is the same limit that is applied for all database queries (even those without any filters) and is configurable by the user in the View builder and at the Report level. However, there is a hidden configuration option that allows users to remove this limit from filtered queries, thereby allowing Yellowfin to return all matching rows. To apply this, add the following SQL into your Configuration database:

Warning: Be careful when disabling the limit. If the filtered query returns a large amount of values, it might hang the system.

INSERT INTO Configuration VALUES (1, 'SYSTEM', 'DISABLEFILTERPROMPTLIMIT', 'TRUE');


Change historic schedule record limit

Scheduled tasks that track historic executions maintain the records for the past 30 days. To change this time limit, use the following configuration.

INSERT INTO Configuration VALUES (1, "SYSTEM", "HISTORICSCHEDULERECORDSLIMITDAYS", "60");

In this sample, 1 is the organization ID, and 60 is the number of tracking days.


Disable calculated field validation

Calculated fields are validated before they are saved into the database to determine the data type of their resulting field. However, it is possible to disable this validation for all calculated fields (including those created via Freehand SQL).

Use the following SQL to do so:

INSERT INTO Configuration(IpOrg, ConfigTypeCode, ConfigCode, ConfigData) values(1, 'SYSTEM', 'VALIDATECALCONSAVE', ‘FALSE’);

In this sample, ConfigData = TRUE enables validation, and ConfigData = FALSE disables it. 


Force Yellowfin to use legacy RC4 128 PDF encryption

When set to TRUE, this forces Yellowfin to use legacy RC4 128-bit encryption for PDFs rather than the default  of AES 256-bit encrypted PDFs.

Use the following SQL to do so:

INSERT INTO Configuration VALUES (1, 'SYSTEM', 'USELEGACYPDFENCRYPTION', 'TRUE');

In this sample, 1 signifies the primary/default organization.


Log failed login events

When set to FALSE (default), only failed login attempts made via a valid username are recorded in the system log files. 

When set to TRUE, all failed login attempts to Yellowfin are recorded in the system logs, whether the username is valid or not, allowing for more accurate auditing of login activity.

Use the following SQL to do so:

INSERT INTO Configuration VALUES (1,'SYSTEM', 'LOGFAILEDLOGINEVENTDETAILSENABLED','TRUE')

In this sample, 1 signifies the primary/default organization.


Broadcast filename template

This configuration can be used as a template for filenames used in email broadcasts, FTP schedules and save to disk schedules. When set, it applies to all broadcasts on your Yellowfin instance. This configuration overrides the Append Broadcast Date and Append Broadcast Time options, therefore their respective checkboxes will no longer appear on the broadcast configuration dialog box once this configuration is set.

The value stored in the configuration can contain placeholders for the report name and date that will be filled in by the broadcast process:

  • The {filename} placeholder will be replaced with the report name for email broadcasts, or the file name specified in the FTP Broadcast and Save to Disk Schedule dialog boxes.
  • All other placeholders within the curly brackets are treated as datetime format strings, following the SimpleDateFormat specification.

For example, utilizing the Broadcast Filename Template format {yyyy-MM-dd_HH-mm-ss} as outlined in the code snippet below, will produce the filename ‘Ski Report - 2020-01-01_12-34-56.pdf’. 

The resulting filename must be compatible with the filesystem if FTP schedules and Save to Disk schedules are used. For example, if the destination FTP server or the Yellowfin instance are running on Windows, then using a colon character (:) should be avoided as it is an illegal character in filenames on NTFS. Email broadcasts, however, will replace illegal characters in filenames with underscores.

INSERT INTO Configuration VALUES (1, 'SYSTEM', 'BROADCASTFILENAMETEMPLATE', '{filename} - {yyyy-MM-dd_HH-mm-ss}');

In this sample, 1 denotes the primary/default organization. This is a system-wide setting that cannot be enabled for specific client organizations; therefore, this value must always be set to 1.

Enabling JNDI data source connections

JNDI data source connection types can be enabled by running the following SQL against your configuration database: INSERT INTO Configuration(1, 'SYSTEM', 'JNDISOURCEENABLED', 'TRUE');

Enable non-mandatory filters on Jasper Reports

Use the following code to enable non-mandatory filters on Jasper Reports.

INSERT INTO Configuration VALUES (1, 'SYSTEM', 'JASPERFILTERSNOTMANDATORY', 'true');

Limit the number of unique rows for cross-tab and other similar reports

You can enable the maximum number of unique rows that can be generated for cross-tab reports and certain chart types to avoid memory exhaustion.

INSERT INTO Configuration VALUES (1, "SYSTEM", "CELL_LIMIT", "80000");

"80000" is an example of the limit only, please change it to suit your needs.

Set a default broadcast format

Use the following configuration to set a default format for broadcasts.

INSERT INTO Configuration (iporg, configtypecode, configcode, configdata) 
VALUES (1, 'SYSTEM', 'BROADCASTDEFAULTCODE', 'XLSX');

XLSX is an example of the format. You can choose from the following formats: 'HTML', 'CSV', 'DOCX', 'PDF', 'LINK', 'XLSX, 'TXT'.

Restrict guest users from being redirected to the Browse page

The following configuration can be used to limit guest users from being directed to the Browse page when canceling a report, thus not allowing the user to see all public reports.

RESTRICTGUESTUSER = TRUE

The default would be false, and still allow exit to the Browse page. Setting to TRUE would redirect users to a “Not available” page.

Prevent license refreshes when deleting users

The following configuration can be used to prevent License Refreshes from cascading across the cluster upon user deletion. This approach serves as an alternative to a bulk delete web service that could efficiently delete multiple users with just one license refresh.

INSERT INTO Configuration VALUES (1, "SYSTEM", "SKIPUSERDELETELICENCEREFRESH", "TRUE");


  • No labels