Pergunta

When a requestor is filling out my form, they're asked to select which region they're from. Based on that selection, approvers for that region will be pulled from an Approval matrix and auto populated into form fields ranked by hierarchy (Supervisor, Regional Manager, President, etc).

When the requestor submits the form, a workflow notifies the first Approver (lowest rank in the hierarchy) that he/she has a pending request for approval. That approver opens the form, and chooses from Radio buttons to Approve or Reject. If approved, the workflow submits a notification to the next approver in line.

My question is, when the first approver is notified and opens the form to approve/reject, they also have access to all of the other approve/reject radio buttons for approvers 2 through n (Likewise, approvers 2 through n should also not have access to any prior Approval choices). Basically, Approver X should only be able to make a choice in Approver Section X. To mitigate this, I wanted the radio button field to check 2 things for each approver:

1) Is the current approver on the specified approvers list for that section? 2) Is the current approver signed in to SharePoint?

I need to be able to check if they're signed in because each Approval section in the hierarchy will be autopopulated with approvers that will always make the first check = true. Since that will always be true, the approver's name not only needs to match the name that's autopopulated in their approver section, but they also have to be signed in. That way, the other approvers being not signed in will cause the Radio Buttons to be disabled.

I'm able to achieve the first part, but not the second part.

Is the second check possible in InfoPath 2010? If so, how do I do it?

Thank you

Foi útil?

Solução

It sounds like you would benefit from having a status field on the form that gets updated with each approval.

You could then add the field to your approver's list to make Region, Status unique for a set of approvers.

On the InfoPath form, query the list for both the user selected region, and the form's status. Then check your currently signed in user against what the list brings back for approvers.

For better flexibility, another field would be used in the approvers list for the InfoPath form to update the status on approval.

I'm assuming your approval matrix is a SharePoint list. If it isn't, the concept can still apply.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top