|
@@ -1136,16 +1136,24 @@ String function cmd_process_execute(process : String, mapping : Element):
|
|
|
|
|
|
process_id = get_entry_id(process)
|
|
|
if (process_id != ""):
|
|
|
- if (allow_execute(current_user_id, process_id)):
|
|
|
- Element pm
|
|
|
- pm = get_full_model(process_id, get_entry_id("formalisms/ProcessModel"))
|
|
|
- if (element_eq(pm, read_root())):
|
|
|
- return "Specified model cannot be interpreted as a ProcessModel: " + process!
|
|
|
+ if (read_type(core, process) != "Folder"):
|
|
|
+ if (allow_execute(current_user_id, process_id)):
|
|
|
+ Element pm
|
|
|
+ pm = get_full_model(process_id, get_entry_id("formalisms/ProcessModel"))
|
|
|
+ if (element_eq(pm, read_root())):
|
|
|
+ return "Not a ProcessModel: " + process!
|
|
|
|
|
|
- enact_PM(pm, mapping)
|
|
|
- return "Success"!
|
|
|
+ String ver
|
|
|
+ ver = conformance_scd(pm)
|
|
|
+ if (ver == "OK"):
|
|
|
+ enact_PM(pm, mapping)
|
|
|
+ return "Success"!
|
|
|
+ else:
|
|
|
+ return "Not a valid ProcessModel: " + ver!
|
|
|
+ else:
|
|
|
+ return "Execute permission denied to: " + process!
|
|
|
else:
|
|
|
- return "Execute permission denied to: " + process!
|
|
|
+ return "Not a model: " + process!
|
|
|
else:
|
|
|
return "Model not found: " + process!
|
|
|
|