Is it possible to block execution of flows with DraftMode enable from staging?

Hi,

We would like to block the execution of the flow in draft mode from the Quality Assurance environment in order to have all the environments as much as possible aligned to the Productive one.

Is there a way to enable this feature, whithout changing the environment type?

Best regrads,

Alessandro

@AleMax225

Hello,

Put your system level to 5 in QA and it should block draft mode.

That’s the best way to be close to Production behaviour.

This shouldn’t make bigger change for the environment type and the way you use it.

On our side, all our testing environments are with Prod level 5 to avoid surprises later.

If you’ve got custom setup based on system level, we did the same based on system name with circumstances

If this is what you want to avoid that I’ll let others proposing a solution :slight_smile:

Regards

Anthony

Hi @Anthony_Gourtay,

I appreciate your answer, but this is the kind of solution that we wanted to avoid, as we rely heavily on Application Settings (your solution would require a massive refactor of all our applications). In general, our mission is to adhere as closely as possible to the OOTB and to Pega recommendations.

Thank you,

Regards,

Alessandro

@AleMax225

I cannot try myself, but if you make your own version of below rule by changing when rule with > 3 then I guess draft flow won’t be allowed anymore in QA.

well, in theory, this looks nice, in reality no idea whether it will work :slight_smile:

@Anthony_Gourtay Interesting approach,

but this solution only prevents us from editing the flow in the other environments, but it does not block its execution,

Regards,

Alessandro

@AleMax225

Was too fast in my first reply, it seemed too perfect :slight_smile:

I finally found out (I think & I hope :slight_smile: ) where this logic is created.

ID: FlowFUA • flowMethodBody
RS: Pega-ProcessEngine:08-06-01

in Java code, line 343

if (!(flowDefinitionPage.getProperty(“.pyDraftModeON”).toBoolean() == true && (!hasProcessData || tools.getProperty(“pxProcess.pzProductionLevel”).getStringValue().equals(“5”))))

In case this is well the correct part, I’ve got no idea whether this can be customised for/from QA level.

Regards

Anthony

@Anthony_Gourtay, I think you found it! :slight_smile:

Unfortunately it is a very core function, that I don’t think we will be able to customize in any way, but I will try to ask to Pega to add a configurable parameter here!

Thank you,

Regards,

Alessandro