2009/09/15

通知メールに記載(ハイパーリンク)されるURL

【疑問】
Web拡張や代替アクセスマッピングの設定を行っている場合に、通知メールに記載されるURLはどうなるのか?

【検証結果】
通知内容はSharePoint ハイブ\TEMPLATE\XMLフォルダ内のalerttemplates.xmlにより決定されております。

通知メールのURLに相当する部分はSiteUrlで生成されています。
通知の文面に設定される具体的なURLは、今回確認した限りでは、
・通知を設定した時のURLが設定される。
・その後、どのURLでアクセスしてリスト/アイテムの変更等の操作をしても、通知を設定した際にアクセスしていたURLが設定されたメールが届く。
となります。


【悩み事】
1つのサイトに対して複数のURLを持っていても、各ユーザは必ず1つのアクセス経路しか利用しないのなら良いですが、アクセス経路が複数あるユーザの場合は難ありですね。。
・1つのコンテンツに対して通知設定をアクセス経路ごとに行ってもらう?
・通知メールからURLを取得して、アクセス経路に応じて手で入力しなおしてもらう?

う~ん、非現実的ですね。


エクスプローラビューで必要なポート

【現象】
エクスプローラ ビューを利用する際に動作が遅い

【解消方法】
エクスプローラ ビューを用いる場合、クライアント PC と MOSS サーバー間で、通常の Web アプリケーションのポート ( TCP 80 番など) 以外に、TCP 139 番と TCP 445 番のポートが利用されます。
TCP 139 番と TCP 445 番ポートが空いていない場合、表示までに数十秒かかることがあります。


クライアント PC と MOSS サーバーの実 IP アドレス間だけでなく、クライアント PC と MOSS サーバーの仮想 IP アドレス間でも、TCP 139 番と TCP 445 番ポートを空ける必要があります。

SharePoint Designerのワークフロー機能

MOSSでは、製品標準のワークフロー機能以外にも、SharePoint Designerを利用してワークフローを作成することができます。
といえば聞こえはいいんですが、実際にはSharePoint Designerで提供されている条件やアクションの範囲内でしか作成できません。

ですので、「ワークフロー」という意味ではそれほど有用性はないかもしれませんが、ノンコーディングでちょっとしたデータ操作に行うにはお手軽に使える機能だと思います。

■SharePoint Designerで提供されるアクティビティ
【条件】
選択肢
構文および設定例
ユーザー設定の条件
[フィールド] が [値] に [等しい]
タイトル フィールドにキーワードを含む
タイトル フィールドに [キーワード] を含む
指定した期間内に変更された
[日付1] から [日付2] の間に変更された
指定したユーザーによって変更された
[指定したユーザー] によって変更された
指定した期間内に作成された
指定した [期間内] に作成された
指定したユーザーによって作成された
指定した [ユーザー] によって作成された
指定したファイルの種類
ファイルの種類が [指定した種類]
ファイル サイズが指定した範囲内 (キロバイト)
ファイルのサイズが [サイズ] KBから [サイズ] KBの間

【アクション】

To Do アイテムを割り当てる
リスト アイテムをコピーする
指定した時間だけ停止する
アイテムのチェックアウトを破棄する
リスト アイテムを更新する
指定した日まで停止する
アイテムをチェックアウトする
リスト アイテムを作成する
電子メールを送信する
アイテムをチェックインする
ワークフローの変数を設定する
動的文字列を作成する
アイテムを削除する
ワークフローを停止する
日付/時刻フィールドの時刻部分を設定する
コンテンツの承認状態を設定する
計算を行う
日付に時刻を追加する
フォームをグループに割り当てる
現在のアイテムでのフィールドの変更を待つ
履歴リストに記録する
ユーザーからデータを収集する
現在のアイテムにフィールドを設定する


■SharePoint Server 2007 と Designerだけではできないこと
  • ワークフロー ステップの結合は1本のフローに収束する

    • 設定画面の構成上、ワークフロー ステップのネストができない

  • 一方通行のフローしか定義できない
  • 分岐はIf Else しか指定できない

    • ループ(While)の指定は不可
    • 以前に通ったアクティビティには戻れない(終端に向かって一方通行)
    • 待機は”現在のアイテムでのフィールドの変更を待つ”アクションで実現可能(WaitForActivity)

  • 条件判定は”かつ”(and)しか指定できない

    • “または”(or)やネストは指定不可

      • 例:(条件A and 条件B) or (条件C)

    • 動的な条件判定は不可

      • 例:現在の時刻がサービス稼動時間の場合

  • 機能的な制限

    • SharePoint に特化したアクティビティしか使用できない
    • 他の製品/システムとの接続を前提としていない

  • ツールの特性上の制限

    • 特定のリスト/ライブラリに組み込まれるため横展開(テンプレート化等)不可
    • ウィザード ベースの定義画面によるフロー制御の制限
    • 簡易な条件しか指定できない 
    • 開発要件と制限事項の検証が必要

WSS 3.0では承認ワークフローは提供されない

見落としガチですが、WSS 3.0では「3段階の状態管理ワークフロー」しか提供されていません。
一番需要があるであろう「承認」ワークフローは、含まれていません。なんということか。 

