Error in value actorinitiatorid in /API/bpm/process

1
0
-1

Hi!
I have a process with "Set as initiator" to walter.bates with id 4. (I took it from /API/identity/user/?d=professional_data&f=userName=walter.bates)
But when a get all the process definition using /API/bpm/process my procces has the actorinitiatorid with another value. For example 501 not 4.

Is this a bug?
How I get the correct idUser of the actorinitiatorid of my process?
Are actorinitiatorid and "Set as initiator" the same?

Thanks!!!

1 answer

1
0
-1

removed as wrong,

regards
Seán

Comments

Submitted by veroagite on Mon, 04/17/2017 - 17:28

Hi Sean! Thanks for your answer but no, the 501 is not the http code resonse, is the value returned in actorinitiatorid.
I recall the api rest and now for the same process I get another value for actorinitiatorid.

For example in my 'ORG' process, walter.bates is "Set as initiator".
I call /API/bpm/process?f=name=ORG, and this is the response:
[{
"displayDescription": "",
"deploymentDate": "2017-04-17 10:05:46.640",
"displayName": "ORG",
"name": "ORG",
"description": "",
"deployedBy": "4",
"id": "7454960520508366746",
"activationState": "ENABLED",
"version": "2.0",
"configurationState": "RESOLVED",
"last_update_date": "2017-04-17 10:05:52.517",
"actorinitiatorid": "601"
}]

but when I call /API/identity/user?f=userName=walter.bates&d=professional_data
[{
"firstname": "Walter",
"professional_data": {
"country": "United States",
"website": "",
"address": "Renwick Drive",
"city": "Philadelphia",
"fax_number": "484-302-0626",
"building": "70",
"room": "",
"zipcode": "19108",
"phone_number": "484-302-5626",
"state": "PA",
"id": "4",
"mobile_number": "",
"email": "walter.bates@acme.com"
},
"icon": "icons/default/icon_user.png",
"creation_date": "2017-03-27 01:21:05.014",
"userName": "walter.bates",
"title": "Mr",
"created_by_user_id": "-1",
"enabled": "true",
"lastname": "Bates",
"last_connection": "2017-04-17 10:05:56.687",
"password": "",
"manager_id": "3",
"id": "4",
"job_title": "Human resources benefits",
"last_update_date": "2017-03-27 01:21:05.014"
}]

My process has 2 pools with send/receive message between each other. Both pool have walter.bates "Set as initiator".
May be maching the value form "actorinitiatorid": "601" and "id": "4" (from /API/identity/user) is not the way to filter the user-initiated processes. Do exist another way using the API REST?
By the way I am using bonitasoft 7.4.2 version. And I can start the process in bonitaPortal logged with walter.bates.

Thanks a lot Sean.

Submitted by Sean McP on Mon, 04/17/2017 - 23:04

Ah ha,

I think you're misinterpreting what actorinitiatorid means, and I can't find any documentation to support the idea but id is the person who started the process, whereas actorinitiatorid is the id of the Actor Initiator action.

i.e. when you define the Actor Initiator, it is the definition that is assigned the actorinitiatorid not the person who actually initiates the process.

I hope that makes sense.

I would ask Bonitasoft to improve the REST documentation for things like this (via a bug report here https://bonita.atlassian.net/secure/Dashboard.jspa) so we can interpret them correctly. I'm only guessing in this case of course...but I think I'm right. Maybe someone from Bonitasoft can give the definitive answer.

regards
Seán

Submitted by veroagite on Tue, 04/18/2017 - 02:03

Sean, thanks again!
I had read the documentation and I have find this:
"actorinitiatorid":"the id of the actor that can initiate cases of the process" so I had hoped that the match with the id of the actor could filter the process that can start the user.
Now, I see that the value of actorinitiatorid match with the action but no with id of the user as the documention said.
I am going to open the bug for more information as you suggest.

Any way, do you know the way or a tip to get the process for a user I need using API REST?

Thanks!

Submitted by antoine.mottier on Tue, 04/18/2017 - 10:18

Please see my comment on the open issue.

Testing
Notifications