2010年2月28日日曜日

フィールドの値によってアイテムの権限を書き換える2

よさげな海外のソリューションが有ったのですが、評価版の提供が受けれなかったのでそのうちにSharePoint Designerによる実装を紹介します。

細かい事で文句言われ、要望通りに回答したのに、、
まあ、個人でってあやしいもんね~英語もかなり怪しいし
(当然会社にはBlog秘密だし~)

ビデオ見る限り日本で受けそうな感じなのです。
日本語環境での動きと多言語化を確認したかったのですが、、
詳細は下記のリンク先の左上「Play Product demo」でビデオを見て下さい。

Metadata Security for SharePoint

フィールドの値によってアイテムの権限を書き換える1
フィールドの値によってアイテムの権限を書き換える2
フィールドの値によってアイテムの権限を書き換える3
フィールドの値によってアイテムの権限を書き換える4

2010年2月22日月曜日

64Bit環境ではワークフローの開発ができません

VSdeWF

だめなのですねー

2010年2月18日木曜日

リソースを使う

前回まで、リソースの展開について書きました。
リソースの使い方も書かなければ片手落ちなので簡単に書こうと思います。
リソースの展開(VSeWSS v1.3 CPT)1
リソースの展開(VSeWSS v1.3 CPT) 2
リソースの展開(VSeWSS v1.3 CPT) 3
展開したリソースは、プログラムやASPX、XML等から利用できます。
利用方法は下記の通り。
展開したリソースは、「MyResource.XX-XX.resx」とします。
  1. C#
    1. HttpContext.GetGlobalResourceObject("MyResource", "MyName").ToString();
    2. SPUtility.GetLocalizedString(source, defaultResourceFile, language).ToString();
  2. ASPX
    1. <%$Resources:MyResource, MyName%>
    2. <%$ResourcesNoEncode:MyResource, MyName%>
      1. Provisioning resourcesのみ利用できる様な感じ、、
  3. XMLなど
    1. $Resources:MyResource, MyName;
    2. $Resources:MyName;
      1. featureで「DefaultResourceFile」を設定している場合。
    3. $ResourcesNoEncode:MyResource, MyName;
      1. Provisioning resourcesのみ利用できる様な感じ、、

2010年2月14日日曜日

リソースの展開(VSeWSS v1.3 CPT) 3

前回に引き続き、リソースの話

SharePointが扱うリソースの種類についてまとめます。
リソースを格納する場所は大きく2種類存在して、下記の5か所あるようです。
青色部分は環境等に応じて読み換えてください)

  • Application resources
    1. C:\Inetpub\wwwroot\wss\VirtualDirectories\Port\App_GlobalResources\
    2. SharePointHive12\CONFIG\Resources\
    3. SharePointHive12\CONFIG\AdminResources\
  • Provisioning resources
    1. SharePointHive12\Resources\
    2. SharePointHive12\TEMPLATE\FEATURES\FeatureName\Resources\

「Application resources」とは、アプリケーションの実行時に使用するリソースの様です。
マスターページや、「_Layouts」配下のaspxを多言語対応する為に使用します。
アプリケーションが実際に使用するリソースは、上記1番の「App_GlobalResources」配下にあるリソースを使用します。
2番3番については、構成ウイザード又は「stsadm –o copyappbincontent」コマンドでから1番へ展開されます。3番については「サーバーの全体管理」のWebアプリケーションにのみ展開されます。

「Provisioning resources」とは、フューチャー(機能)やサイトの展開時に使用するリソースです。
ここで指定するリソースは、サイトの作成時やフューチャーを有効にする時使用します。する為、リソースファイルを書き換えても既存のサイトには影響しません
各定義(サイトやリストなど)のリソースとして使用され、onet.xmlやサイト内にあるASPXファイルなどで使用されます。(_Layoutsを除く、default.aspxなど)

リソースの展開(VSeWSS v1.3 CPT)1
リソースの展開(VSeWSS v1.3 CPT) 2
リソースの展開(VSeWSS v1.3 CPT) 3
リソースを使う

2010年2月12日金曜日