■MOSSで標準提供されるワークフローテンプレート


  • 承認
    ドキュメントまたはアイテムを複数のユーザーに回覧し、承認を求める。
  • フィードバックの収集
    ドキュメントまたはアイテムを複数のユーザーに回覧し、フィードバックを求める。
  • 署名の収集
    ドキュメントまたはアイテムを複数のユーザーに回覧し、デジタル署名を収集する。
  • 廃棄承認
    レコード管理プロセスで、一定期間保管したコンテンツを廃棄する際に使用する。
  • 3 段階の状態管理
    3 つの状態をもとに、2 つのワークフローを連続的に処理する。既定では非アクティブ。
  • 申請書ワークフロー
    あらかじめ用意されているドキュメント ライブラリ内でのみ利用できる承認ワークフロー。組織図を作成し、それをもとに承認フローを実行できる。
    東アジアバージョンでのみ利用可能(※)。
  • 翻訳管理
    翻訳するドキュメントのコピーを作成し、翻訳タスクを翻訳者に割り当て、マニュアル等のドキュメント翻訳プロセスを管理する。翻訳管理ライブラリでのみ利用可能。
【補足】


  • 承認者を任意に変更・追加できたり、ワークフローの各段階でメッセージを送付したりと細やかな制御も可能で、すべてのアクションはログとして専用のリストに記録される
  • 標準提供のテンプレートは、ワークフローの開始オプション、既定値、完了後の処理などの指定以外は、カスタマイズできない 
  • 一部のテンプレートは、Officeからの利用に限定される 
    • 申請書ワークフロー 
    • 署名の収集
  • WSS 3.0で提供されるワークフローテンプレートは以下に限定される
    • 3段階の状態管理ワークフロー
  • ※申請書ワークフローの制限事項
    • 繁体字中国語、簡体字中国語、日本語、または韓国語のいずれかのバージョンの Office SharePoint Server 2007 と Microsoft Office Enterprise 2007 の両方がインストールされている場合にのみ利用可能 
    • 非対応の言語で利用する方法 
      • 日本語、韓国語または中国語 のlanguage pack をインストールする 
      • また、申請書ワークフローをアクティブにするサイト コレクションで、言語設定を日本語、韓国語または中国語に設定する 
      • クライアント側のアプリケーションも日本語版、韓国語版または中国語 版が必要 
      • サーバーとクライアントの言語設定が一致している必要はない
    • 申請書ワークフローはトップレベルサイトでしか使用できない
    • 通常のワークフローのように作成できない 
    • 必ずOffice側でワークフローの開始と申請情報の入力を行う

2009/09/14

「サイトコレクションの自動削除」の動作

「サイトコレクションの使用確認と自動削除」機能は、対象となるサイトコレクションのサイトに対しユーザーからの通常のアクセスの有無を判断して、確認メールの送信が行われる動作ではないとのこと。

サイト コレクションの作成、または使用の確認を判断している動作は、サイトコレクションの使用確認と自動削除の設定において送信された確認メールに記載されている [Web サイトの使用確認] のページにアクセスされたタイミングによって決定されます。


サイト コレクションを作成すると、サイトがデータベースに追加され、アクティブ サイトとして記録されます。指定された時間が経過すると、使用されていないサイト コレクションを再確認するか、または削除するように求める電子メール通知が送信されます。


その電子メール通知に記載されている [Web サイトの使用確認] ページにアクセスしたタイミングで、サイトコレクションとして使用されていない日数と、サイト コレクションの期限切れの確認メールの通知回数がリセットされ、以降、[確認と自動削除の設定] ページで設定された日数の間は、確認メールが送信されない動作となります。


※[Web サイトの使用確認] のページ:
サイトコレクションのURL/_layouts/useconfirmation.aspx

MOSSでの禁止文字

KB905231「SPS2003、MOSS 2007のサイト、フォルダ、ファイルで使用できない文字」で公開されているもの以外にも、MOSS環境で禁止文字として登録されているものが存在するとのこと。



KB905231 に記載されている文字以外に文字コードとして00 - 0F と 10 - 1F 、7F 、 80 - 8F 、90 - 9F(左記範囲のIME特殊文字 Unicode(基本多言語-基本ラテン))も禁止文字として登録されているようです。


ただし、この問題はMOSS/WSS 3.0環境でのみ発生します。SPS/WSS2.0ではアップ可能です。


Office ファイルのロックと解除の動作

【現象】
• MOSS上のOffice文書をチェックアウトして編集したが、Office文書のチェックインができない。
• 翌日など、一定時間経過後に確認頂いたところ、チェックインができ現象が解消している。

【想定される原因】
現象が発生したファイルをチェックアウト中(ファイルの書き込みロック中)に何らかの原因により、クライアント(Vista)端末とMOSSサーバ間の通信が経たれ、編集した内容を保存する際、Windows Vistaの書き込みロックがタイムアウトになるまでチェックインできなかった可能性があります。
タイムアウト時間を経過すると解消する。

【Office ファイルのロックと解除の動作】
1. SharePoint サーバーにアップロードされたファイルを編集する際、クライアントは Office ファイルのロック時間を含む Lock リクエストを SharePoint サーバーに送信します。


2. SharePoint サーバーは、クライアントから受信した Lock リクエストに基づいてロック時間をコンテンツ データ ベース内のテーブルに設定します。


3. クライアントにて Office ファイルを編集中に、SharePoint サーバーにリクエストしたロック時間がタイム アウトになると、クライアントは Refresh リクエストを SharePoint サーバーに送信し、ロック時間の延長を要求します。


4-1.クライアントが編集している Office ファイルを閉じた場合、ロック解放のためのリクエストが SharePoint サーバーに送信され、ロックが解除されます。


4-2.クライアントがクラッシュした場合など SharePoint サーバーにて設定されたロック時間内にクライアントからの通知がない場合、SharePoint サーバーはそのロックを強制的に解除します。



Office ファイルを編集モードで開いた場合のロック解除時間(SharePoint サーバーに送信するロック時間)は、クライアントOS側にてハード コードされているようで、Windows XP では 10 分、Windows Vista では 60 分とのこと。