Switch-Ansicht basierend auf Benutzer-ID In einem InfoPath-Formular

Wir hatten eine entwickelte ein InfoPath-Formular mit mehreren Ansichten zu unterstützen, eine neue Mitarbeiter / auf-Boarding-Prozess. Wenn das Unternehmen eine neue Person beauftragt, die IT-Abteilung und andere Gruppen müssen handeln (Einrichten von Lohn-und Gehaltsabrechnung, ermöglichen Sie den Zugriff auf entsprechende Anwendungen, Suchen Sie einen Schreibtisch, usw.). Wir verwenden auf Form, sondern eine andere Ansicht des Formulars für jede dieser Funktionen.

Bei dieser Firma, die meisten der betroffenen Menschen im Geschäftsprozess sind IT-versierte, Also, wenn sie auf das Formular zugreifen, die Standardansicht ist ein "Menü" mit Schaltflächen, die sie an ihre spezifische Funktion direkt anzeigen. Jedoch, Wir brauchten, um Dinge für die neue Miete direkten Vorgesetzten zu vereinfachen. Diese Person sollte nicht sehen, jeder der IT Zeug verbunden ist. Tatsächlich, Sie sollten nur eine Ansicht des Formulars zu sehen und nicht einmal haben die Möglichkeit, die anderen Ansichten finden Sie unter.

In unserem Fall, die direkten Vorgesetzten Konto direkt an das Formular mit freundlicher Genehmigung von gebunden ist ein Kontakt-Selektor (Das bin ich immer wollen, rufen Sie eine Personenauswahl"" aus irgendeinem Grund).

Die Schritte sind wie folgt:

1. Im Entwurfsmodus, gehen Sie zu Extras-> Formularoptionen-> Öffnen und speichern.

2. Wählen Sie "Regeln".

3. Erstellen Sie eine neue Regel, deren Aktion ist "wechseln Sie zum Anzeigen" und deren Zustand nutzt der Benutzername() Funktion.

Benutzername() Gibt die "einfache" Benutzername ohne Domäne. Wenn ich in SharePoint melden Sie sich mit Anmeldeinformationen "Domainpagalvin", Benutzername() gibt "Pagalvin".

Die Kontakte-Auswahl bietet drei Bits von Informationen für einen Kontakt. Die AccountID"" Teil eignet sich am besten für dieses Szenario. Das einzige, das macht auch ein bisschen, was von Herausforderung ist, dass der Kontakt-Auswahl (in meinem Umfeld sowieso) Gibt die Domäne und Benutzer-ID, wie in "Domainpagalvin". Dies verhindert, dass uns dabei ein geradlinig Gleichheitsbedingung seit AccountID ("Domainpagalvin") UserName wird nie gleich.() ("Pagalvin").

Wir bekommen können, um diese mit der "enthält" Operator: AccountID enthält Benutzername().

Wir können es weiter und Pre-Pend eine hartcodierte Domäne vor dem Benutzernamen nutzen() Funktion um unsere Überprüfung auf Gleichheit und beseitigen das Risiko der falsch-positiven auf die enthält Operator.

WIRKLICH müssten wie wir Ansicht für andere Benutzer auf ihre AD Sicherheitsgruppen-Mitgliedschaft automatisch wechseln. Zum Beispiel, Wenn ein Mitglied des "es Analytics" Gruppe greift auf das Formular, automatisch auf die IT-Analytics-Ansicht wechseln. Wir hatten keine Zeit, sie umzusetzen, aber mein erste Gedanke ist einen Webdienst erstellen, der eine Methode wie "IsMemberOfActiveDirectorySecurityGroup" hätte, übergeben sie den Benutzernamen() und wieder zurück true oder false. Jemand hat anderen?, weitere clevere Idee? Gibt es SharePoint-Funktion, die wir, von InfoPath nutzen können zu machen, dass die Bestimmung?

</Ende>

Technorati Tags:

3 Gedanken zu „Switch-Ansicht basierend auf Benutzer-ID In einem InfoPath-Formular

  1. Pingback: InfoPath-Switch Ansicht basierend auf Benutzer « Consultant's Blog

Hinterlasse eine Antwort

Deine Email-Adresse wird nicht veröffentlicht. erforderliche Felder sind markiert *