3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【PowerShell】SharePoint Onlineの特定のリストでメジャーバージョン保持数を100未満に設定する

Last updated at Posted at 2022-05-28

はじめに

SharePoint Onlineのリストではバージョン管理においてメジャーバージョンを有効にした場合、バージョンの保持数は100~50000に制限されます。(2022/05/28現在)
⇓⇓⇓こんな感じ⇓⇓⇓
SharePointOnlineバージョン設定エラー画面
バージョンが増えると何が起こるかというと、保持しているバージョン分の容量を食ってしまうというSharePoint Onlineの仕様があるようです。
そのため例えば100バージョン保持していると原本と同様の容量×100の容量を食っていることになります。(50000の制限は一体誰が使うのでしょうか…)
引用元:「SharePoint Online :ライブラリのドキュメントのバージョンの容量についてサポートに問い合わせました」

しかし、実はこのバージョン保持数を強引にPowerShellでいじっている海外の猛者がいました。後ほど参考URLも記載いたします。

やり方

用意するファイルは以下です。

  • ps1ファイル

ps1ファイル

keepVersion.ps1
<#SharePoint Online PowerShell Moduleをインポート#>
Import-Module Microsoft.Online.SharePoint.PowerShell -DisableNameChecking

<#パラメータ設定#>
$siteURL="サイトのURL"
$listName="変更したいリストライブラリのタイトル"
$versioningLimit = 指定したい100未満のバージョン保持数

<#接続認証#>
$Cred= Get-Credential "アカウント名"

<#コンテキストを設定#>
$Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($siteURL)
$Ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)

<#リストのバージョン設定取得#>
$List = $Ctx.Web.Lists.GetByTitle($listName)
$List.Retrieve("EnableVersioning")
$Ctx.ExecuteQuery()

<#バージョン履歴保持設定#>
If($List.EnableVersioning){

    $List.MajorVersionLimit = $versioningLimit
    $List.Update()
    $Ctx.ExecuteQuery()
    Write-host -f Green "Version History Settings has been Updated on '$($listName)'"

}Else{

    Write-host -f Yellow "Version History is turned-off on '$($listName)'"

}

引用元:「SharePoint Online: Set Versioning Limit using PowerShell」

こちらはもちろんSharePoint Onlineの仕様に背くことになるので、このツールを流した後に[設定]>[バージョン設定]の中をいじりたい場合は、一度[次の数のメジャー バージョンを保存する]の設定を100~50000の数値に戻してから諸々の設定を進めてください。(このままだとエラーではじかれます)

さいごに

影響範囲を調べていないのでこちらのツールを流すことで発生した不具合等については責任を負いかねます。自己責任でお願いします。
それにしてもSharePoint Onlineの仕様ってちょこちょこありますが、「そんなの教えてもらわないとわからないよ…」なんてこともよくあるな~と個人的に思っています。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?