Share via


InfoPath のユーザー情報取得について

トピック、バラバラ(?)ですみません。

ブログのツールのエラーで、なかなかアップできなくて、情報提供に少し焦っています。

なので、InfoPath ネタという訳ではないのですが。。。

だけど、InfoPath も VSTO で拡張はできますので、お許しください。

InfoPath から、ユーザー情報を取得する際の手法について記載いたします。

ひとつは InfoPath の userName 関数から利用できます。

これは、ログオンしているユーザー名を取得してくれるものです。

あと、SharePointからのユーザー情報取得例があります。

SharePointは通常はADからマッピングした属性情報取得していますので

間接的にADデータを取得する、ということがいえると思います。

コードも書かなくてもいいので簡単にご利用できます。

SharePoint Webサービス

https://<servername>/_vti_bin/userprofileservice.asmx

GetUserProfileName メソッドを利用してください。

情報を取得するための引数としてユーザーIDがいりますが、これは前述したInfoPath関数userName() から取得できます。

また、同じWebサービスを利用したコントロール(Contact-Selector コントロール)もあります。これはForm Serviceでも動きます。

下記のブログに実装方法の記載があります。

https://blogs.msdn.com/infopath/archive/2007/02/28/using-the-contact-selector-control.aspx

近々、いくつかデモで作成した、SharePoint Web サービスの利用例について記載できればと思います。

しかし、画像がアップできない。。。(Windows Live Writer)