カテゴリ「Microsoft 365 - SharePoint」の361件の投稿 Feed

2015年8月13日 (木)

Internet Explorer (以下、IE) には互換モードがあります。たとえば、IE 11 を使っていた場合でも、そのページを開く場合は IE9 と同等の機能で表示するといったことが可能です。

どの互換モードを使うかは、Webサーバー側でサイト単位で設定したり、Webページに meta 要素を追加したり、HTTPヘッダーを指定したりすることで決まります。場合によっては 組織内のシステム管理者側で設定するグループポリシーの影響も受けます(参考:Group Policy and compatibility with Internet Explorer 11)。

SharePoint の場合は、マスターページに設定される meta 要素が影響します。meta 要素は次のような記述です(IE9対応モード指定の例)。

<meta http-equiv="X-UA-Compatible" content="IE=9">

この記述はオンプレミスと Office 365 (SharePoint Online)とで違いがあります。さらに既定のマスターページによっても違いがあります。なお、以下に記述する内容は今後更新される可能性が高いため 2015年8月現在の状況として記載しておくことに留意してください。

[オンプレミスの SharePoint 2013 SP1 以降の状況]

オンプレミスの SharePoint Server 2013 が持つ既定のマスターページは seattle.master と oslo.master です。まず、seattle.master を見てみると下記の通り IE10 との互換性を確保するように指定されていることがわかります。

2015-08-13 10-01-26

同じく Oslo.master も確認してみると、seattle.master と同様に IE=10 となっています。

2015-08-13 10-03-42

結論としては、いずれのマスターページを使用していても IE10がターゲットになっているということです。

[Office 365 (SharePoint Online)]

続いてクラウド環境である Office 365 ではどうでしょうか? ちょっと様相が変わります。まず、seattle.master を見てみましょう。meta タグでの指定が見当たらず、その代り次の SharePoint サーバーコントロール (SharePont:IECompatibleMetaTag)が定義されています(ちなみに、このサーバーコントロールについて調べてみたのですが、現時点では何の情報も公開されおりませんので、結果から推測する挙動を推測するしかありません)。

2015-08-13 10-05-01
このマスターページを使っている SharePoint サイトのページをレンダリングしたところ、今のところ生成されたソースは以下の通り IE10 互換になっています。Oslo.master についても同様です。

2015-08-13 10-12-25

ところで、SharePoint 2013 からは HTML マスターページという新しい機能が追加されています。この機能は、発行サイトもしくは 「SharePoint Server 発行」フィーチャーをアクティブ化すると利用できます。この機能により、master ページではなく、これに関連づく HTMLファイルを使ってデザイン変更を行えるようにするというもので、これによって SharePoint Designer がなくとも、メモ帳や Dreamweaver などでも編集が手軽にできるようになったわけです。HTML側を編集すると、これに合わせて master ページを自動生成してくれるという仕組みです。

さて、この HTMLマスターページの側を確認すると、実は IE9 互換モードになっています。

2015-08-13 10-34-14

さて、挙動を確認してみましょう。HTMLマスターページ既定の seattle.master および oslo.master のいずれを指定しても、レンダリング時には既定では IE10 モードになるようです。

しかし、seattle.html もしくは oslo.html をコピーして作成した独自のマスターページを適用するとどうでしょうか。下記のように IE9 と IE10 の両方の互換モードが追加されてしまいます。結果として IE9 互換モードに引きずられます。そのため、IEに関しては、CSS3 のほとんどが利用できなくなってしまいます。

2015-08-13 10-36-39

※IE9互換モードにならないようにするには、このタグを削除してしまいたいところですが、このタグを削除すると対応する *.master が壊れてしまうというトラブルに見舞われました。SharePont:IECompatibleMetaTag サーバーコントロールが関係していそうですが、このトラブル対応は修正が厄介であるため、最善策としては削除ではなく、meta要素の属性を IE=10 や IE=Edge に変更するなどといった対応を行った方がよいようです。

[結論]

マスターページのカスタマイズは、もともと高度なものであり、極力行わずにできるだけ CSS のみで対応していきたいところですが、フッターを追加したりしたい場合は、どうしても若干の変更は必要です。また、全社向けの情報発信ポータルサイトでは見栄えが重視されるため、局所的にはカスタム作成のマスターページを使うことになります。この時、上記のような挙動を意識しておかないと、HTML5 や CSS3 対応にしていく際に、予想した結果とならないことになります。十分にご注意ください。

[参考]

Course-Banner-SiteBranding

2015年8月 6日 (木)

SharePoint では REST API を使用した SharePoint コンテンツへの CRUD 処理が行えます。以前は詳細(Verbose) OData メタデータのみをサポートしていましたが、現在では JSON Light もサポートしています。この対応は、オンプレミスでは Service Pack 1 のアップデートで行われ、既に Office 365 側も利用できるようになっています(※ SharePoint とは別に、WCF Data Services 5.0 は既に OData v3 にて対応済みです)。

さて、JSON Light 対応とは何か? 簡単に説明しておきましょう。

従来は、REST API を呼び出す際に要求ヘッダーに次のように指定していました。

"accept:application/json;odata=verbose"

このため、多くのSharePoint 資料は verbose を指定しています。

verbose 指定は現在ではオプション扱いです。verbose を指定することですべてのメタデータを取得してきます。しかし、開発者側からは特に使用する必要のないメタデータがある場合、これをすべて取得することはペイロードの増大につながるため、避けたいところです。

JSON Lightに対応することで、1.メタデータなし、2.最小限、3.完全 のいずれかを指定できるようになりました。

