Usage of Scripts and Data Functions


Various scripts like IronPython scripts, JavaScripts, or scripts written in custom query languages to be executed in external databases can be part of an analysis. Addition of data functions is another way to enable scripting in Spotfire. See What are Data Functions? and Introduction for Data Function Authors for more information.

If, or under which circumstances, scripts and data functions are allowed to be used depend on whether the user is working in an on-premises or cloud environment, and in which product, Spotfire Consumer, Spotfire Business Author, Spotfire Analyst or Spotfire Desktop.

Also, users can be of different types depending on their authorities controlled by which groups they belong to, and the licenses specified for those groups. Licenses and groups settings are configured in Tools > Administration Manager.

The tables below list what is allowed to do for different combinations of user types and Spotfire products.

On-premises and TIBCO Spotfire Cloud Enterprise users

Single-tenant cloud environments can be configured with licenses in the same way as on-premises solutions with a Spotfire Server. Spotfire Desktop users have the same functionality as Spotfire Analyst users with script author license but there is always local execution and no library or script author functionality available.

Untrusted TERR scripts may execute in T-REX*** mode for all user types.

Type of user

Available data function engines

Create script

Add script to analysis

Save trusted script in library

Use results in analysis

Analyst

without Author Script license

Local:

IronPython

JavaScript

TERR

Python

Remote:

TERR (TERR Service or TSSS)$

Python (Python Service)$

R (TSSS)$

On-prem remote only:

MATLAB (TSSS)$

SAS (TSSS)$

 

No

Yes, if the script is saved as trusted to the library by an authorized* script author.**

No

Yes

Analyst

with Author Script license

Yes

Yes, if the script is trusted by you, or saved as trusted to the library by an authorized* script author.

No

Yes

Analyst

with Author Script license + member of the Script Author group

Yes

Yes, if the script is trusted by you, or saved as trusted to the library by an authorized* script author.

Yes

Yes

Business Author

with Execute data functions license

Remote:

IronPython

JavaScript

TERR (TERR Service or TSSS)$

Python (Python Service)$

R (TSSS)$

On-prem remote only:

MATLAB (TSSS)$

SAS (TSSS)$

 

No

Yes

You can only run scripts that are saved as trusted by an authorized script author.

No

Yes

You can only run scripts that are saved as trusted by an authorized script author.

Consumer

No

No

No

Yes

You can only run scripts that are saved as trusted by an authorized script author.

*Script authors are authorized, if they are members of the Script Author group.

**If you previously had a license, the scripts that you created by that time can still be run.

***TERR Restricted Execution Mode (T-REX) allows a limited subset of low-risk functions to execute unrestricted.  

$Server-side execution requires additional products.

 

TIBCO Cloud Spotfire users

The general multi-tenant Spotfire cloud solution allows self-service script usage for Analyst users only.

On the web, only TERR data functions are available. They always execute in the containerized TERR Service.

Type of user

Available data function engines

Create script

Add script to analysis

Save trusted script in library

Use results in analysis

Analyst

Local:

IronPython

JavaScript

TERR

Python

No

Yes, if the script is trusted by you.

All TERR data function scripts run locally (no server-side execution permitted).  

Untrusted TERR scripts can execute locally in T-REX*** mode.

No

Yes

Business Author

 

Remote:

TERR

 

No

For security reasons, scripts cannot be used, except for TERR data functions.

No

Yes

Consumer

No

No

No

Yes

***TERR Restricted Execution Mode (T-REX) allows a limited subset of low-risk functions to execute unrestricted.  

See also:

Manage Trust

Using Scripts in the Text Area

IronPython Example Scripts

JavaScript Example Scripts

Action Script Examples