Archive for the ‘SharePoint Designer’ Category
データビューでできること
水曜日, 6 月 25th, 2008
さて、以前データビューの記事を書きましたが、どんなことができるのか?ということをざっとお見せしたいと思います。
まず、下はドキュメントライブラリです。
![]()
つぎに、これをデータビューで表示すると
![]()
表形式で表示できます。表示する列や順序もビューと同じよう変更できます。つぎに、もう少しこのデータビューを利用しやすくするために、ツールバーを追加するとフィルタ・並べ替え、グループ化をすることができるようになります。ちなみに承認の状況でグループ化をしたのが下図です。
![]()
また、いくつかの表示形式がデフォルトで用意されています。下図はそのうちの1つです(色は手動です)。
さて、上記の表示されている各データは、下図のようにデータフィールド(列)の変更や書式(型)を変更することができます。ですので、データが画像のURLの場合、書式を画像にすると、リンク先の画像を表示させることができます。
さて、このように、以前の記事で書いたデータソースをノンコーディングで様々な形で表示できるようにしたものがデータビューです。ちなみに、下記のようにデータの追加・削除・編集もすることが可能です。
これだけのことがノンコーディングでできるのが私にはたまりませんw
アイディア次第では、かなりいろいろなことができると思ってます。他の方がどのように利用しているか知りたいなぁ~待ってます!
SharePoint Designerのデータビューについて
日曜日, 6 月 22nd, 2008
SharePoint Designerを利用すると、データビュー(DataFormWebParts)を利用することができます。
データビューとは、下記のデータソースのデータをページ上に表示させることができます。
- SharePointリスト
- SharePointライブラリ
- データベース接続(SQLまたはOLE DB Providerを利用可能)
- XMLファイル
- サーバーサイドスクリプト
- XML Webサービス
- ビジネスデータカタログ
- リンクされているソース(データソース間の連結)
さて、このデータビューは使いこなすといろいろなことがノンコーディングで実現することができるようになります。
- データソースのデータの表示:表とかいろいろな表示が可能です。事前にいくつかの表示形式のテンプレートが用意されています。「コモン Data View タスク→レイアウトの変更で確認できます)。また、表示したデータのフィルタ・ソート・グループ化もできます。
- データの編集・削除・追加が可能な入力フォームの作成:することができます。また、作成したフォームをリスト・ライブラリの新規アイテム入力フォームや編集フォームなどに利用することができます。
データビューの使い方に関しては、ヘルプにStep By Stepで利用の仕方が出ているので、ぜひ参考にして下さい!あと、データビューを利用する利点として、他のサイトにあるリスト・ライブラリのデータソースを利用することができます!
また、SPDで少しカスタマイズをすると、サイトコレクションにある全ての予定表リストをまとめて表示させることができたます。
さらに!アドバンスな使い方としては、データビューはデータソースのデータをXMLとして取得し、その結果をXSLTで表示させるという構造になっているでので、データビューを利用して、XMLとしてデータを受け取ることによって、リストやライブラリのプロパティの値をもとにグラフを作成することができたりします!
それらのことについてはまた、今度!
SharePoint Designerで、任意の承認者を選択するWFの作成(InfoPath 2007を利用するとき)
日曜日, 6 月 22nd, 2008
以前の記事で紹介したのは、MOSSのフォームを利用するというやり方でしたが、
同じことをInfoPathフォームを利用する時には、若干クセが出てきます。
InfoPathのフィールドに承認者を設定する場合ですが、「山田太郎(表示名)、tyamada(アリアス)」を承認者とする場合、
以前の記事で紹介した、WFの承認者用の変数に表示名(山田太郎)を値として設定すると、タスクの担当者として適切に割当たりません…
WFの承認者用の変数にアリアス(tyamadaまたはdomain\tyamada)を設定すると、タスクの担当者として適切に割り当たりました。
ん~なぜ??私から見ると単なるテキストを渡しているように見えるんですけどね・・・
ま、そもそもタスクを割り当てる必要がないと言えばないですが…
SharePoint Designerで、任意の承認者を選択するWFの作成
日曜日, 6 月 22nd, 2008
以下のシナリオのWFをSPDで作成する方法をご紹介します。
シナリオ
- 申請者は、ユーザーPicker(ユーザー型のプロパティのことです)を利用し、承認者を選択します。
- 承認者は、SharePointのフォームで承認・却下を実施します。
- 申請者が申請したアイテムのプロパティに承認の状態を反映させます。
- ドキュメントライブラリに「承認者(ユーザ・グループ型)」・「承認状態(1行テキスト)」というプロパティを用意します。
- SharePoint DesignerからWFを新規作成します。
- (ステップ1の画面において)現在のアイテムでのフィールドの変更を待つを追加し、フィールド⇒承認者、に等しい⇒空でないに設定します(このアクションを追加するか、このステップ1をこのアクションのみにしないと動作しません)。
- 次に、ワークフローの変数を設定するにおいて、新しい変数(種類は文字列)を作成(この変数を承認者変数とします)し、次に値⇒fxを押して、現在のアイテムの承認者を選択します。
- ユーザーからデータを収集するを追加し、ユーザー⇒ワークフロー参照を選択し、ワークフローデータから変数:承認者変数として設定し、データ⇒承認用タスクを選択します。次へを押したあと、カスタムフォームフィールドを設定します。追加を押し、フィールド名:承認・却下と入力し、情報の種類:選択肢(メニューから選択)を選択し、次へを押します。選択肢に未承認と承認と却下を入力し、完了を押します。
- リストアイテムを更新するを追加し、リスト:現在のアイテムを選択し、追加を押します。フィールド:承認状態、割り当てる値を設定:fxを押して、ソース(S):ワークフロータスク(ワークフローが利用するタスクリスト名を選択)、フィールド(F):承認・却下、リストアイテムの検索のフィールド(I)、値(V):fxを押して、ソース(S):ワークフローデータ、フィールド(F):"変数:収集(ユーザーからデータを収集するアクションで作成される変数)"を選択します。
ほかの方法を知っているかたは教えてください…あと、追記ですが、上記のIDで識別する場合は、変数で一意のIDを保持していますが、IISResetを実行しても変数の値は消去されません
SharePoint Designerのカスタムアクティビティ
日曜日, 6 月 22nd, 2008
以下のサイトには、SPDで利用できる追加のアクティビティがあります。
とても便利なアクティビティが用意されています。かなりありがたいです
。
http://www.codeplex.com/SPDActivities
- Send Email with HTTP File attachment - Allows sending emails with attachments retrieved using a web request
- Send Email with List Item attachments - Allows sending list item attachments as files attached to an email
- Start Another Workflow - Starts another workflow associated with a list item
- Grant Permission on Item - Allows granting of specified permission level on a spicified item
- Delete List Item Permission Assigment - Allows deleting of specified permission level assigment for a given user
- Reset List Permissions Inheritance - removes any unique permissions assigned to an item by inheriting list permissions
- Is User a member of a SharePoint group - Checks if a given user is part of given sharepoint group
- Is Role assigned to User - Checks if a user role is already assigned on the current list item
- Lookup user info - allows to lookup properties in site's user information list for a given login
- Copy List Item Extended Activity - Allows copying/moving list items and files cross site.
- Send Email Extended - Enhaced version of the OOTB activity. Allows you to specify the sender. Also does not break links in body.
CodePlexにはそのほかにも良いソースがあるのでおすすめのコンテンツがあれば紹介していきたいと思います。
SharePoint Designerでアイテムを参照する際に選択できるプロパティ
日曜日, 6 月 22nd, 2008
私は、開発が得意ではないので、基本的にノンコーディングでの要件を満たそうとがんばります。
要件満たせないと開発しないといけないので・・・特にWFの開発は避けたいたいなと
ですので、SPDのWFは実際かなり触りました…
ちなみに、システムのフィールドがWF中にどのような値の持ち方してるか全然資料がなかったのもので
調べた情報を共有します…MSさん、資料出してほしいです
※以下のプロパティは既定値です。追加したプロパティも利用できます。
| ドキュメントライブラリで選択できるプロパティ http://portal/sales/Doclib/ に"ファイル名.xlsx"をアップロード。2番目のアイテム |
タスクで選択できるプロパティ http://portal/sales/Lists/List/8_.000 にタスクを作成。8番目のアイテム |
| (プロパティ名) (値):値がなかった箇所は確認できていません GUID {476773DA-A9D7-450F-AD7F-6136B3EF03F7} HTMLファイルの種類 ID 2(ライブラリのID) UIバージョン 512(チェックアウト→チェックインをした後は514) URLパス /sales/Doclib/ファイル名.xlsx アイテムの種類 0 ウィルスの状態 16528 エンコードされた絶対URL http://portal/sales/Doclib/ファイル名.xlsx コンテンツタイプ ドキュメント コンテンツタイプのID 0x01010067A72797B384974BA9EB4B32693BFAEE サーバーの相対URL /sales/Doclib/ファイル名.xlsx ソースURL ソースのバージョン(変換済みドキュメント) ソース名(変換済みドキュメント) タイトル チェックアウト先 チェックインのコメント テンプレートのリンク バージョン 1.0 パス sales/Doclib ファイルサイズ 16528 ファイルサイズ 16528 ファイルの種類 xlsx レベル 1 現在のバージョン TRUE 更新者 Domain名\ユーザ名 更新日時 2008/5/22 0:04 作成者 Domain名\ユーザ名 作成日時 yyyy/mm/dd hh:mm:ss 種類(ドキュメントにリンクされたアイコン) xlsx 順序 200 承認の状況 0;#承認済み 承認者のコメント 名前 ファイル名 名前(フォームで使用) ファイル名.xlsx |
(プロパティ名) (値):値がなかった箇所は確認できていません Completed Form_URN GUID {28BEEEC2-0A7C-4C77-9224-F7555EEE2481} HTMLファイルの種類 ID 8 UIバージョン 512 URLパス /sales/Lists/List/8_.000 アイテムの種類 0 コンテンツタイプ タスク コンテンツタイプのID 0x0108002A67581AAF875842B808EF50BE5A6FA4 サーバーの相対URL /sales/Lists/List/8_.000 タイトル TEST タスクグループ タスクの種類 バージョン 1.0 パス sales/Lists/List ファイルの種類 ファイル名 8_ フォームデータ ユーザー設定の電子メール本文あり リンク レベル 1 ワークフロー アイテムID ワークフロー リストID ワークフロー名 開始日 2008/5/22 0:00 外部参加の理由 外部参加者 拡張プロパティ 期日 結果 現在のバージョン TRUE 更新者 Domain名\ユーザ名 更新日時 yyyy/mm/dd hh:mm:ss 作成者 Domain名\ユーザ名 作成日時 yyyy/mm/dd hh:mm:ss 種類(ドキュメントにリンクされたアイコン) 順序 800 承認の状況 0;#承認済み 承認者のコメント 状態 未開始 説明 達成率(%) 担当者 添付ファイル FALSE 電子メールの通知の送信 電子メールの本文 変更保留時間 名前(フォームで使用) 8_.000 優先度 (2) 標準 |
| ページで選択できるプロパティ http://portal/sales/Pages/ に"ファイル名.aspx"をアップロード。2番目のアイテム |
|
| (プロパティ名) (値):値がなかった箇所は確認できていません GUID {C73E4BA1-7CDC-4AD1-B8B0-8E0B1573D402} HTMLファイルの種類 ID 2 UIバージョン 512 URLパス /sales/Pages/ファイル名.aspx アーティクルの日付 アイテムの種類 0 ウィルスの状態 21111 エンコードされた絶対URL http://portal/sales/Pages/ファイル名.aspx コンテンツタイプ ページ サーバーの相対URL /sales/Pages/ファイル名.aspx ソースURL ソースのバージョン(変換済みドキュメント) ソース名(変換済みドキュメント) タイトル チェックアウト先 チェックインのコメント テンプレートのリンク バージョン 1.0 パス sales/Pages バリエーションのグループID バリエーションのリレーションシップ リンク ファイルサイズ 21111 ファイルサイズ 21111 ファイルの種類 aspx ページレイアウト レベル 1 現在のバージョン TRUE 更新者 Domain名\ユーザ名 更新日時 yyyy/mm/dd hh:mm:ss 作成者 Domain名\ユーザ名 作成者 作成日時 yyyy/mm/dd hh:mm:ss 種類(ドキュメントにリンクされたアイコン) aspx 順序 200 承認の状況 0;#承認済み 承認者のコメント 説明 名前 ファイル名 名前(フォームで使用) ファイル名.xlsx 連絡先 連絡先の電子メールアドレス 連絡先の名前 連絡先用の画像 |
SharePoint Designerのワークフロー(WF)について
日曜日, 6 月 22nd, 2008
SharePoint Designer(以下、SPD)ではあらかじめ用意されたアクションを利用して簡単なWFを作成することができます。
下記の作成画面ですが、いまいち直感的に理解しずらいと思います・・・
![]()
ただ、条件・アクション・ステップに関して以下のような図を描くことができると直感的に作成することができるかな?と思います。

