silverlightを囲む会in大阪#19
DESCRIPTION
SilverlightによるSharePoint開発TRANSCRIPT
1
SilverlightによるSharePoint開発
2011年6月25日
自己紹介
• 山﨑 淳朗(やまさき あつお)
• Microsoft MVP for SharePoint Server – https://mvp.support.microsoft.com/profile/Atsuo.Yamasaki
• Twitter – @SharePointIssue
• Blog – http://sharepointissue.com
• 著書 – SharePoint成功の道標
2
2011/7/4 3
仕事
• PiecePoint株式会社 – 社長さんです。 – 創業は2011年2月
• SharePoint好きの会社
– 評価・検討、設計、開発、構築 • ポータル • Groupware • Workflow • Business Intelligence導入
– 関連ソリューション販売 • SharePointリダイレクタ • SharePointBoost社製品 • アンク社製品
– 関連ソリューション導入支援 • Nintex Workflow
4
PiecePoint株式会社について
Q: SharePoint以外の仕事はしないのですか?
5
A: (出来るだけ)やりません!
SharePointを中心としたソリューションの仕事をします。
SharePointはとても幅の広い製品なのです。
例えば、BI系やワークフローなど、、
SharePointはMicrosoftの殆どのサーバー製品が関連した製品なので退屈する事はありません。
2011/7/4 6
このセッションのゴール
• 開発者 – SharePointの開発案件を受けたくなる
• 利用者 – SharePointの利用を更に進めたくなる
– SharePointを社内に構築したくなる
7
アジェンダ
• SharePointで何できるかのお話
• SharePoint開発系のお話 – Silverlight WebPartsなど
• OBA関連のお話 – Access Servicesなど
8
シェアポイントってなに?
9
SharePoint ザックリ型アーキテクチャ図
10
Windows Server
SQL Server
Pro
ject Server
SharePoint Server
.Net Framework
TFS
FIM
Search S
erver
Access
Services
Form
s Services
Visio
Servic
es
PP
S
Office W
eb A
pplication
Workflow
IIS
ASP.NET
SharePoint Foundation
ザックリと出来る事の例
• ポータルサイト – 業務アプリケーションと接続して、ポータルに表示 – EIP系機能 – 検索機能 – 一般的なポータル機能 ・・・ お知らせ等の様々な機能
• Business Intelligence – 経営ダッシュボード系 – 詳細な分析機能
• 文書管理 – バージョン管理 – 承認ワークフロー – 全文検索機能
• コラボレーション – ファイルの共同編集
11
ちょっとだけ、SharePoint用語
• リスト – メタ情報を保存する為の器 – データベースのテーブルの様な物 – 添付ファイルも保存できる
• ライブラリ – ファイルを保存する為の器 – リストの兄弟の様な物 – メタ情報も保存できる
• WebParts – SharePointページ上に配置可能なパーツ – リストやライブラリの情報を参照するのはWebParts – iGoogleのガジェットの様な物
• サイト – 上記のリストやライブラリを保存する為の器
12
最大の弱点
感性にもよりますが、、、
13
SharePoint 2007
14
SharePoint 2010
15
SharePoint2010になって、 見た目は大分よくなりました。
16
2011/7/4 17
このページも SharePoint 2010で 開発された様です。
SharePoint2010の機能
http://sharepoint.microsoft.com/ja-jp/product/Related-Technologies/Pages/Editions-Comparison.aspx
2011/7/4 18
いきなりですが質問です!
Q: SharePointは沢山の機能がある様に見えます。
購入すれば、これらの機能がすべて使えるのでしょうか?
19
A: 使えません!ある程度設定する事が必要です。
Excelの様に業務をのせるアプリケーション基盤で有る為、自社で使えるようにカスタマイズが必要です。
開発は必須ではないですが、開発をする事でさらに便利になります。
ここから開発の話を少し
20
基本的な開発要素
• Webパーツ – サイト上に設置するページ要素
– 様々な情報を表示する機能
• 各種テンプレート(定義) – データの格納場所をテンプレート化
• たとえば、業務アプリケーションをテンプレート化して展開など
• イベントハンドラ – ユーザー操作をイベントにして、処理を走らせる
• ファイルを保存したら、、処理を動かすとか
• ワークフロー – システムワークフロー
– ヒューマンワークフロー
21
ちょっと発展形のSharePoint開発
• AccessのWeb化 – Access Services
• ダッシュボード – PerformancePoint Services
• Business Intelligenceレポート – SharePointのReporting Service統合
• アプリケーションページ – ASP.NETそのものです。。
などなど…Etc
22
標準のウエブパーツ
Silverlightに関係するのはWeb Partsと言う事で、、
23
SharePoint 2007
24
SharePoint 2010
25
Webパーツの追加画面
26
27
開発環境の作成
Silverlight WebParts
28
開発環境(Silverlight WebParts)
• 必須 – Visual Studio 2010
– SharePointのDLL関連 SharePoint Serverが導入されている環境に入ってる
• 有ればさらに良い(ほぼ必須) – SharePoint Server
• SQL Server
– SharePoint Designer 2010
– Visual Studio Power Tools • Visual Studio 2010 SharePoint Power Tools
– Silverlight SharePoint Web Parts
29
Visual Studio 2010 SharePoint Power Tools
30
Silverlight SharePoint Web Parts
31
しぇあぽらしい開発
SharePointらしい開発をするには
33
SharePointのAPIを使う
• Object Model – SharePointのAPIを使い、SharePoint上のリソースを活用する
– サーバー上で動かす必要がある。
• Client OM – サーバー上で動かす必要がない。
• Web Services
34
Object Modelで開発できる事
• WebParts – 実はASP.NETの機能なのです。
• 各種イベント処理 – リストイベント – フューチャーイベント – サイトイベント – ワークフローイベント
• ワークフロー – 「Windows Workflow Foundation 3.5」を使用したWF
ETC…
• ほとんどすべての開発が可能
35
Client OMで出来る事
• SharePoint Server上のリソースを取得 Client OM前は、WebServiceでコーディングしていた!
• クライアントで動作するアプリ開発
• 下記の種類がある。 – Silverlight OM
• Microsoft.SharePoint.Client.Silverlight.dll
• Microsoft.SharePoint.Client.Silverlight.Runtime.dll
– ECMA Script OM(JavaScript)
36
Web Serviceで出来る事
• Client OMと大体同じ – Client OMは結局Web Serviceを呼び出すラッパ?
• 2007までは、SOAPのみ、
• 2010からはRESTにも対応
2011/7/4 37
カスタムアプリケーションのインストール
• WSPファイルをサーバーに取込むだけで簡単にインストールできます。 – 複数台構成のサーバーでもジョブが展開する。
38
でも結局は…
• 自動化されていてもインストールは、 サーバー管理者が実施 – アセンブリをGACに登録して、web.configに
SafeControlに登録するから当然ですね。
– アプリケーションプールでもキャッシュされているので、プロセスのリサイクルが必要です。
SharePoint 2010の新機能
• SandBoxed Solutions – 制限つきでアプリケーションをサイトコレクションにインストールできる。
– サーバーの管理者によるインストール不要
– サンドボックス上で動くアプリケーションなので • お行儀の悪いアプリケーションは停止します。
• SharePoint Hiveを使用するアプリは開発できません。
• 利用可能なAPIに制限があります。
もちろんOffice365(クラウド)に展開もできます!
39
40
OBA × SHAREPOINT
Silverlightではないですが、、
簡単にWebアプリケーションが作れます。
41
折角なのでAccess Serviceも見てください
42
ご清聴頂きまして、 ありがとうございました
43