SharePoint :リストの添付ファイルでファイル管理はしない方が良いと思う

当ブログの免責事項に個人的見解である旨は記載しているけど、あらためて記載しますが、この記事もあくまでも僕の個人的見解です。特にこの記事を読まれている方が企業の SharePoint 管理者やサイトコレクションの管理者の場合は、最終的な判断はご自身で調査した結果で判断してください。

SharePoint はサイト内に配置できるコンテンツは大別すると「リスト」「ライブラリ」「ページ」の3つかと思います。で、ページはちょっと別として SharePoint を知らない方に説明する場合は「リスト」と「ライブラリ」を重点的に説明するのですが、説明後によく質問されるのが以下の質問。

「リストもアイテムにファイルを添付できますよね?ライブラリと何が違うの?」

僕の説明が悪い事に反省しつつ、その回答としてリストの添付ファイルでファイル管理をする事をお勧めしない理由を挙げています。

■リストの添付ファイルはバージョン管理の対象外

リスト自体にバージョン管理の機能はあります。しかし、添付ファイルはバージョン管理の対象外です。

▼そもそも添付ファイルに同じファイル名のファイルは上書きアップロードできません。

なのでファイルを更新して最新版を添付する場合は、すでに添付済のファイルを削除し、最新版を添付しなおします。その後にアイテムのバージョン履歴から復元をしても、添付ファイルは元に戻りません。

■リストにはファイルを管理する機能はない

ライブラリなら持っている機能がリストの添付ファイルにはありません。例えば…

  • 共同編集
  • チェックインチェックアウト
  • ファイルごとにメタデータを付ける
  • フォルダー

など。

■リストの添付ファイルのファイル名は検索対象外

ファイルの中身はクロールされるのでこれはあまり大きな問題ではないとは思いますが、大事なのは次かもしれないです。

■アイテムに添付ファイルが多くあると結局探すのが大変

上述の通り添付ファイルの中身はクロールの対象ですが、検索結果に表示されるのは添付ファイルではなく添付されている本体のアイテムです。なので、アイテムに例えば20ファイルほど添付していたとしたら、検索結果からアイテムに行っても、その中の20ファイルからどれが目的のファイルかはわかりません。ファイル名で判断がつけば良いけど、判断付かない場合は20ファイルを上から順に中を開いて探すしかないです。


これらの理由から「ファイルを管理する」という用途の場合は、リストの添付ファイルはお勧めしていません。

ファイル管理に不向きなだけで、ファイルを添付しない方が良いとは言っていません。管理する必要のないファイルであればアイテムの表現を豊かにする方法としてファイルを添付する使い方は問題ないと思います。例えば画像を添付とか。

SharePoint :リストのアイテムに画像を挿入させるもう一つの方法(宛先ライブラリの権限が不足している場合)

それぞれの特徴や機能を考慮して有効に利用できると良いですね。

PowerApps : SharePoint のリストに添付した画像を表示させる方法

※本題の前に回りくどくなりますが前段の説明から入ります。色々知ってる人は飛ばしてください。

Office 365 のライセンスのみでは CDS ( Common Data Service )は利用できないので、PowerApps のアプリのデータの保存場所は OneDrive や SharePoint などを使う事になると思います。
PowerApps は SharePoint のフォームのカスタマイズをする用途もありますが、今回は SharePoint のカスタムリストを保存場所にしてアプリを作成した場合の話です。

“PowerApps : SharePoint のリストに添付した画像を表示させる方法” の続きを読む

Microsoft Teams :添付ファイルを添付後に削除したらどうなるか?会話を削除したらどうなるか?

■添付ファイルを添付後に削除したらどうなるか?

▼ファイルを添付して会話を開始

▼「ファイル」タブから添付したファイル(「削除テスト.xlsx」)を削除

▼削除しても会話の方は変化なし。ファイルのリンクをクリックすると…

▼「ファイルが見つかりませんでした。」

添付ファイルを添付後に削除したら、会話のリンクは特に変化はありませんでした。

■添付ファイルを添付後に会話を削除したらどうなるか?

▼ファイル(「削除テスト2.xlsx」)を添付して会話を開始

▼添付した会話を削除

▼削除されました

▼「ファイル」タブを見ると、ファイルは削除されていませんでした

添付ファイルを貼り付けている会話を削除しても、添付ファイル自体は削除されませんでした。削除した会話を復元したい場合は安心ですね。

しかし、おそらくこの挙動を知らないユーザーは、会話を削除すれば添付ファイルも削除されたと思う可能性が高いと思います。

ゴミファイルが溜まったり、不要ファイルがずっと残っている事でのトラブルもありますので、この挙動は周知させておいても良いのかなと思いました。

不要ファイルが残っていた事でのトラブルは SharePoint の頃からもあると思います。ファイルサーバーでもメールの添付でもありえます。
例えば、古い情報の記載があるファイルを削除したと思っていたらそのまま残っていて、検索でそのファイルにたどり着いたユーザーがそのファイルが最新だと思い込んでお客様に提出したら、実は古い情報だったためにトラブルに…のような。チーム内の会話を把握していればそのファイルが最新ではないのは把握できますが、検索結果からファイルにたどり着いた場合はその経緯を知らないユーザーもいますからね。