1. メタデータを指定しない場合は、"accept: application/json; odata=nometadata" と指定します。

2. 最小限のメタデータのみでよい場合は、 "accept: application/json; odata=minimalmetadata" と指定します。なお、メタデータ要求を明示しない " " の場合は、既定値はこの minimalmetadata 指定をした場合と同じです。

3. すべてのメタデータを取得したい場合は、従来通り記載します。

ちなみに、Office Blog に公開されていてる記事では、リストからいくつかのリスト アイテムを要求した場合の応答データサイズが計測されています。

  • verbose : 46,647バイト
  • minimalmetadata : 11,173バイト
  • nometadata : 6,832バイト

不必要なメタデータの取得はしないよう心がける必要がありますね。

参考

 

2015年7月 8日 (水)

SharePoint 2013 および Office 365 の SharePoint Online 上では、JavaScript を使って様々なソリューション開発が可能です。弊社コースであるMicrosoft SharePoint 2013 クライアント サイド開発入門」コースでは、JavaScript を使った基本的な開発手法を網羅的に身に付けられるようになっています。

演習では次のような、ユーザーニーズのある機能を実装します。

  • 緊急情報をポータルトップに表示する。掲示情報のメンテナンスはユーザーが手軽に行える。
  • 緊急のメールをポータルトップから簡単に一斉配信できる
  • お知らせ情報の見栄えを華やかにカスタマイズする
  • 特定の種類のドキュメントを手軽に検索できる、カスタム検索ページを作成する

演習内容の紹介動画を公開しておりますので、手軽につくれる「こんなの欲しかった」というものがあれば、ご受講をご検討くださいませ。

 

また、ちょっとかじったことがあるというような初級の JavaScript 開発者の方も、中級レベルの知識が身に着けられるようなテキスト構成にしています。SharePoint のサンプルコードなどを読むには中級レベル程度の知識は必要です。たとえば、次のような JavaScript 関係の用語をうまく説明できないなぁという方も、スキルアップ目的に参加をご検討いただけると幸いです。

  • 厳格モード
  • function式とfunction文
  • オブジェクト リテラル
  • クロージャー
  • プロトタイプ
2015年6月24日 (水)

本日から先行リリースで Office 365 Video で埋め込みタグが利用できるようになりました! 待望の機能でしたので、これは嬉しいですね。

埋め込みタグが利用できるようになったので、Office 365 Video ポータル以外の外部サイトからもビデオを用意に見れるようになりました。とはいえ、コンテンツは Office 365 内で管理されていますので、コンテンツを閲覧するには Office 365 へのサインインが必要です。

早速試してみました。

Office 365 Video ポータルの上部画面に 埋め込み というリンクが追加されています。これをクリックすると IFrame タグが取得できます。

2015-06-24 11-07-59

これをコピーし、SharePoint サイトのお知らせリストアイテム内に埋め込んでみます。すると、、、おやっ? コンテンツが挿入できません。

2015-06-24 11-10-54

そうそう、忘れていました。サイト コレクションのHTMLフィールドのセキュリティ設定に、自ポータルのドメインが追加されていませんでした。急いで、ここにドメインを追加します。

2015-06-24 11-11-53

これで晴れて追加できるようになりました!

2015-06-24 11-13-05

REST API から埋め込みコードを取得する方法は次のURLを参照するとよいようです。

それから、先週の先行リリースからレスポンシブ デザインとなったページが増えたようです(ホーム、検索、トレンド、プレイヤー)。

色々と、使えそうですhappy01

 

 

 

2015年6月16日 (火)

久しぶりに、下記の通り、AvePoint Japan 様のご協力のもと無償セミナーを開催いたします。

既に Office 365 をご利用されている方はもちろん、これから Office 365 の導入を検討されている方にも役立つ情報をわかり易くお届けします。

-------------------------------------------------------------------------------
 情報共有システムはこう変わる! Office 365 最新動向と活用方法の徹底解説
-------------------------------------------------------------------------------
昨年から今年にかけて Office 365 には Office 365 Video, Office 365 Groups, Office Delve や新たなコンプライアンス対応機能などの様々な機能が追加されてきています。しかし、既存の機能だけでも、SharePoint Online や OneDrive for Business をはじめ、Skype for Business (旧Lync), Yammer など様々なツールが多く存在しており、どのツールをどのように使い分けるのがよいのか、また運用はどのようにするのかなど考えるのはなかなか難しいのが現状です。

本セミナーでは、情報共有ポータルである SharePoint Online を中心としながら、Microsoft 社が2015年5月初旬に実施した IT管理者向けの大規模イベントである Microsoft Igniteで明らかにした今後の Office 365 の最新動向も踏まえ、Office 365 に付随する様々な機能の使い分けを整理しながら、どのように利活用を計画し運用するべきかを解説します。来年のリリースが予定されている SharePoint Server 2016 と組み合わせたハイブリッド環境での利用シナリオも強化される予定であるため、この点も考慮し、現在どういった準備をしておくとよいのかなどについても触れます。さらに、AvePoint Online Service を組み合わせ、コーポレート ガバナンスを考慮した効果的な運用管理についてもご紹介します。

日時 : 2015 年 7月 10日 (金)  13:30-16:30

場所 : 東京都 港区 高輪 4-10-18 京急第一ビル11 階 AvePoint Japan 株式会社様 セミナールーム

お申込みは AvePoint Japan 様の下記サイトよりお申込みください。なお、本セミナー参加対象者は、エンドユーザー企業の方を優先させていただいておりますので、ご了承ください。

AvePointSeminar