書きかけアイテムをユーザには非表示にする

たとえばお知らせリストにアイテムをを登録するとき、書きかけの状態でちょっと保存しておきたいことは良くあると思います。
しかし保存したとたん、アイテムはユーザに公開されてしまいます。
そこでワークフロー機能を応用して、下書きを非表示にする方法を試してみます。


リストやライブラリのバージョン管理機能を有効にすると、文書に [下書き] (未承認)というステータスを持たせることが出来ます。
下書き状態の文書は、一般ユーザには表示されません。

しかし、この機能はあくまでバージョン管理のためのものですので、これを「お知らせ」に応用しようとすると、やや不都合があります。
それは公開に [承認] が必要なことです。
毎回、いちいち [保存]→[自分自身で承認] は面倒です。
もちろん、本当に上司の承認を要する場合は別ですが。

ブログ(投稿リスト)では、この点がカスタマイズされていて、保存と承認を同時に行う [発行] ボタンがあるのですが…、通常のリストにはこれがありません(欲しかった!)

そこで、SharePoint Designer のワークフロー機能を応用してみます。

まず、お知らせリストを作成して、バージョン設定を有効にしておきます。
実際にはバージョンは作成しないで、下書きの閲覧権限は [アイテムを編集できるユーザー] にします。
ついでに、リストの詳細設定で、編集アクセス権を [所有するアイテムのみ] にしておきましょう。

次に、リストにフラグとなる [状態] 列を作成します。
[作成中][公開] の選択肢で、デフォルト値は [公開]

Designer でこのリストにワークフローを設計します。

新規的に自動的に開始する
変更時に自動的に開始する
1st STEP:
もし [承認の状況] が [承認待ち] および [状態] が [作成中] なら、[ワークフローを停止]
もし [承認の状況] が [承認待ち] および [状態] が [公開] なら、[承認済みに設定]
もし [承認の状況] が [承認済み] および [状態] が [作成中] なら、[承認待ちに設定]
もし [承認の状況] が [承認済み] および [状態] が [公開] なら、[ワークフローを停止]
2nd STEP:
[ワークフローを停止] する

2nd STEP はいらないかもしれませんが、念のため。

これで、投稿者が [作成中] にした文書は、本人(=編集権限あり)およびこのリストに管理権限を持つユーザしか表示されなくなります。

この方法は結構上手いと思うのですが、難点もあります。
それは、余計なメッセージが表示されてしまうこと。

作成時


表示時


これ、消せないものですかね。


Author

中村 和彦(シンプレッソ・コンサルティング株式会社 代表)が「ユーザ視点の SharePoint 情報」を発信します。元大手製造業 SharePoint 運用担当。現SharePoint コンサルタント。お仕事のお問い合わせはこちらまでお願いします。当ブログにおける発信内容は個人に帰属し所属組織の公式発信/見解ではありません。
FB : 中村 和彦
blog: Be・Better!
MS MVP SharePoint 2009/10-2011/9
MS MVP Office 365 2012/10-2014/9