Microsoft Teams : 添付ファイルを添付後にフォルダー移動したらどうなるか?

数日前に Microsoft Teams で添付ファイルを添付後にファイル名変更したらどうなるか?添付した会話のリンクはデッドリンクになってしまうのか?否か?という記事を書き、若干違和感あるけど問題ないことを確認しました。

Microsoft Teams :添付ファイルを添付後にファイル名変更したらどうなるか?

この記事を書いている時に「では、フォルダー移動したらどうなるんだろう?」と思ったけど、時間がないのでネタメモに書いて後日検証しようと思っていました。しかし、SNS上で「フォルダー移動もOKですよ」とのお話をいただき解決してしまったのですが、当ブログは自分への備忘録も兼ねているので結果がわかっていてもやります。

▼会話にファイルを添付します

▼「ファイル」タブに添付ファイルがあることを確認

▼この画面からフォルダーを作成します

▼フォルダーが作成されました(「フォルダー01」)

▼添付ファイル「フォルダーテスト.xlsx」を移動します

▼移動後に「フォルダー01」内に「フォルダーテスト.xlsx」が移動されたことを確認

▼会話に戻ると特に異変はないです

添付ファイルにはファイル名しか記載がないから、フォルダーが移動されたところで変化はないですよね。で、会話内の添付ファイルへのリンクをクリックすると

▼無事にファイルの中身が表示されました

という事で、Microsft Teams では、添付ファイルを後々フォルダーで整理したとしても、会話の添付ファイルのリンクには影響がない事が確認できました。

Microsoft Teams で SharePoint のドキュメントライブラリを添付ファイルで利用する点は、ネガティブな意見だと「他アプリの寄せ集め」なんて言われているようですが、僕としては添付ファイルをドキュメント管理に長けている SharePoint でできるのは Microsoft Teams の他のビジネスチャットにはない特徴の一つでもあるので、その性質や挙動を把握しつつうまく活用していきたいですね。例えば、ビジネスチャット上でファイルの共同作業なんかやってしまうと、版管理ができなく最新バージョンがどれだかわからない問題やそれによる先祖返りなどの事故が起きてしまう可能性はメールと同じですもんね。

Microsoft Teams :添付ファイルを添付後にファイル名変更したらどうなるか?

Teams の添付ファイルはチームに接続されている SharePoint のチームサイトのドキュメントライブラリに保存されています。過去に以下のような記事を書きました。

Microsoft Teams の添付ファイルのクセのある仕様

で、一般的なチャットツールって添付ファイルを添付後に更新したりできないと思いますが、 Teams に限っては SharePoint のライブラリなので、添付後にも当然ファイルを更新できるし、ファイル名も変更できます。この場合、ファイル名を変更した後に、添付をした会話のファイルへのリンクをクリックしたらどうなるのか?デッドリンクになってしまうのか?ちゃんとリンクされるのか?実際にやってみました。

▼まずファイルを添付して会話を投稿します。(「テスト.xlsx」というファイル名)

▼添付後にそのファイルのファイル名を変更します。

▼ファイル名を変更しました。(「テスト.xlsx」→「テスト変更.xlsx」)

▼ファイル名変更後に添付した会話を見ると、あれ?ファイル名は変更されていません。

では、ここをクリックするとどうなるでしょうか?

▼変更前のファイル名のまま(「テスト.xlsx」)、でもファイルは開きます。

不思議ですね。

▼不思議なまま編集をしてみます。

▼編集終了後、再度会話のリンクを開いてみると、先ほど編集した部分もちゃんと表示されています。

つまり、ファイル名を変更してもチームの会話の添付したファイル名の表記は変更されていないけど、リンクをクリックすればちゃんと変更後のファイルが表示されるし編集も可能です。

で、後々気が付いたのですが、ファイルを編集しているときに

▼Excel Online の方のファイル名は変更後のファイル名(「テスト変更」)になっていました。

う~む、なんか気持ち悪いけどとりあえずファイル名を変更してもデッドリンクになったりする事はなさそうです。

Microsoft Teams の添付ファイルのクセのある仕様

これまでいくつかのビジネスチャットを使ってみましたが、ビジネスチャット内でファイルのやりとりをしていくと、やはりメールのように同ファイル名のファイルが貯まります。

▼例えば Slack の場合(スレッド内のスクショ)

このように「sample.xlsx」が2個並びます。

▼例えば社内SNSですが Yammer の場合(ファイル一覧画面のスクショ)

同じく「sample.xlsx」が2個並びます。

 

では Microsoft Teams はどうでしょう。
Microsoft Teams でチームを作成すると自動で Office 365 グループ が作成され、という事はこれまた自動で SharePoint のサイトが作成され、Microsoft Teams でファイルを添付すると、その SharePoint のサイトのライブラリにアップロードされます。では、SharePoint のライブラリなら、同じファイル名のファイルは複数アップロードできないハズ。

試してみます。

▼ Microsoft Teams に「sample.xlsx」というファイルをアップロード。

