Subprocess and Processes

652 views
Skip to first unread message

maybeg...@gmail.com

unread,
Feb 17, 2014, 5:05:13 PM2/17/14
to suppor...@runmyprocess.com
Hi.

I want to implement a subprocess to make the process map more understandable.

But functionality, I don't know how to stop all the processes when a decisión task is done inside the subprocess.
A file is attached for explain it better.
Thanks.
att
nes
Subprocess stop all the processes.PNG

thoshino

unread,
Feb 19, 2014, 3:02:36 AM2/19/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Hi Nes,

Your approach is good, you should use sub process to keep your design clean and manageable.
And, your understanding is correct that, when a sub process is in execution, parent process is pending at that activity.
And then, when your sub process complete, parent process starts moving again.

Your sub process has 2 possible ends, right? - depending on that manual task actions.
This means you will have 2 separate end events (purple circles), and in each event output variable, define something like output = "exit", and output = "continue". - these will be used to differentiate the outcome of sub process, from parent process.

Then in your parent process, in output variable of that 'subprocess activity', define a variable like subprocess_output = ${P_result.output} (this will be filled with either exit or continue).
And right after your 'subprocess acitivty', make a XOR split, and write a branching condition based on exit or continue. 
The branch with 'exit' can end the parent process by attaching an end event after it.
The branch with 'continue' will continue with the parent process.

Do you see what I am proposing?

Best regards,

Taka

maybeg...@gmail.com

unread,
Feb 20, 2014, 11:27:39 AM2/20/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Thanks for your answer, Mister Taka.

I've done what you said me.

But it still doesn't trigger when determinated end event is activated.

I send you images about what I've configured.

Thanks.


Process and subprocess.PNG
First posible end inside the subprocess.PNG

maybeg...@gmail.com

unread,
Feb 20, 2014, 11:29:23 AM2/20/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Sorry here are all the images.
Process and subprocess.PNG
First posible end inside the subprocess.PNG
second posible end inside the subprocess.PNG
Subprocess 2 posible ends.PNG
what I've configed inthe subprocess activity, output tab.PNG
XOR split setting.PNG

thoshino

unread,
Feb 20, 2014, 12:51:08 PM2/20/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Hi Nes,

Your architecture is basically good, almost there.
1st, in your branch in parent process, you should use == instead of =.
like,
subprocess_output == "exit"

2nd, the output of the subprocess activity should be,
name | value
subprocess_output | ${P_result.output}

3rd, in subproces end event, it should be,
name | value
output | exit

Explanation:
To set a value in process variable, you don't need equal sign '='. You specify name in left column, and script on right column.
Subrpocess end event is setting variable 'output' and value 'exit'. From parent process output, all subprocess variable is child elements of P_result. So, it will be ${P_result.output}.
For XOR branch, you can set one of the branches to be default. just write 
default
as your condition. This will avoid errors, for example when your subprocess_output is somehow neither exist or continue.

I hope this finally works for you :)

Best regards,

Taka

maybeg...@gmail.com

unread,
Feb 20, 2014, 2:40:02 PM2/20/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Thank you for your answer.


I made the changes you told me, but it doesn't work.
I attached images related to what I did.
By the way, I edited the subprocess end event, the other one left it empty.

I really appreciate it.

subprocess activity setting.PNG
branch in parent process.PNG
subprocess end event.PNG

thoshino

unread,
Feb 20, 2014, 2:50:19 PM2/20/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Hi Nes,

What is the error you see?

About your BTW, the other end event should also have something set to output variable.
The parent process will look for P_result.output, and when it doesn't exist, it will error. 
(you can avoid it by writing like ${P_result.output!"continue"} or something, but you should just define output in subprocess)

Best regards,

Taka

maybeg...@gmail.com

unread,
Feb 20, 2014, 3:23:41 PM2/20/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Hi.

The process just doesn't continue if I choose the path that should go on.

mmm, not sure which could be the issue here.

Thanks.
att:
Nes

thoshino

unread,
Feb 20, 2014, 3:41:18 PM2/20/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Hi Nes,

Please provide screenshot of the process report that you see the error.
I need to see, which activity has the error, and the error message.

If error message doesn't fit in the screen, can you copy paste it here ?

Best regards,

Taka

maybeg...@gmail.com

unread,
Feb 20, 2014, 3:58:25 PM2/20/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Hi Mister Taka, not sure if this is the information you are talking about.
//
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:base="https://live.runmyprocess.com/">
<title>Solicitud de vacaciones</title>
<link rel="self" type="application/atom+xml" href="live/386770467/request/3110bf90-9a71-11e3-93fa-1231380c7265" />
<link rel="todo" href="live/386770467/todo?filter=REQUEST&amp;operator=EE&amp;value=3110bf90-9a71-11e3-93fa-1231380c7265" />
<link rel="owner" href="config/386770467/user/160381" />
<link rel="document" href="live/386770467/document/3110bf90-9a71-11e3-93fa-1231380c7265" />
<link rel="manager" href="live/386770467/requestmanager/3110bf90-9a71-11e3-93fa-1231380c7265" />
<link rel="resume" href="live/386770467/resume/3110bf90-9a71-11e3-93fa-1231380c7265/task/{taskid}/{iteration}" />
<link rel="design" href="config/386770467/process/96641/history/id/534164" title="Solicitud de vacaciones" />
<link rel="last_design" href="config/386770467/process/96641" title="Solicitud de vacaciones" />
<category term="status" label="0" />
<category term="history_id" label="534164" />
<category term="mode" label="TEST" />
<category term="volatility" label="PERSISTENT" />
<id>3110bf90-9a71-11e3-93fa-1231380c7265</id>
<generator>(c) RunMyProcess 2013</generator>
<rights>[]</rights>
<updated>2014-02-20T20:54:29Z</updated>
<entry>
<title>Execution path</title>
<category term="path" />
<id>3110bf90-9a71-11e3-93fa-1231380c7265</id>
<rights>[]</rights>
<updated>2014-02-20T20:54:29Z</updated>
<published>2014-02-20T20:54:29Z</published>
<summary type="text/base64" />
</entry>
</feed>
//

Thanks you.

my process.PNG

thoshino

unread,
Feb 20, 2014, 4:46:15 PM2/20/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Hi Nes,

Sorry, this is not what I needed.
There is no error in the screenshot you gave me.

I am expecting something like attached.
You do have an error, right?

Best regards,

Taka
2014-02-20 13_47_05-RunMyProcess.png

maybeg...@gmail.com

unread,
Feb 21, 2014, 10:59:35 AM2/21/14
to suppor...@runmyprocess.com, maybeg...@gmail.com
Thanks for your answer Mister Taka.


No errors are shown, but I think I'll find a different approach, thank you anyway for your help.


Att:

Nes

Reply all
Reply to author
Forward
0 new messages