Using Pega7.1, requirement is to allow user to mark any case at any stage (resolved or unresolved) as Production Incident -- which is achieved using local action at case level.
Additionally, if user selects yes for IsProductionIncident field, then, we will have to create a temporary WO and route it to Admin WB for approval. If approved, then update the original case's property as yes (even if it is resolved-completed).
Please suggest any good approaches to handle this.
You are creating a new case that you are referring to as "Temporary". The word "temporary" when referring to a case can be interpreted as setting pyTemporaryObject=true. You do not want to do this since you need to be able to save this new "Production Incident Approval" case to allow someone with access to an Admin WB to approve it.
You want to create a short-lived case that references a case that would be flagged as a "Production Incident" Pending-Approval by someone with access to an Admin WB.
Your concern is that, if approved, the case being referenced may already be resolved.
Nothing prevents you from calling Obj-Open with lock + release on commit, updating, calling Obj-Save, then calling commitWithErrorHandling against a Resolved case. The pyResolvedTimestamp will not change.
Your "Production Incident Approval" case should provide a way to view the production-incident-candidate case in Review mode,