リソースの展開(VSeWSS v1.3 CPT) 2

前回の「リソースの展開(VSeWSS v1.3 CPT)」でリソースの展開に問題が有る事を書きました。
「C:\Inetpub\wwwroot\wss\VirtualDirectories\<ポート番号>\App_GlobalResources」に展開しなければ問題が発生する場合が有りました。

それは、、、

マスターページに埋め込むリソースです。
ダメじゃん、、

対策として、
「C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\CONFIG\Resources」へリソースを展開して構成ウイザードを動かすと「App_GlobalResources」へコピーされるようです。
(ハイブ12への展開は、前回の投稿で実装できると思います。)

うーん、いまいち

一応リソースとしてはフルセットないとエラーに成るようです。
MyResources.resx
MyResources.ja-Jp.resx
こちらのセットが無いとエラーに成ります。
MyResourcesの部分は必要に応じて変更して下さい。)

リソースの展開(VSeWSS v1.3 CPT)1
リソースの展開(VSeWSS v1.3 CPT) 2
リソースの展開(VSeWSS v1.3 CPT) 3
リソースを使う

フィールドの値によってアイテムの権限を書き換える1

良く掲示板でも質問がある内容です。
リストに、権限列を追加して簡単に権限設定をしたい!
ライブラリ 

イベントシンクやワークフローで実装するしかなかったのです。
イベントシンクで実装するには、開発が必須でユーザー企業が簡単ではなく、
ワークフローでは、CodePlexのツールを使うなどが必要で標準機能では有りません。
(メンテナンスを考えると、ワークフローでの実装をお勧めしてます。
他にも開発案件が有る大企業なら良いですが、これだけの為に新規案件は、、と)

面白そうなツールを見つけたので近日中にでも評価したいなーと思います。

フィールドの値によってアイテムの権限を書き換える1
フィールドの値によってアイテムの権限を書き換える2
フィールドの値によってアイテムの権限を書き換える3
フィールドの値によってアイテムの権限を書き換える4

2010年2月7日日曜日

VSeWSS v1.3による開発環境の整備