▼チャネルのファイル一覧画面を見ると、ここは Yammer とあまり変わらず。

さて、この状態で同じ「sample.xlsx」を添付してみます。

▼おっ、やはり同じファイル名でのアップロードはダメでした。

「キャンセル」をクリックすればキャンセルされ、「置換」をクリックすれば上書きアップロードされます。ここらへんは SharePoint のライブラリの挙動と変わりありません。

※▼ちなみに Microsoft Teams 用のライブラリのバージョン設定はメジャーVerで500Verを保存する設定なので、間違えて「置換」しても復元できるので安心です。

では、「両方を保持」をクリックするとどうなるのか?( SharePoint では別名で保存でファイル名を手動で変更してアップロードすると思います。)

▼「sample (1).xlsx」としてアップロードされました。

自動で連番が振られる挙動は通常のライブラリの挙動とは違く、 SharePoint のリストの添付ファイルに似ていますね。また、「(1)」の前には半角スペースも入るようです。

▼ファイル一覧画面でもこのように同じファイル名にはならずにアップロードされています。

▼もちろんですが SharePoint で開いても同じです。

ちなみに、 Microsoft Teams と SharePoint のサイトの関係は、1チームに1サイトなので、別チャネルで同じファイル名をアップロードした場合はどうなるでしょうか?

▼あれ?同じファイル名のファイルでも普通にアップロードできました。

▼ファイル一覧画面を見ると、こんな感じ。

「一般」チャネルでは「General」というタイトルだったけど、ここでは「テスト001」というチャネル名のタイトルが表示されています。この時点では Teams でチャネルを作ると SharePoint ではライブラリが作成されるのかと思ったけど、 SharePoint 側で確認したら…

▼サイトのライブラリでは、チャネルごとにフォルダーが作成されるんですね。

まとめると…

  • 他のビジネスチャットみたいに同じファイル名でファイルを添付する事はできない。
  • 「両方を保持」をクリックすると拡張子の前に「 (1)」のように自動で連番が振られる。
  • ただし、チャネルごとにフォルダーを作成するため、別チャネルでは同じファイル名でもアップロード可能。

と、自動で連番が振られる機能は違うけど、大体は SharePoint のライブラリの仕様に準じる感じがわかりました。


同じチャネル内で、すでにアップロード済みのファイルと同じファイル名でアップロードできないのは SharePoint を利用している Microsoft Teams のクセかと思いますが、利用ユーザーにとってはそんな仕組みは知ったことではありません。このクセがメリットに感じることもあるし、デメリットに感じる事もあると思うので、大事なのは、このような仕様も理解した上でツールの選定材料の一つにすると良いかもしれないですね。

SharePoint では0バイトのファイルをアップロードできない

人によっては今更のネタですみません。

0バイトのファイルをアップロード。まぁ通常運営していてなかなかありえない利用シーンですよね。なので僕も今まで知りませんでした。

先日、限られた環境で検証しようとした時に若干焦った事です。カスタムを施したカスタムリストの投稿を検証した際に、添付ファイルにファイルを添付するテスト事項もあり、いつもならExcelなどでテスト用ファイルを作るのですが、限られた環境という事でテキストファイルでテスト用ファイルを作成しました。いつもの自分の操作ならテキストエディタを開いて、適当に文字を入れてから保存をするのですが、なぜかこの時は無意識にデスクトップで右クリック→新規作成→テキスト ドキュメントという手順で、テキストファイルを作成しました。この場合、ファイルサイズは0バイトなんですね。ということで、偶然0バイトのファイルを作成したんです。これを利用してテスト投稿をしてみたのですが、SharePointのエラーページが出て投稿できませんでした。
エラー内容を見ても意味がわからず、原因不明で困っていた時に、色々やってみるとファイルを添付しない時には問題なく投稿される法則がわかり、その後、一緒にテストした人に「ファイル、0バイトじゃないですか?」と言われ、ようやく原因がわかった感じです。

で、検証してみました。

■ライブラリ
ライブラリに0バイトのファイルのアップロードを試みようとすると、丁寧に理由が記載されるのですぐにわかります。やはり通常の利用では0バイトのファイルを扱わないので、この表示は初めて見ました。

■リスト
添付ファイルの0バイトのファイルを添付しようとすると、添付ファイルを指定する操作は特に問題ないのですが、投稿をしようとするとSharePointのエラーページが表示されます。添付ファイルを指定する操作の段階でエラーになってほしいところです。また、これで投稿がエラーになってブラウザの戻るボタンをクリックしても、入力した情報は消えてしまいます。つまり苦労して入力した内容がパァになってしまうんです。

このエラーページには理由が記載されているので原因がわかりますね。ただ、この環境では理由が記載されていましたが、冒頭で同様のエラーページが出て焦った話の際の環境では、この理由が記載されていなかったんです。なので原因がわからずに焦った感じです。おそらくSharePointのバージョンの違いなのかと思いますが、詳しいことはわかりません。

ということで、冒頭の通り、通常運営していて0バイトのファイルを扱うことはないとは思いますが、こういう事があったぞという備忘録でした。