Scenario
Example
insight.ready(function () { // Get the Insight View. var view = insight.getView(); // Listen to the selected scenario(s). // In this case the first scenario in the view selection is listened to. var observer = view.withFirstScenario(); // listen for changes to the data in entities A, B, C // also called on view startup observer.withEntities('A', 'B', 'C') .notify(function (scenario) { // when this function is called you have access to the requested scenario(s) // an example of how to call a method on a scenario. var name = scenario.getName(); }); // Start listening to the observed scenarios and render the view. view.start(); });
Method summary
name | description |
---|---|
cancel | Cancel any execution of this scenario. |
createAttachment | Create a new scenario attachment. |
downloadAppAttachments | Downloads the attachments specified in the attachments parameter. |
downloadScenarioAttachments | Downloads the attachments specified in the attachments parameter. |
execute | Submits this scenario for execution. |
findAttachment | Searches for an attachment with the given name on the scenario and the app. |
findTaggedAttachments | Searches for tagged attachments on the scenario and the app. |
getAppAttachment | Return a single app attachment that matches the given filename. |
getAppAttachments | Returns all the file attachments on the app. |
getAppId | The ID of the app this scenario belongs to. |
getArray | Get a named array. |
getCreationDate | The date this scenario was created. |
getExecutionStatus | The ScenarioExecutionStatus for the scenario. Use in conjunction with ScenarioObserver#withExecutionStatus to observe the execution status and call the ScenarioObserver#notify callback on change. |
getId | The ID for this scenario. |
getModelSchema | The model's schema for this scenario. |
getName | The name of this scenario. |
getNotes | The notes associated with this scenario. |
getOwnerId | The username of the user that owns this scenario. |
getParameter | Gets the value of a named parameter. |
getPath | The path to this scenario in the Insight Repository. |
getScalar | Gets the value of a named scalar. |
getScenarioAttachment | Return a single scenario attachment that matches the given filename. |
getScenarioAttachments | Returns all the file attachments on the scenario. |
getScenarioType | The type of this scenario. |
getSet | Get a named set. |
getShareStatus | The share status of this scenario. |
getSummaryData | Get the ScenarioSummaryData |
getTaggedAppAttachments | Returns an array of app attachments with the given tags. |
getTaggedScenarioAttachments | Returns an array of scenario attachments with the given tags. |
isEditable | Check whether the scenario data is currently in an editable state. When a scenario is reserved for execution (queued, executing, completing) the scenario data cannot be modified. |
modify | Modify data on the scenario within a single transaction. |
setNotes | Set notes on this scenario. |
setOwnerId | Change the ownership of this scenario. |
Methods
- cancel ( ) → {Promise}
-
Cancel any execution of this scenario.
Returns:Type Description Promise promise, resolves when the scenario is successfully cancelled, or the scenario is not in the execution queue Example
Back to Topvar cancelledPromise = scenario.cancel(); cancelledPromise .then(function () { // at this point scneario has been cancelled. }) .catch(function (err) { // scenario failed to cancel });
- createAttachment ( options ) → {Promise}
-
Create a new scenario attachment.
Parameters:
Name Type Argument Description options NewAttachmentOptions optional Returns:Type Description Promise Resolves when user closes the editor or if attachment create fails Example
Back to Topscenario.createAttachment({filename: 'my_file.xml', tag: 'atag'}) .then(function(data) { console.log(data.attachment); });
- downloadAppAttachments ( attachments ) → {Undefined}
-
Downloads the attachments specified in the attachments parameter.
Parameters:
Name Type Description attachments Array.<Attachment> | Array.<String> Either an array of attachment IDs or an array of attachments Returns:Type Description Undefined Example
Back to Topscenario.downloadAppAttachments([attachment1,attachment2]); scenario.downloadAppAttachments([attachment1.getId()]);
- downloadScenarioAttachments ( attachments ) → {Undefined}
-
Downloads the attachments specified in the attachments parameter.
Parameters:
Name Type Description attachments Array.<Attachment> | Array.<String> Either an array of attachment IDs or an array of attachments Returns:Type Description Undefined Example
Back to Topscenario.downloadScenarioAttachments([attachment1, attachment2]); scenario.downloadScenarioAttachments([attachment1.getId()]);
- execute ( executionMode, options ) → {Promise}
-
Submits this scenario for execution, either to load the input data of a scenario, or to run it.
Parameters:
Name Type Argument Default Description executionMode string optional insight.enums.ExecutionType.RUN the mode of execution to perform options Object optional execution options Properties
Name Type Argument Description suppressClearPrompt boolean optional whether, on using an execution mode that clears input data, to suppress the confirmation prompt Returns:Type Description Promise promise, resolves when the scenario is successfully queued for execution Example
Back to Topvar runPromise = scenario.execute(insight.enums.ExecutionType.RUN, 'SLOW'); runPromise .then(function () { // scenario has been queued for execution }) .catch(function (err) { // scenario could not be executed. });
- findAttachment ( filename ) → {null|Attachment}
-
Searches for an attachment with the given name on the scenario and the app. If an attachments with the given name is found on the scenario, it is returned without searching the app. If no matching attachment is found on the scenario, the app is searched.
Parameters:
Name Type Description filename string the filename of the attachment to return Returns:Type Description null | Attachment the found attachment or null if not found Example
Back to Topvar attachment = scenario.findAttachment('sales-report.txt');
- findTaggedAttachments ( tags ) → {Array.<Attachment>}
-
Searches for tagged attachments on the scenario and the app. If any attachments with the given tag or tags are found on the scenario, they are returned without searching the app. If no matching attachments are found on the scenario, the app is searched.
If no tags are passed in, all scenario attachments with any tag are returned, and if the scenario has no tagged attachments, the app is searched in the same way.Parameters:
Name Type Argument Description tags string | Array.<string> optional The tags to search for Returns:Type Description Array.<Attachment> An array of Attachment objects Example
Back to Topvar taggedAttachments = scenario.findTaggedAttachments('tag1'); var taggedAttachments = scenario.findTaggedAttachments(['tag1', 'tag2']);
- getAppAttachment ( filename ) → {null|Attachment}
-
Return a single app attachment that matches the given filename.
Parameters:
Name Type Description filename string the filename of the attachment to return Returns:Type Description null | Attachment A single attachment object or null if not found Example
Back to Topvar attachment = scenario.getAppAttachment('sales-report.txt');
- getAppAttachments ( ) → {Array.<Attachment>}
-
Returns all the file attachments on the app.
Returns:Type Description Array.<Attachment> An array of Attachment objects Example
Back to Topvar appAttachments = scenario.getAppAttachments();
- getAppId ( ) → {string}
-
The ID of the app this scenario belongs to.
Returns:Type Description string The ID of the app this scenario belongs to Example
Back to Topvar appId = scenario.getAppId();
- getArray ( entityName ) → {InsightArray}
-
Get an array from this scenario. Will return an object representing the scenario array, rather than the data itself. If a filter has been applied to the entity by calling ScenarioObserver#filter, this method will return only the array elements which match the filter.
Parameters:
Name Type Description entityName string name of the entity Returns:Type Description InsightArray the array representation Example
Back to Topvar insightArray = scenario.getArray('ARRAY_NAME');
- getCreationDate ( ) → {Date}
-
The date this scenario was created.
Returns:Type Description Date The date this scenario was created Example
Back to Topvar creationDate = scenario.getCreationDate();
- getExecutionStatus ( ) → {ScenarioExecutionStatus}
-
The ScenarioExecutionStatus for the scenario. Use in conjunction with ScenarioObserver#withExecutionStatus to observe the execution status and call the ScenarioObserver#notify callback on change.
Returns:Type Description ScenarioExecutionStatus Example
Back to Topvar executionStatus = scenario.getExecutionStatus();
- getId ( ) → {string}
-
The ID for this scenario.
Returns:Type Description string The ID for this scenario Example
Back to Topvar scenId = scenario.getId();
- getModelSchema ( ) → {ModelSchema}
-
The model's schema for this scenario.
Returns:Type Description ModelSchema The model's schema for this scenario Example
Back to Topvar modelSchema = scenario.getModelSchema();
- getName ( ) → {string}
-
The name of this scenario.
Returns:Type Description string The name of this scenario Example
Back to Topvar name = scenario.getName();
- getNotes ( ) → {string}
-
The notes associated with this scenario.
Returns:Type Description string The notes associated with this scenario Example
Back to Topvar notesTxt = scenario.getNotes();
- getOwnerId ( ) → {string}
-
The username of the user that owns this scenario.
Returns:Type Description string The username of the user that owns this scenario Example
Back to Topvar username = scenario.getOwnerId();
- getParameter ( parameterName ) → {string}
-
Gets the value of a parameter from this scenario.
Parameters:
Name Type Description parameterName string the parameter name Returns:Type Description string a string representing the parameter value Example
Back to Topvar parameterString = scenario.getParameter('PARAMETER_NAME');
- getPath ( ) → {string}
-
The path to this scenario in the Insight Repository.
Returns:Type Description string The path to this scenario in the Insight Repository Example
Back to Topvar pathString = scenario.getPath();
- getScalar ( entityName ) → {PrimitiveType}
-
Gets the value of a scalar from this scenario.
Parameters:
Name Type Description entityName string name of the entity Returns:Type Description PrimitiveType entity scalar value Example
Back to Topvar scalarValue = scenario.getScalar('SCALAR_NAME');
- getScenarioAttachment ( filename ) → {null|Attachment}
-
Return a single scenario attachment that matches the given filename.
Parameters:
Name Type Description filename string the filename of the attachment to return Returns:Type Description null | Attachment A single attachment object or null if not found - getScenarioAttachments ( ) → {Array.<Attachment>}
-
Returns all the file attachments on the scenario.
Returns:Type Description Array.<Attachment> An array of Attachment objects Example
Back to Topvar scenarioAttachments = scenario.getScenarioAttachments();
- getScenarioType ( ) → {insight.enums.ScenarioType}
-
The type of this scenario.
Returns:Type Description insight.enums.ScenarioType the type of this scenario Example
Back to Topif (scenario.getScenarioType() === insight.enums.ScenarioType.SCENARIO) { // do something if this scenario has type 'SCENARIO' }
- getSet ( entityName ) → {Array.<PrimitiveType>}
-
Gets the elements from a set of this scenario. The set will be ordered alphanumerically by the server and if a set ordering function is defined in the view then it will also be applied.
An Insight Set is represented as a JavaScript array, containing the values in the set.Parameters:
Name Type Description entityName string name of the entity Returns:Type Description Array.<PrimitiveType> set elements Example
Back to Topvar setArray = scenario.getSet('SET_NAME');
-
The share status of this scenario.
Returns:Type Description insight.enums.ShareStatus The share status of this scenario Example
Back to Topif (scenario.getShareStatus() === insight.enums.ShareStatus.FULLACCESS) { // do something if share status is 'FULLACCESS' }
- getSummaryData ( ) → {ScenarioSummaryData}
-
The ScenarioSummaryData for the scenario contains summary information about the scenario and the current solution
Returns:Type Description ScenarioSummaryData Example
Back to Topvar summaryData = scenario.getSummaryData();
- getTaggedAppAttachments ( tags ) → {Array.<Attachment>}
-
Returns an array of app attachments with the given tags. The argument can be a single tag or an array of tags, or if no tags are passed in, the function returns all attachments with any tag.
Parameters:
Name Type Argument Description tags string | Array.<string> optional The tags to search for Returns:Type Description Array.<Attachment> An array of Attachment objects Example
Back to Topvar allTaggedScenarioAttachments = scenario.getTaggedScenarioAttachments(); var selectedTaggedAttachments = scenario.getTaggedScenarioAttachments(['tag1', 'tag2'])
- getTaggedScenarioAttachments ( tags ) → {Array.<Attachment>}
-
Returns an array of scenario attachments with the given tags. The argument can be a single tag or an array of tags, or if no tags are passed in, the function returns all attachments with any tag.
Parameters:
Name Type Argument Description tags string | Array.<string> optional The tags to search for Returns:Type Description Array.<Attachment> An array of Attachment objects Example
Back to Topvar allTaggedScenarioAttachments = scenario.getTaggedScenarioAttachments(); var selectedTaggedAttachments = scenario.getTaggedScenarioAttachments(['tag1', 'tag2'])
- isEditable ( ) → {boolean}
-
Check whether the scenario data is currently in an editable state. When a scenario is reserved for execution (queued, executing, completing) the scenario data cannot be modified.
Returns:Type Description boolean Whether the scenario data is currently editable Example
Back to Topif (scenario.isEditable()) { // modify scenario data }
- modify ( ) → {ScenarioDataChange}
-
Modify data on the scenario within a single transaction.
Returns:Type Description ScenarioDataChange A new scenario change builder associated with this scenario Example
Back to Topscenario .modify() // Both set commands will be deferred until commit is called. Then they will be executed as a batch update. .setScalar( 'SCALAR_NAME', -99 ) .setArrayElement( 'ARRAY_NAME', [{key: [1], value: 'First'}, {key: [2], value: 'Second'}] ) .commit();
- setNotes ( notes ) → {Promise}
-
Set notes on this scenario.
Parameters:
Name Type Description notes string Notes to set against the scenario Returns:Type Description Promise Promise object Example
Back to Topscenario .setNotes('A short note about this scenario') .then(function () { // notes have been set. }) .catch(function () { // notes could not be set. });
- setOwnerId ( newOwnerId ) → {Promise}
-
Change the ownership of this scenario.
Parameters:
Name Type Description newOwnerId string the username of the new owner for this scenario Returns:Type Description Promise Promise object Example
Back to Topscenario .setOwnerId('userid') .then(function () { // ownership has changed. }) .catch(function (err) { // ownership could not be changed. });
© 2001-2024 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.