開発環境について、毎回忘れるのでメモメモ

  1. Windows Server をインストール(今回はWindows 2008 R2
    1. WCFアクティブ化
    2. デスクトップ エクスペリエンス 
  2. SQL Server 2008をインストール(Reporintg環境を構築する為にStd以上が良い)
    1. SP1を適用
    2. CU5も適用 (CU7も公開されてます)
      1. 「SQL_Server_2008_SP1_Cumlative_Update_5」だけインストール
      2. 今はダウンロードだけ
        1. SQL_Server_2008_SP1_Cumlative_Update_5_Report_Buil
        2. SQL_Server_2008_SP1_Cumlative_Update_5_RB2ClickOn
        3. SQL_Server_2008_SP1_Cumlative_Update_5_RSSharepoin
    3. Reporting ServicesはSharePoint統合モードでインストール
  3. SharePoint Services 3.0のインストール
    1. 管理サイトのアプリケーションプールのアカウントを「Administrators」グループへ追加する
    2. SQL 2008 SP1 CU5でダウンロードしたモジュールをインストールしてレポーティング統合をインストール
  4. Visual Studio 2008 Proをインストール(Stdは不可)
  5. VSeWSS v1.3をインストール(64Bit版)
    1. 日本語版が無いので、英語環境からテンプレートをコピーする
      1. コピー元
        1. C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\ProjectTemplates\CSharp\SharePoint\1033
      2. コピー先
        1. C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\ProjectTemplates\CSharp\SharePoint\1041
    2. コピーしたテンプレートをインストールする
      1. 管理者モードでコマンドプロンプトを起動してコマンドを実行
        1. CD “C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\”
        2. devenv.exe /InstallVSTemplates

【参考】
http://shanqiai.weblogs.jp/sharepoint_technical_note/2009/11/vsewss-13-ctp-%E3%82%92%E5%88%A9%E7%94%A8%E3%81%99%E3%82%8B%E9%9A%9B%E3%81%AE%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%A8%E5%AF%BE%E5%87%A6%E6%96%B9%E6%B3%95.html
http://shioi.blogspot.com/2009/09/vsewss-13-ctp.html

Windws 7 RTM版でLoopback Adapterを追加する方法

以前、Windows7 RC版で、Lopback Adapterを追加する方法を投稿しましたが、RTM(リリース)版からは、少し楽にLoopback Adapterを追加できます。

  1. デバイスマネージャを開き、コンピューター名を右クリックして、下記の様なメニューから「レガシ ハードウエアの追加」をクリックします。
    WS000836
  2. ハードウエアの追加ウイザードで「次へ」をクリック
    WS000837
  3. 「一覧から選択・・」を選択して「次へ」をクリック
    WS000838
  4. 「ネットワーク アダプター」を選択して、「次へ」をクリック
    WS000839
  5. 製造元「Microsoft」 でネットワークアダプターは「Microsoft Loopback Adapter」を選択して「次へ」をクリック
    WS000840
  6. 選択したネットワークアダプターが正しい事を確認して「次へ」をクリック
    WS000841
  7. しばらくお待ちください!
    WS000842
  8. 「完了」をクリック!
    WS000843

以上の手順でループバック アダプターを追加できます。

2010年2月4日木曜日

リソースの展開(VSeWSS v1.3 CPT)1

多言語対応の機能を開発するにはリソースファイルを使うと便利な様です。

こちらのBlogでmanifest.xmlの「ApplicationResourceFile」要素にリソースファイルを設定すると「C:\Inetpub\wwwroot\wss\VirtualDirectories\<ポート番号>\resources」に展開されるから使えなーよと、、、

じゃあどうすればいいの?
まさか、手動でコピーしなさいって?
色々試して、探して、、出来ました!
manifest.xmlのRootFiles要素を使えば良いらしいです。
VSeWSS v1.3CPTをインストールしている環境で試しました。

  1. ソリューションエクスプローラーでプロジェクトを右クリックし、「追加」「新しい項目」を開き「Root File」を選択します。
    Add
  2. 適当な名前(ここではRootFiles)を追加して保存し、「Resources」フォルダを作り必要なリソースファイルを追加します。
    RootFiles
  3. あとは、、展開したら「C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Resources」へ配置されます!
実は、親切な外人がMSDNにコメントを書いてくれていたのでわかったのですが、、
http://msdn.microsoft.com/en-us/library/ms442108.aspx

 

リソースの展開(VSeWSS v1.3 CPT)1
リソースの展開(VSeWSS v1.3 CPT) 2
リソースの展開(VSeWSS v1.3 CPT) 3
リソースを使う

2010年2月3日水曜日

PermissionsString

http://msdn.microsoft.com/ja-jp/library/microsoft.sharepoint.spbasepermissions.aspx

メモメモ。

 

メンバ名 説明
AddAndCustomizePages HTML ページまたは Web パーツ ページを追加、変更、または削除し、Windows SharePoint Services 互換エディタを使用して Web サイトを編集します。
AddDelPrivateWebParts Web パーツ ページ上で個人用 Web パーツを追加または削除します。
AddListItems リストにアイテムを追加し、ドキュメント ライブラリにドキュメントを追加して、Web ディスカッション コメントを追加します。
ApplyStyleSheets Web サイトにスタイル シート (.css ファイル) を適用します。
ApplyThemeAndBorder Web サイト全体にテーマまたは枠線を適用します。
ApproveItems リスト アイテムまたはドキュメントのマイナー バージョンを承認します。
BrowseDirectories Microsoft Office SharePoint Designer 2007 および WebDAV インターフェイスを使用して、Web サイト内のファイルおよびフォルダを列挙します。
BrowseUserInfo Web サイトのユーザーに関する情報を表示します。
CancelCheckout 別のユーザーに対してチェックアウトされたドキュメントを破棄またはチェックインします。
CreateAlerts 電子メール通知を作成します。
CreateGroups サイト コレクション全体で使用できるユーザーのグループを作成します。
CreateSSCSite Self-Service Site Creation を使用して Web サイトを作成します。
DeleteListItems リストからのアイテムの削除、ドキュメント ライブラリからのドキュメントの削除、およびドキュメント内の Web ディスカッション コメントの削除を行います。
DeleteVersions リスト アイテムまたはドキュメントの古いバージョンを削除します。
EditListItems リスト内のアイテム、ドキュメント ライブラリ内のドキュメント、およびドキュメント内の Web ディスカッション コメントの編集、およびドキュメント ライブラリ内の Web パーツ ページのカスタマイズ。
EditMyUserInfo ユーザーに対して、各自の情報の変更 (画像の追加など) を許可します。
EmptyMask Web サイト上でのアクセス許可は持っていません。ユーザー インターフェイスによって使用することはできません。
EnumeratePermissions Web サイト、リスト、フォルダ、ドキュメント、またはリスト アイテム上でのアクセス許可を列挙します。
FullMask Web サイト上ですべてのアクセス許可を持っています。ユーザー インターフェイスによって使用することはできません。
ManageAlerts Web サイトのすべてのユーザーに対する通知を管理します。
ManageLists リストを作成および削除し、リスト内の列を追加または削除して、リストのパブリック ビューを追加または削除します。
ManagePermissions Web サイト上でのアクセス許可レベルを作成および変更し、ユーザーおよびグループにアクセス許可を割り当てます。
ManagePersonalViews リストの個人用ビューを作成、変更、および削除します。
ManageSubwebs チーム サイト、会議ワークスペースのサイト、ドキュメント ワークスペースのサイトなどのサブサイトを作成します。サイトコレクションを対象範囲とするフィーチャーのプロパティをアクティブ化、非アクティブ化、または編集します。[サイト コレクションの機能] ページを参照し、サイト コレクションを対象範囲とするフィーチャーをユーザーインターフェイスを介してアクティブ化または非アクティブ化するには、サイト コレクションの管理者である必要があります。
ManageWeb Grant the ability to perform all administration tasks for the Web site as well as manage content. Activate, deactivate, or edit properties of Web site scoped Features through the object model or through the user interface (UI). When granted on the root Web site of a site collection, activate, deactivate, or edit properties of site collection scoped Features through the object model. To browse to the Site Collection Features page and activate or deactivate site collection scoped Features through the UI, you must be a site collection administrator.
Open ユーザーに対して、Web サイト、リスト、またはフォルダを開いて、そのコンテナ内のアイテムにアクセスすることを許可します。
OpenItems サーバー側のファイル ハンドラでドキュメントのソースを表示します。
UpdatePersonalWebParts Web パーツを更新して、個人用設定情報を表示します。
UseClientIntegration クライアント アプリケーションを起動する機能を使用します。そうしなければ、ユーザーはドキュメントに対してローカルで作業を行い、変更内容をアップロードする必要があります。
UseRemoteAPIs SOAP、WebDAV、または Microsoft Office SharePoint Designer 2007 インターフェイスを使用して Web サイトにアクセスします。
ViewFormPages フォーム、ビュー、およびアプリケーション ページを表示し、リストを列挙します。
ViewListItems リスト内のアイテム、ドキュメント ライブラリ内のドキュメントを表示し、Web ディスカッション コメントを表示します。
ViewPages Web サイトのページを表示します。
ViewUsageData Web サイトの利用状況に関するレポートを表示します。
ViewVersions リスト アイテムまたはドキュメントの古いバージョンを表示します。

リストテンプレートタイプID

忘れすのでメモ。。
http://msdn.microsoft.com/ja-jp/library/microsoft.sharepoint.splisttemplatetype.aspx

TypeID ListTemplateType テンプレートタイプ FeatureId
100 GenericList 汎用リスト 00BFEA71-DE22-43B2-A848-C05709900100
101 DocumentLibrary ドキュメント ライブラリ 00BFEA71-E717-4E80-AA17-D0C71B360101
102 Survey アンケート 00BFEA71-EB8A-40B1-80C7-506BE7590102
103 Links リンク リスト 00BFEA71-2062-426C-90BF-714C59600103
104 Announcements お知らせリスト 00BFEA71-D1CE-42de-9C63-A44004CE0104
105 Contacts 連絡先リスト 00BFEA71-7E6D-4186-9BA8-C047AC750105
106 Events イベント リスト 00BFEA71-EC85-4903-972D-EBE475780106
107 Tasks タスク リスト 00BFEA71-A83E-497E-9BA0-7A5C597D0107
108 DiscussionBoard ディスカッション掲示板 00BFEA71-6A49-43FA-B535-D15C05500108
109 PictureLibrary 画像ライブラリ 00BFEA71-52D4-45B3-B544-B1C71B620109
110 DataSources データ ソース 00BFEA71-F381-423D-B9D1-DA7A54C50110
111 WebTemplateCatalog サイト テンプレート ギャラリー  
112 UserInformation ユーザー情報リスト  
113 WebPartCatalog Web パーツ ギャラリー  
114 ListTemplateCatalog リスト テンプレート ギャラリー  
115 XMLForm XML フォーム ライブラリ 00BFEA71-1E1D-4562-B56A-F05371BB0115
116 MasterPageCatalog マスタ ページ ギャラリー  
117 NoCodeWorkflows コード ワークフローなし 00BFEA71-F600-43F6-A895-40C0DE7B0117
118 WorkflowProcess カスタム ワークフロー プロセス 00BFEA71-2D77-4A75-9FCA-76516689E21A
119 WebPageLibrary Wiki Web ページ ライブラリ 00BFEA71-C796-4402-9F2F-0EB9A6E71B18
120 CustomGrid リストのカスタム グリッド 00BFEA71-3A1D-41D3-A0EE-651D11570120
130 DataConnectionLibrary データ接続ライブラリ  
140 WorkflowHistory ワークフロー履歴 00BFEA71-4EA5-48D4-A4AD-305CF7030140
150 GanttTasks ガント タスク リスト 00BFEA71-513D-4CA0-96C2-6A47775C0119
200 Meetings 関連する会議リスト 00000000-0000-0000-0000-000000000000
201 Agenda 会議の議題リスト  
202 MeetingUser 会議の出席者リスト  
204 Decision 会議の決定事項リスト  
207 MeetingObjective 会議の目標リスト  
210 TextBox 会議テキスト ボックス  
211 ThingsToBring 会議に持っていく物リスト  
212 HomePageLibrary 会議ワークスペース ページのリスト  
301 Posts ブログ投稿リスト  
302 Comments ブログ コメント リスト  
303 Categories ブログ カテゴリ リスト  
1100 IssueTracking 案件管理 00BFEA71-5932-4F9C-AD71-1557E5751100
1200 AdminTasks 管理者タスク リスト  
-1 InvalidType    

2010年2月1日月曜日

SharePointらしくないUIの開発

http://www.microsoft.com/japan/seminar/SharePointDevelopersForum/internet/session1/play.aspx

Microsoftの松崎さんがUI開発を解説するビデオがみれます。
2時間超のビデオです。(予定時間を1時間くらい超過した様で、、)
とても、内容が濃いのでSharePoint開発にかかわる人は一度見た方が良いでしょう。
(開発者向けの情報で、システム管理者向けではないです。)

内容的には、

  • インターネットサイトとして採用されるSharePoint
    • For インターネットがなぜ良いのかの説明
  • ASP.NETのマスターページ
  • ASP.NET観点でみた、SharePoint
  • ASP.NETで作成したページをSharePointへ移行
  • WCM(Webコンテンツ管理=CMS)
  • 発行機能(MOSSのみ)
  • 発行機能で使用される承認WF
  • 開発した機能のパッケージ化
  • マウスが、、、

と、、

 

他のビデオは下記から、、

http://blogs.msdn.com/tsmatsuz/archive/2010/01/28/info-sharepoint-tech-forum.aspx

デモ:Path フォームを SharePoint サイト上のドキュメント ライブラリに保存する

http://office.microsoft.com/ja-jp/infopath/HA102636741041.aspx

Webキャストでの操作手順があるのは、うれしいですね。
人へInfoPathの説明をするのが、楽に成りそうです。