SharePointPnPPowerShellでユーザー名などを変える操作をしていたのですが、SharePointにログインし、確認すると変更されていなくて、少しはまったのでメモを残します。
変更されなかったソースコード
以下のように実行しましたが、変更されていなかった。
$u = Get-PnPUser
for($i=0; $i -le $u.Count; $i++){
if($u[$i].Title -eq "BeforeO365SecGroup")
{
$u.Title = "AfterO365SecGroup"
$u.Update()
}
}
SharePointPnPPowerShellの特徴
SharePointPnPPowerShellはトランザクションで動作をしており、実行が必要だった。。。
つまり、executeやcommitのような反映処理が必要だったのです。
変更されたソースコード
ExecuteQueryを呼んであげることで、無事反映することができました。
$ctx = Get-PnPContext
for($i=0; $i -le $u.Count; $i++){
if($u[$i].Title -eq "BeforeSecGroup")
{
$u[$i].Title = "AfterSecGroup"
$u[$i].Update()
$ctx.ExecuteQuery()
}
}
まとめ
些細なことですが、こんなのではまる人もいたということで、参考になれば幸いです。
コメント