Hello,
where can I find documentation and examples on how to programmatically interact between progress and oebpm? (For example how to get a user’s "my tasks" or start a process / complete a workstep.)
We are using oebpm 11.3.
Thanks in advance,
/Stefan
Sample code to get tasks
Using Progress.BPM.*.
{url.i}
{classchain.i}
DEFINE VARIABLE oSession AS CLASS UserSession.
DEF VAR mytask AS CLASS Task extent .
DEF VAR methret AS LOGICAL.
def var i as int.
def var savextent as int.
def var username as char init "user5task".
def var processname as char init "bpmproject2".
output to gcassign1.out append.
MESSAGE "*************Start Testing**********************".
oSession = NEW Progress.BPM.usersession(bizlogicurl).
if oSession:connect( username, username)
THEN DO:
/* get assigned tasks for user5task */
mytask = oSession:getassignedtasks().
savextent = extent(mytask).
message "Number of tasks returned: " savextent.
do i = 1 to savextent:
run displaytasks.p(mytask[i],osession).
end.
/* note: do not disconnect since we are testing garbage collection*/
/* after a Disconnect(NO) */
/* methret = oSession:Disconnect(NO).*/
END.
message "Object chain before delete useression:".
run classChain.
DELETE OBJECT oSession.
MESSAGE skip(2) "Object chain after delete useression"
SKIP "The entire tree should be gone!".
MESSAGE "valid-object userSession? " VALID-OBJECT(oSession).
run classChain.
do i = 1 to savextent:
MESSAGE "valid-object task? " VALID-OBJECT(mytask[i]).
end.
Sample Code to Complete a Process Instance
ofilter = NEW TaskProcessFilter (piName ).
mytask = oSession:getAvailabletasks(ofilter) NO-ERROR.
mytask[1]:COMPLETE().
Hello,
where can I find documentation and examples on how to programmatically interact between progress and oebpm? (For example how to get a user’s "my tasks" or start a process / complete a workstep.)
We are using oebpm 11.3.
Thanks in advance,
/Stefan
Flag this post as spam/abuse.
Hi Stephan,
Please find some examples in here.
Daniel.
Hello,
I am sorry but your link doesn't appear to work.
Regards,
/Stefan
Hi,
You can find one example in the below link
download.psdn.com/.../OEBPM_API_Notes.pdf
Open the Help from Developer Studio. And navigate to Progress Developer Studio for OpenEdge Guide > ABL Language Reference. Here you can find API in-detail.
thanks
satyam
Sample code to get tasks
Using Progress.BPM.*.
{url.i}
{classchain.i}
DEFINE VARIABLE oSession AS CLASS UserSession.
DEF VAR mytask AS CLASS Task extent .
DEF VAR methret AS LOGICAL.
def var i as int.
def var savextent as int.
def var username as char init "user5task".
def var processname as char init "bpmproject2".
output to gcassign1.out append.
MESSAGE "*************Start Testing**********************".
oSession = NEW Progress.BPM.usersession(bizlogicurl).
if oSession:connect( username, username)
THEN DO:
/* get assigned tasks for user5task */
mytask = oSession:getassignedtasks().
savextent = extent(mytask).
message "Number of tasks returned: " savextent.
do i = 1 to savextent:
run displaytasks.p(mytask[i],osession).
end.
/* note: do not disconnect since we are testing garbage collection*/
/* after a Disconnect(NO) */
/* methret = oSession:Disconnect(NO).*/
END.
message "Object chain before delete useression:".
run classChain.
DELETE OBJECT oSession.
MESSAGE skip(2) "Object chain after delete useression"
SKIP "The entire tree should be gone!".
MESSAGE "valid-object userSession? " VALID-OBJECT(oSession).
run classChain.
do i = 1 to savextent:
MESSAGE "valid-object task? " VALID-OBJECT(mytask[i]).
end.
Sample Code to Complete a Process Instance
ofilter = NEW TaskProcessFilter (piName ).
mytask = oSession:getAvailabletasks(ofilter) NO-ERROR.
mytask[1]:COMPLETE().