here are my 2 processes in fact I want that only when the instance of the sub-process reaches card information task it returns to the global process, otherwise only the instance terminates
Before each of your end-states, set a variable all with the same variable name (eg. “ProcessProceed”)
In your main process, after the subprecess, check the state of that variable. If it’s the value you set when you got to Card Information, then allow the parent process to proceed to “Done”
If it’s any other value, then end the parent process.
Setting a “Path Completed” variable that you then evaluate is a pretty standard setup, and it’s clear to both business and code teams what is expected to happen.
I’m not even sure what that suggestion is trying to convey.
If you disable all child processes, then your called process doesn’t work at all.
Process modeling is meant to be platform agnostic (in fact, the process should work just as well if it were being done manually).
A Call Process (or even a subprocess) is similar to asking a co-worker to do a portion of it. Your expectation would be that the co-worker will tell you what the outcome was, so that you can keep doing the work. Assume for a moment that they simply put a sticky-note on the papers, and handed them back. You would look at the sticky-note to determine what to do next. This is what “Add a variable” and “Evaluate with a gateway” does!