How to change EPV and ENV values using JavaScript in BPMV8.5
Exposed
Process Values (EPVs):-
Consider
a business process that utilizes some business data value such as the current
taxrate or the interest rate on loans. This value is obviously not a constant
as it may change over time. What we want is a way to supply such values to
processes while at the same time making them easy to modify as needed. The
concept of Exposed Processes Values (EPVs) is the IBPM solution.An EPV is a
named container that holds one or more variables where the values of those
variables can be defined through the Process Administration console.
An EPV is defined within a Process Application
or Toolkit from the Data catalog in the library
Environment
Variables:-
Instead
of hard-coding values in a process, we may wish to externalize these values and
re-use them across our solution. IBPM PD allows us to define environment
variables in either Process Applications or in Toolkits. Once defined in there,
they can then be referenced in the solution
To
change EPV values at run time we have
two ways
·
Change EPV values
using mange epv Admin tool in Process Admin console.
·
Change EPV values
using Java script.
Change EPV values using Java script :-
- Create a simple epv with name TestEmail.
- Create a simple human service to test epvs.
- Create the required variables and link EPV to use in Human service.
- Take server script in Human service and add below code to set values to epv.
//Assing current date to tempdate varaible
tw.local.tempdate=new TWDate();
//set 22 minutes to
tempdate(i.e current date )
tw.local.tempdate.setMinutes(9);
//update
epv vaule which can effect on 22nd minute of current day and hour
tw.epv.TestEmail.email.update("b@gmail.com",tw.local.tempdate);
tw.local.tempdate.setMinutes(28);
//update epv vaule which can effect on 28th
minute of current day and hour
tw.epv.TestEmail.email.update("c@gmail.com",tw.local.tempdate);
tw.local.tempdate.setMinutes(30);
//update epv vaule which can effect on 30
minute of current day and hour
tw.epv.TestEmail.email.update("d@gmail.com",tw.local.tempdate);
//Update epv with custom date
tw.epv.TestEmail.email.update("e@gmail.com",new
TWDate("2015-10-19 11:01:00.0"));
//Get epv value at specified time
tw.local.test1=String(tw.epv.TestEmail.email.valueAt(newTWDate("2015-10-19 11:30:00.0")));
4.
Create a coach to display
values.
5.
Test Human service and
verify results .
Note:-BPMv7.5.0 need install fix to work with above code
Change EPV values using Process Admin console :-
Change ENV values using JavaScript :-
- Create a ENV with name testEnv at process app setting .
- Give Default,Developement..etc values .
- Use below code to change ENV value using java script.
tw.env.update(tw.system.model.env.testEnv, "USA");
I am so thankful to my friend, who given me this scenario.