Cambiar Ver en base á identificación do usuario nun formulario do InfoPath

Nós tiñamos un país desenvolvido unha forma de InfoPath con varias exhibicións para apoiar unha nova contratación / on-boarding process. When the company hires a new person, o departamento de TI e outros grupos teñen que tomar medidas (configurar folla de pagamento, permitir o acceso a aplicacións axeitados, atopar un balcón, etc). We use on form but a different view of the form for each of those functions.

Nesta empresa, a maioría das persoas implicadas no proceso de negocio son IT-savvy, así cando acceder ao formulario, their default view is a "menu" view with buttons that direct them to their specific function. Con todo, we needed to simplify things for the new hire’s direct manager. This person should not see any of the IT related stuff. En realidade, debe ver só unha vista da forma e nin sequera ten a posibilidade de ver os outros puntos de vista.

No noso caso, que o relato de director directo está directamente ligada á forma como cortesía dun contacto co selector (which I am always wanting to call a "people picker" por algunha razón).

Os pasos son os seguintes:

1. No modo de deseño, vaia a Ferramentas -> Opcións de Formulario -> Abrir e Gardar.

2. Select "rules".

3. Create a new rule whose action is "switch to view" e cuxa condición aproveita o nome de usuario() función.

Nome de usuario() returns the "simple" user name without the domain. If I log into SharePoint with credentials "domain\pagalvin", Nome de usuario() returns "pagalvin".

The contact selector provides three bits of information for a contact. The "AccountID" portion is most useful for this scenario. The only thing that makes this even a little bit of challenge is that the contact selector (no meu ambiente de calquera maneira) devolve o dominio e ID de usuario, as in "domain\pagalvin". This prevents us from doing a straight-forward equality condition since AccountID ("domain\pagalvin") nunca será igual usuario() ("pagalvin").

We can get around this using the "contains" operador: AccountID contén usuario().

Podemos ir máis aló e pre-pende dun dominio hard-Coded diante do nome do usuario() función para comprobar a nosa igualdade e eliminar o risco dun falso positivo do operador contén.

We would have REALLY like to automatically switch view for other users based on their AD security group membership. Por exemplo, when a member of the "IT Analytics" grupo accede ao formulario, automatically switch to the IT Analytics view. We didn’t have time to implement it, but my first thought is to create a web service that would have a method like "IsMemberOfActiveDirectorySecurityGroup", pasalo a usuario() and return back true or false. Does anyone have any other, idea máis intelixente? Is there any SharePoint function we can leverage from InfoPath to make that determination?

</final>

Technorati Tags:

3 pensamentos sobre "Cambiar Ver en base á identificación do usuario nun formulario do InfoPath

  1. Pingback: Infopath Switch View Based On User « Sladescross's Blog

Deixe unha resposta

Enderezo de correo electrónico non será publicado. Os campos obrigatorios están marcados *