「SharePoint ユーザーのための IFTTT で IoT 体験」LT 資料を公開しました (Japan SharePoint Group 勉強会 #20 / 2015年9月12日開催)

9月12日(土) に開催された、Japan SharePoint Group 勉強会 #20 で時間をいただき、

SharePoint ユーザーのための IFTTT で IoT 体験

というテーマでライトニングトークをしました。
資料は当日公開済みでしたが、ブログでのお知らせが遅くなりました。

IFTTT とは、非常にシンプルなワークフローを実装できる Web サービスです。
「イフト」と読みます。(と読むんだと知ったのが一番の収穫だったと、微妙な感想を当日いただきました /笑)

If This Then That = 「こうだったら、ああする」というワークフロー(IFTTT では Recipe と呼びます)を作成して、自由に利用できます。


「なぜ、SharePoint の勉強会で IoT の話しを?」と思われますよね。

IFTTT では、随時 Channel (= This や That に定義できるパーツ) が追加されていますが、6月に Maker Channel が、7月に Office 365 の Channel が使えるようになりました。
Maker Channel はセンサーデバイスのデータを受け取る口、365 の Channel は、(今の時点では Exchange Online のみですが)文字通り、Office 365 の機能を利用するパーツです。
となれば、私が SharePoint 勉強会で紹介しないわけにはいかない!ということで時間をいただいたわけです。

SharePoint はビジネスの点でも、管理者・開発者の特性としても、IoT から最も遠い領域にある製品の一つです。とはいえ、これからは IoT を無視するわけにはいかなくなります。そういう時期がもうすぐ来ます。

SharePoint は雑多なデータを保存するには適さないので、「5分ごとの温度データを保存する」などは現実的ではありません。Azure のサービスを活用して、分析・集約したデータを SharePoint に送るのが適切な使い方だと思います。

その意味では当日の LT の内容は決して現実的な技術の紹介ではないのですが、IoT から遠いところにいる技術者の皆さんが、IoT に最初に触れるには IFTTT はお手軽でなかなか面白いサービスだと思い、紹介してみました。

IFTTT にはたくさんの Channel (確か 200 種類以上あるとか、そんな説明をどこかで読みました)があります。IoT 以外でも触ってみるとなかなか楽しいと思います。まだ触ったことがない方は、ぜひ。


IoT の観点からいうと、Maker Channel は JSON フォーマットでデータを POST する Web サービスです。簡単に使えるので、センサーデバイスを作ってみたらたまには IFTTT で遊んでみるのもいいかと思います。(もちろんメインは Azure で! /笑)

組込み大好きな方も、ぜひ IFTTT を試してみてください。

LightSwitch / Access / Project Siena – SharePoint 開発ツールを比較してみる

この記事は Office 365 Advent Calendar に参加しています。
25日が近づいてきましたね。


SharePoint 開発に使えるツールはいくつかあります。
Visual Studio で Web アプリ、Windows アプリ(WFP なり WinForms なり)、スマホ用アプリなどを作るのが、SharePointアプリ開発でも王道です。当然です。

それに加えて LightSwitch, Access, Project Siena, Napa といった開発ツール・環境でも SharePoint アプリを作ることができます。(これらが万能ツールとは言いません。Visual Studio に取って代わるものではないはず)

本稿では、これらの開発ツール(王道の Visual Studio 以外のもの) の特徴、どういうシーンで使うのか/使えそうかを私なりに整理してみます。
プロの開発者ではなくても簡易的なアプリを作れるというのは大事な特徴ですが、それ以外の観点で見てみます。
唯一解ではありませんし、単純に区分できないケースも多いと思いますが、ツールの使い分けの参考になれば。


■特徴の比較

ツール名 クライアント レスポンシブ 主なデータ 更新可 私見
Access (accdb ファイル) Access No SP 内のリスト Yes
Siena Windows 8.1 No SP 内のリスト Yes タブレットアプリ開発に良い
Napa Web ブラウザー Yes App Web 内のリスト Host Web 内のリスト Yes JavaScript 開発、 この中では難易度高
Access (Link) Web ブラウザー No SP 内のリスト No データ参照のみ可能
Access (インポート) Web ブラウザー No SQL Server Yes リストデータを元にするが、 以降は SQL Server にデータを保存
LightSwitch Web ブラウザー Yes SQL Server / App Web 内のリスト / Host Web 内のリスト Yes この中では一番拡張性が高く、 外部システムとの連携も容易

■使い分けの指針(あくまでも私見)

  • データ更新が必要・・・更新が必要な場合には、Access アプリ (SharePoint 内リストにリンク) は使えません。このタイプの Access アプリはデータ参照のみ可能です。他のツールを使ってください。
  • マルチデバイス対応(レスポンシブデザイン)・・・LightSwitch または Napa が使えます。それ以外は座標固定で画面をデザインするので PC でもスマホでも使いやすいデザインは難しいです。 また SharePoint のサイトで [Access で開く] で作成できる Access (accdb ファイル) の場合には当然 Access がインストールされた PC が必要です。Siena で開発する場合はクライアントが Windows 8.1 の PC (Surface 2 でも OK) が必要です。クライアントとしてスマホやタブレットを使いたい場合は、他の開発ツールで開発してください。
  • 大量のデータを扱う必要がある・・・SharePoint のリストにはいわゆる “5000件” 問題がついて回ります。それ以上のデータを扱いたい場合、または高速なデータアクセスが必要な場合は、LightSwitch または Access (データを DB で管理するタイプ) にしてください。
  • タッチ対応・・・タッチ対応のアプリを開発したい場合は Napa はあまりお勧めしません(開発不可ではないのですが)。クライアントを PC に限定できるのであれば Siena または Access (accdb ファイル) が開発効率が高いと思います。汎用性が高く開発効率もできるだけ上げたいのであれば LightSwitch が良いです。
  • 外部のシステムとの連携が必要、拡張性が必要・・・LightSwitch 一択だと思ってください。業務アプリの場合は、比較的、画面の見栄えを求められないことが多いと思います(UX 的な意味での操作性は重要ですが)。開発生産性が高く、それでも外部との連携をしやすさを求めるのであれば LightSwitch をどうぞ。

「お前の LightSwitch 愛を語りたいだけじゃないか」と言われれば否定できませんが(笑)、それなりのアプリケーションを簡単に開発したければやはり LightSwitch が良いと思います。
使用するユーザーや対象とするデータを限定できるのであれば、Project Siena や Access でサクッと開発するのもいいと思います。
Napa は・・・私は詳しくありませんが、Web 開発の知識を持っている人であれば、いいシステムが作れると思います。判断基準は HTML / JavaScript / CSS に慣れているかどうか、ですね。

向き不向きはありますが、今回取り上げた開発ツールはどれも生産性が高く、比較的簡単に開発を進められるものです。上記の比較を参考に、適切なツールを選んで SharePoint 開発を実践してください。

※なんだか、文字ばっかりの記事になってしまってすみません。

LT 「 Project Siena で誰でも Office 365 開発者 (前編) 」 (Japan SharePoint Group 勉強会 #17 – 2014/12/13) #jpsps

 

12月13日(土) に開催された Japan SharePoint Group 勉強会 #17 で LT 枠を 1コマいただきました。

テーマは

Project Siena で誰でも Office 365 開発者 (前編) 

です。

 

Project Siena を使うと、SharePoint Online のカスタムリストを参照するアプリケーションを非常に簡単に開発できます。

  1. Project Siena が対応しているデータソースの中から SharePoint Online を選択してアドレスを入力
  2. 認証情報を入力→この後は数十秒程度時間がかかります
  3. アプリの認証(Azure AD のコンセント UI)
  4. あとは Project Siena の開発手順通り。ギャラリーを配置して、ラベルなりテキストボックスなりを配置

これだけです。

LT 資料の後半にも参考情報として操作手順のスクリーンキャプチャーを貼っていますので、簡単に分かると思います。

プロの開発者が本気のアプリ開発で使うツールではありませんし、Visual Studio の代わりになるものでもありませんが、非開発者の人にとって、また開発者でもサクッと済ませられるようなお手軽ツールを作ってあげる場合などに、便利なツールです。

無償ですし、ぜひダウンロードして一度触ってみてください。

http://aka.ms/projectsiena

が製品サイトです。


“前編” って何よ、という話ですが、すでに このブログで後編を公開 しているから。
公開の順番は逆なんですが、アプリ開発の手順としては今回の LT が SharePoint Online のリスト参照なので順番としては先。前のブログ記事はリストの更新系の処理について書いたので後編、というわけです。
LT の5分という時間を考えると、さすがに更新系の処理は紹介するのが無理なので逆にしました。

それにしても LT はメチャメチャ緊張しました。人生で一番緊張する登壇だったかも。
(手が震えて仕方なかった /笑)

Project Siena で誰でも Office 365 開発者 (後編)

この記事は Office 365 Advent Calendar に参加しています。

 

11月に公開された Project Siena Beta Refresh (November 2014) は SharePoint Online のリストを操作することができます。 Siena らしくとても簡単に作れる・・・はずなんですが、情報量が少ないんですよね。分かってしまえば簡単ですが、しばらく悩みました。

そこで本稿では SharePoint Online のリスト更新の方法を紹介します。

「そもそも、Projectb Siena って何?」という方は、ひとまず開発ツールの一つだと理解してください。操作が簡単で、プロの開発者でなくても使えます。

 


■本稿で対象とするリスト

本稿では SharePoint Online 上にあるリストを使用します。Siena にはリスト自体を作成する機能はないので、事前に SharePoint Online にリストを用意します。

ここでは “Animals” というカスタムリストにしました。
必要なカラムは2つです。[タイトル] 列は [日本語] に列名を変えます。さらに [英語] という名前の 1行文字列 を追加します。
(今になって考えたら和英辞典でもよかったみたいです /笑)

2014-12-09 21-23-22

 


■データソースの追加~リスト参照

データソースの追加から SharePoint Online 上のリストの参照までの手順は以下の通りです。
近いうちに説明動画も公開します。どうしてもやり方がわからないという方は、しばらくお待ちを。

  1. データソース画面で [SharePoint Online] を選択して、SharePoint Online の URL を指定
  2. 認証に成功すると、指定したサイトのコンテンツ名が表示されるので対象とするリストを指定する。ここでは “Animals” をチェック
  3. スクリーンにビジュアルを追加。ここではテキストギャラリーを配置
  4. ギャラリーのデータセットを設定。ここではもちろん “Animals”
  5. ギャラリーアイテムの各テキストに表示するメンバーを指定します。
    今回は 2個のテキストにそれぞれ “ThisItem!日本語“、”ThisItem!英語” を指定します。

 

2014-12-08 21-52-052014-12-08 21-59-022014-12-08 22-05-282014-12-08 22-07-40

2014-12-08 23-54-532014-12-08 23-58-172014-12-08 23-58-26

 


■既存のリストアイテムの更新

今日の本題である、更新系の処理について。

Project Siena では、既存のリストアイテムを変更する場合も新規のアイテムを追加する場合も、2段階で SharePoint Online を更新します。

  1. データセットの更新・・・データセットとは、対象のリストのローカルキャッシュです。Siena では、まずはデータセットに対してデータを変更します。
    この時点ではデータセットの内容と SharePoint Online 上のリストの内容には差異があります。
  2. データソースに反映・・・データセットに加えられた変更は任意のタイミングで SharePoint Online に反映します。これでリストの更新が完了します。
    Siena ではユーザーが明示的に “SharePoint の更新” ボタンを選択(クリック/タップ)する必要があります。

2014-12-09 0-46-05

 

実際の操作は以下の通り。

1. ラベルとテキストとをスクリーンに配置
ラベルにはギャラリーの選択項目の “日本語” を、テキストには選択項目の “英語” をそれぞれ指定します。

Gallery1!Selected!日本語
Gallery1!Selected!英語

日本語をラベルにしたのは変更不可にするためです。このあとの操作で使う UpdateIf の条件としてラベルの値を使います。

2014-12-09 0-33-59 2014-12-09 0-34-22

 

2. ボタンを配置

データセットの更新用に、ボタンを一つ配置します。
[選択時] には、

UpdateIf(Animals, 日本語=UpdJapanese!Text, {英語:UpdEnglish!Text})

と入力します。Excel ライクな記述なので、Excel 関数を知っている人には馴染みやすいかと思います。
関数の意味は、

「Animals の日本語フィールドの値が UpdJapanese (先ほど配置したラベル)の Text の値と同じアイテムを探して、そのアイテムの英語フィールドに UpdEnglish の Text の値を代入してね」

という意味です。
([選択時] の日本語訳が少し分かりづらいですが、英語だと “OnSelect” なのでここには選択時のアクションを記述するんだなというのが直感的に理解しやすいですね。)

2014-12-09 0-34-442014-12-09 0-35-00

 

3. “SharePoint の更新” を配置

最後に “SharePoint の更新” を配置して、データソースに “Animals” を指定します。データソースへの反映に必要なのはこれだけ。

2014-12-09 0-44-50

 


■新規のリストアイテムの追加

リストアイテムの追加も、やはり 2段階で操作します。既存のアイテムの更新と同じです。

  1. データセットにアイテムを追加・・・Collect 関数を使います。既存アイテムの更新も新規アイテムの追加も、任意の順番でデータセットを更新してから、まとめてデータソースに反映できます。
  2. データソースの更新・・やはり “SharePoint の更新” ボタンを選択して SharePoint Online に登録します。

こちらも実際の操作を見てみましょう。

1. テキスト 2つをスクリーンに配置

“日本語” を入力するテキスト、”英語” を入力するテキストを配置します。

2014-12-09 21-52-29

2. ボタンを配置

データセットにアイテムを追加するために、ボタンを 1つ配置します。
[選択時] には、

Collect(Animals, {日本語:InsJapanese!Text, 英語:InsEnglish!Text})

と入力します。「Animals データセットに { ~ } のアイテムを追加してね」 という意味です。

2014-12-09 21-53-052014-12-09 21-53-51

 

3. “SharePoint の更新” を配置

リストアイテムの追加の場合も “SharePoint の更新” が必要です。
既存アイテムの更新の手順で既に “SharePoint の更新” を配置していれば、改めて配置しなおす必要はありません。

 


■既存のリストアイテムの削除

既存のリストアイテムを削除するには RemoveIf 関数を使用します。手順は、既存アイテムの更新と同様なのでここでは省略します。

 


長い記事になってしまいました。おつかれさまでした。(お互いに /笑)

ところで、「前編」が見当たらないことに気付いた方もいるかもしれません。なにか事情があるんだろうなと思って、数日間だけそっとしておいてください。
12月13日くらいに理由が分かる かもしれません。
(追記: Japan SharePoint Group 勉強会 #17 で LT やりました。資料公開しました。)

「初めてでも大丈夫!SharePoint 開発の第一歩」資料を公開しました (2014年5月10日 第8回 Office 365 勉強会)

第8回 Office 365 勉強会/技術ひろば合同開催が5月10日(土) に開催されました。

一コマいただいて「初めてでも大丈夫!SharePoint 開発の第一歩」というタイトルでお話ししました。

当日は開発者が2~3割で、業務に関係ないよという方もいらっしゃったかもしれませんね。
Office 365 / SharePoint をより活用するにはアプリ開発は一つの大事な要素だと思います。アプリを作るにはまずはどうするのか、を概要を理解するお手伝いができたようでしたらうれしいです。

「第一歩」ということで具体的な開発テクニックまで触れることができませんでしたので、ブログでフォローしていきますね。
LightSwitch、クラウドビジネスアプリについては・・・まあいつも通りで(笑)。
“Napa” や ASP.NET の SharePoint 用アプリについてもこれから情報を共有していきます。と言っても、私も勉強中の身です。

SharePoint 2013 になって新しいプログラミングモデルが追加されました。
Web 標準の技術が利用でき、Apps for SharePoint のように利用者がまず使う SharePoint サイトの外で動作するアプリケーションも作れます。従来よりも SharePoint 特有のハードルは低くなってきました。

ぜひ SharePoint 用アプリ開発にチャレンジしてみてください。

 

5月の SharePoint 月間の第2弾、「Office 365 / SharePoint 勉強会~活用・連携編」は5月17日(土) の開催です。
まだ受け付けていますので、Office 365、SharePoint に興味のある方はぜひいらしてください。こちらのページ からお申し込みください。

クラウドビジネスアプリが Office 365 のドキュメントライブラリーに対応

Office Developer Tools for Visual Studio 2013 March 2014 Update で、LightSwitch から Office 365 のドキュメントライブラリーを扱えるようになりました。

Office 365 上にあるドキュメントライブラリーは、クラウドビジネスアプリから見ると “外部データソース” です。”新しいテーブルの作成” ではなく “外部データソースにアタッチ” で始めます。
データソースのアタッチウィザードではドキュメントライブラリーを選択します。
“ユーザー情報リスト” のインポートも必須なので、未選択の状態でも自動的にインポートしてくれます。また今回のアップデートではユーザー情報リストがドキュメントライブラリー/カスタムリストに関連することが分かりやすくなりました。もちろん明示的に選択してもかまいません。

2014-04-13 11-45-09

2014-04-13 11-47-452014-04-13 11-49-002014-04-13 11-51-06

これでドキュメントライブラリーの定義がインポートされます。ただし一点注意が必要です。少し脱線します。
今後のアップデートでは改善されることを期待していますが、オブジェクト名に日本語を使うと全てのアイテムの表示が1件目の内容になってしまいます

2014-04-13 11-55-52
2014-04-09 23-48-02

現状はこの問題を解消するにはオブジェクト名に日本語を使わないことです。

2014-04-13 11-57-32

これで正しく表示できるようになります。

2014-04-13 12-09-12

クリックするとちゃんと Office クライアントで開いてくれます。Office クライアントがインストールされていなければ Office Web App で開いてくれます。

2014-04-13 12-14-152014-04-13 12-15-15

 

順番が逆になってしまいましたが、上記の動作は今回のアップデートで追加された “ドキュメントの概要” コントロールのおかげです。ドキュメントのアイコン、タイトル、クリック時の動作の面倒を見てくれています。

2014-04-13 12-19-54

 

改めて「クラウドビジネスアプリプロジェクトで、テーブル、画面の名前に日本語を使うと、[データの参照画面] で全てのレコードの表示が1件目の内容になってしまう」フィードバックへの Vote にご協力ください!
日本語で Office 365 を使う際にはとても都合の悪い問題です。フィードバックで改善してもらいましょう。

「SharePoint 開発ツールの比較」セッションを担当しました (2014年3月22日 MVP Community Camp) #‎MVPComCamp

3月22日(土) に開催された MVP Community Camp 東京会場のカンファレンス(オフラインイベント)東京会場で 1枠いただき、SharePoint 開発ツールについてお話ししました。

LightSwitch (クラウドビジネスアプリ)、Access、Project Siena で SharePoint / Office 365 用のアプリケーションを開発できます。これらがそれぞれ出来ること/出来ないこと、得意なこと/苦手なことを紹介しました。
SharePoint の Web パーツを作ったり CSOM でクライアントを作ったり、という内容は全く触れていません。(InfoPath にも触れていません)
Officd 365 のおかげで中小企業でも SharePoint を使いやすくなったわけですが、当然 SharePoint のカスタマイズなりアプリ開発なりまでは充分な費用をかけられないこともあると思います。そういうケースで高い生産性で社内システム、業務アプリを開発できるといいよね、LightSwitch や Access を使うとそれを実現できるよ、というメッセージをお伝えしました。

LightSwitch の認知度はまだまだですが、それでも少しずつ知られてきて、興味を持ってもらえるようになってきたかなと思っています。やはり Office 365 対応、特にクラウドビジネスアプリの発表以降は肌で感触を感じられるようになってきました。
簡単に開発ができすぎるがために、かえってビジネスになりづらいという開発ツールですが、活用できるシーンは多いと思います。
今回初めてセッションでお話しした Access も SharePoint / Office 365 開発ツールとして非常に優秀です。Project Siena もそう。
これからも LightSwitch, Access, Project Siena の高い生産性を(勝手に)訴求していきたいと思います。

技術ひろばの勉強会では Ustream 配信はしていないのですが、今回はライブ配信、収録をしていただきました。復習やちょっと興味を持ったから聞いてみようかなという方は、ぜひこちらのページで視聴してみてください。

http://www.ustream.tv/recorded/45145052

「Project Siena で “簡単” SharePoint クライアント開発」資料を公開しました (2014年1月11日 第7回 Office 365 勉強会 LT)

第7回 Office 365 勉強会 に参加しました。(2014年1月11日開催)
主催の目代さん、スピーカーの皆さん、関係者の皆さん、ありがとうございました。
参加者の皆さん、おつかれさまでした。

スピーカーも参加者も Office 365 や SharePoint に詳しい人ばっかりなので、単に SharePoint 好き・Office 365  好きというだけの私にはアウェー感満載(笑)
それでも LT 枠に手を挙げました。

テーマは Project Siena
今いまはベータ版で Office 365 未対応なので、なんで 365 勉強会で喋ってるの?と不思議に思った方もいると思いますが、まあ今後対応されることだし SharePoint だし、ご了承ください。
多分 オフラインでは日本初の Project Siena セッションなので、個人的には大満足。

ということで資料を公開しました。デモ動画は公開済み。

一時はライブで SharePoint クライアントを作ることになるのかと思い(まあ一応準備したけどね /笑)、時間の都合で収録済みのでも動画を見ていただきました。

現状はベータ版で、機能的に正直まだまだの開発ツールですが、面白い可能性を秘めています。この辺は LightSwitch なんかと同じ。どうもこういう匂いのするツールが気になるたちです。
一応 C# な人ということになっているので、もうちょっと言語寄りの情報発信をするべきなのは認識済み。まあ外部連携や機能拡張の観点で C# に絡めていければな、と思っています。

Project Siena で SharePoint クライアントを開発する

Project Siena を使うと SharePoint クライアントが簡単に開発できます。

現在はベータ版ということもあり機能に制限があります。

  • オンプレミスの SharePoint のみ対応、Office 365 は未対応
  • カスタムリストの参照が可能、更新系の処理は未対応

製品版に向けて間違いなく対応される内容でしょうね。

オンプレミスの SharePoint を使って実際の開発手順を動画にしました。

こちらの動画(ブログビューアー)と比較していただければ、データソースの選択以外で操作がまったく同じであることが分かると思います。
SharePoint 固有の API を意識することなくカスタムリストを操作(現在は参照のみですが)できます。

業務アプリを Office 365 と連携しながらクラウド化するには LightSwitch、SharePoint クライアントをストアアプリ化するには Project Siena が使えます。
Project Siena の今後の機能拡張を待つ必要はありますが、Office 365 が活躍する場所がますます増えますね。

枠があれば(あるのか?) 1月11日(土) 開催の 第7回 Office 365 勉強会 のライトニングトークで、この内容を喋ってみようかと思ってます。というか、そのためのネタ作りの一環で上記の動画を作りました。お時間のある方はぜひご参加ください。(主催者でもセッションスピーカーでもないけど宣伝してみた)

クラウドビジネスアプリから SharePoint Online のカスタムリストを操作する

本稿は Office 365 Advend Calendar 2013 に参加しています。

クラウドビジネスアプリとは LightSwitch ベースの SharePoint 用アプリ(Apps for SharePoint)です。

LightSwitch ベースなので開発生産性が非常に高いのが特長です。Office 365 認証を利用できて、SharePoint Online との連携が容易なので、Office 365 を利用する企業が業務アプリをクラウド化する場合に活用できます。

  • 「クラウドビジネスアプリって何?」という方は こちらの記事
  • 「クラウドビジネスアプリから SharePoint Online のニュースフィードへの投稿」が気になる方は こちらの記事

本稿では SharePoint のカスタムリストを操作する方法をステップバイステップで紹介します。


操作対象のカスタムリストはこれにします。
アプリの配置のタイミングでカスタムリストを一緒に配置することもできますが、あらかじめ SharePoint Online 上で作っておきます。今回はリストを操作することに絞りましょう。

2013-12-18 22-48-23

Visual Studio で新しいクラウドビジネスアプリのプロジェクトを作成したらデータソースに接続します。それに続いて [SharePoint] を選択して、開発者サイトのアドレスを入力します。

2013-12-18 22-52-182013-12-18 22-53-18

対象のリストを選択します。[ユーザー情報リスト] も必要なので一緒にインポートします。

2013-12-18 22-57-242013-12-18 22-58-46

これでカスタムリストをアプリ固有のテーブルと同じように扱えるようになりました。SharePoint 開発につきものの Load メソッドや ExecuteQuery メソッドも不要です。

2013-12-18 23-01-42

画面の定義も LightSwitch 開発の流儀のままです。

2013-12-18 23-08-182013-12-18 23-12-33


サインインしているユーザーをカスタムリストの担当者列に、現在日時をカスタムリストの問い合わせ日時列に、それぞれ入れたいと思います。そのためには少しだけコーディングが必要です。LightSwitch では本当に少ないコーディングの機会です。
もちろんデモのレベルを超えるとそれなりにコードは必要ですが、それでも他の開発ツールに比べると少ないはずです。

ユーザー情報リストから特定のユーザー情報を取得するためのクエリを用意しましょう。LINQ で問い合わせてもいいのですが、せっかくの LightSwitch ですのでクエリもデザイナーを使って定義してみます。

2013-12-18 23-20-082013-12-18 23-21-08

カスタムリストの担当者列および問い合わせ日時列は、データストアに保存する直前にエンティティに代入します。 “_Inserting” メソッドを使います。

2013-12-18 23-27-262013-12-18 23-32-18

Application.Current.User が現在サインインしているユーザーです。PersonId がユーザー名(サインイン時のアカウント=メールアドレス)に相当しますので、これを先ほど定義した GetUserInfoByUserName クエリに渡します。これでサインインユーザーのユーザー情報が取得できます。
問い合わせ日時には DateTime.Now を入れておきましょう。


開発は以上です。これだけの手順でカスタムリストを読んだり書いたりが簡単にできます。

2013-12-18 23-39-032013-12-18 23-39-53

当然ですが、SharePoint Online でもちゃんと表示されますし、もちろん SharePoint Online で編集した内容も業務アプリ側でも表示されます。

2013-12-18 23-40-53

カスタムリストを操作するメリットは関係する社員で情報を共有しやすいことと(Office 365 をきちんと運用していれば社員は定期的にアクセスするはず)、ワークフローを組み合わせるなどの運用がしやすいことです。
ただし前の記事のように専用の業務アプリを作るメリットもあるので、上手く組み合わせて使ってみてください。