条件:読んで字の如く、条件を指定します。以下、一覧です。
-
- ドキュメントフィールドの比較:「指定したライブラリ・リストのプロパティ」と「ワークフローデータ(変数)、現在のアイテム、サイト内のリスト・ライブラリのプロパティ」を比較
- データソースの比較:「ワークフローデータ(変数)、現在のアイテム、サイト内のリスト・ライブラリのプロパティ」と「ワークフローデータ(変数)、現在のアイテム、サイト内のリスト・ライブラリのプロパティ」を比較
- タイトルフィールドにキーワードを含む:現在のアイテムのタイトルフィールドに「ワークフローデータ(変数)、現在のアイテム、サイト内のリスト・ライブラリのプロパティ」の文字が含まれるかを確認
- 指定した期間内に変更された:2つの日付を比較する。現在の日時・任意の日付の選択、「現在のアイテム、またはワークフローデータ(変数)、サイト内のリスト・ライブラリのプロパティ」から日付を選択可能
- 指定したユーザーによって変更された:
- アドレス帳に登録されているユーザー
- ワークフロー変数
- 現在のアイテムを作成したユーザー
- ADに登録されているユーザーまたはSharePointグループを選択可能
- 指定した期間内に作成された:2つの日付を比較する。現在の日時・任意の日付の選択、「現在のアイテム、またはワークフローデータ(変数)、サイト内のリスト・ライブラリのプロパティ」から日付を選択可能
- 指定したユーザーによって作成された:
- アドレス帳に登録されているユーザー
- ワークフロー変数
- 現在のアイテムを作成したユーザー
- ADに登録されているユーザーまたはSharePointグループを選択可能
- 指定したファイルの種類:任意の文字列、または「現在のアイテム、またはワークフローデータ(変数)、サイト内のリスト・ライブラリのプロパティ」から選択可能
- ファイルサイズが指定した範囲内(キロバイト):「ワークフローデータ(変数)、現在のアイテム、サイト内のリスト・ライブラリのプロパティ」から2つのサイズ範囲を指定
アクション:WFの処理に該当します。以下一覧
-
- To Doアイテムを割り当てる
- アイテムのチェックアウトを破棄する
- アイテムのチェックアウトをする
- アイテムをチェックインする
- アイテムを削除する
- コンテンツの承認状態を設定する
- フォームをグループに割り当てる
- ユーザーからデータを収集する
- リストアイテムをコピーする
- リストアイテムを更新する
- リストアイテムを作成する
- ワークフローの変数を設定する
- ワークフローを停止する
- 計算を行う
- 現在のアイテムでのフィールドの変更を待つ
- 現在のアイテムにフィールドを設定する
- 指定した期間だけ停止する
- 指定日まで停止する
- 電子メールを送信する
- 動的文字列を作成する
- 日付/時刻フィールドの時刻部分を設定する
- 日付に時刻を追加する
- 履歴リストに記録する
ステップ:条件とアクションをまとめる単位。1 つのステップ内のルールが完全に処理された後で次のステップに移行するという特徴があります。
あとは、用意された条件・アクション・ステップでPuzzleをするようなものです。ただし、単にPuzzleで考えるとかなりいろいろなことができます。
しかし、実装をすると…というのが現状です。実は1つの1つのアクションには特有のクセみたいなものがあります。
たとえば、コンテンツの承認状態を設定するというアクションはライブラリでコンテンツの承認が有効になっている必要があったり、
To Doアイテムを割り当てるというアクションでは、割り当てたタスクが完了するまで次のアクションを実行しないなどです。
ですので、私は、最初はヘルプに出ているサンプルでコツをつかんだ後、その後で実際に自分でWFを作成しました。
今後は、便利だと思うSPDのWFについて紹介していきたいと思います。