Hello,
You can accomplish this using an 'Advanced Condition' on the form, having a separate state for the form, and also just having two forms, one for each client event.
Using the advanced condition you can set something such as this:
You can get the current user's display name from the System Values category in the context browser. Click on current user and there are a variety of fields to choose from.
Once we have specified that if the user accessing the form is 'Carl Sagan' we can then change which controls can be editable through the 'Specify edit state for View and Form controls' action.
I think your best option would be to create a separate state to be used when a submitter is viewing as well as when an approver is viewing the form. You can set the form state in the workflow wizard from a smartforms client event. See below:
Now in K2 Designer for the smartforms you can choose which controls are editable with the 'Specify edit state for View and Form controls' action. Or you can even set some controls to datalabels so they can only be populated with the data instead of being a text box or another form of editable control.
Of course you can always make two copies of the form, one to use in the reviewer step and another to use for when the item is with the submitter.
Hope that helps!
Evan
Thanks Evan! I haven't explored form "state" yet. I will look into it. Thanks again!