ins~updatescendata
Purpose
Atomically update one or more entities in an Insight scenario.
Synopsis
procedure updatescendata(scenid:text, updates:list of ins~entityupdate, flags:integer)
procedure updatescendata(scenid:text, updates:list of ins~entityupdate)
Arguments
|
scenid
|
ID of the Insight scenario
|
||
|
updates
|
List of
ins~entityupdate values describing the entities to update
|
||
|
flags
|
A bit-flag allowing other options to be specified. May be 0 (the default) or ins~FORCE_LOAD.
|
Example
declarations
SCENARIO_ID='2926e9a1-9568-4116-84ed-2e75190bc651'
regions: set of string
months: set of integer
pricesToAdd: dynamic array(regions, months) of real
pricesToRemove: dynamic array(regions, months) of real
end-declarations
pricesToAdd('UK',1) := 123,5
pricesToAdd('UK',2) := 124
pricesToAdd('UK',3) := 110,7
create(pricesToRemove('UK',12))
create(pricesToRemove('EU',12))
ins~updatescendata(SCENARIO_ID, [ ins~addarrayelts('prices', pricesToAdd),
ins~delarrayelts('prices', pricesToRemove),
ins~setscalar('maxProfit', 99,1) ] )
if ins~haserror then
writeln_('Error: ',ins~getlasterror)
end-if
Example of adding 3 elements of the 'prices' array, deleting 2 more, and updating the maxProfit scalar.
Further information
1. It is recommended to create an
ins~entityupdate for each entity you want, then make a single call to
ins~updatescendata. Not only is this more efficient than making a separate call for each entity, but it ensures that the scenario data is always consistant (ie nobody can read the data between updates of two entities).
2. If scenario ID was not found, an error was encountered or there is an issue communicating with the Insight server, the error flag will be set and
ins~haserror will return
true.
Related topics
ins~setscalar,
ins~setscalars,
ins~addsetelts,
ins~delsetelts,
ins~addarrayelt,
ins~addarrayelts,
ins~delarrayelt,
ins~delarrayelts
© 2001-2025 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.
