用于在 Sharepoint 中创建计算字段的 Powershell 脚本
Powershell script to create calculated field in Sharepoint
我在 Sharepoint 列表中有一个使用此公式计算的列。
=CONCATENATE("
我认为我需要使用 Add-PnPFieldFromXml 而不是使用 Add-PnPField,因为这允许我将计算字段的输出指定为文本。仍在为语法苦苦挣扎。
使用逐字字符串文字('
而不是 "
)——那么您需要转义的唯一字符是 '
:
$expression = 'CONCATENATE("<a href=''https://apps.powerapps.com/play/qqq?CABID=",[CAB Number],"''>",Title,"</a>")'
Add-PnPField -List $ListName -DisplayName 'PowerAppLink' -InternalName PowerAppLink -Type Calculated -Formula $expression -AddToDefaultView
首先,确保计算列公式正确。您可以通过 SharePoint 在列表中创建计算列 UI 以查看公式是否正常工作。
例如:
公式:
=CONCATENATE("<a href=''https://apps.powerapps.com/play/qqq?CABID=",[CAB Number],"''>",[Title],"</a>")
那么,请运行以下PNP Powershell作为管理员
$SiteURL = "https://echodu.sharepoint.com/sites/TeamSite1"
$ListName= "ListD"
Connect-PnPOnline -Url $SiteURL -Credentials (Get-Credential)
$ex = '=CONCATENATE("<a href=''https://apps.powerapps.com/play/qqq?CABID=",[CAB Number],"''>",[Title],"</a>")'
Add-PnPField -List $ListName -Type Calculated -InternalName "PowerAppLink" -DisplayName "PowerAppLink" -Formula $ex -AddToDefaultView
我在 Sharepoint 列表中有一个使用此公式计算的列。
=CONCATENATE("
我认为我需要使用 Add-PnPFieldFromXml 而不是使用 Add-PnPField,因为这允许我将计算字段的输出指定为文本。仍在为语法苦苦挣扎。
使用逐字字符串文字('
而不是 "
)——那么您需要转义的唯一字符是 '
:
$expression = 'CONCATENATE("<a href=''https://apps.powerapps.com/play/qqq?CABID=",[CAB Number],"''>",Title,"</a>")'
Add-PnPField -List $ListName -DisplayName 'PowerAppLink' -InternalName PowerAppLink -Type Calculated -Formula $expression -AddToDefaultView
首先,确保计算列公式正确。您可以通过 SharePoint 在列表中创建计算列 UI 以查看公式是否正常工作。
例如:
公式:
=CONCATENATE("<a href=''https://apps.powerapps.com/play/qqq?CABID=",[CAB Number],"''>",[Title],"</a>")
那么,请运行以下PNP Powershell作为管理员
$SiteURL = "https://echodu.sharepoint.com/sites/TeamSite1"
$ListName= "ListD"
Connect-PnPOnline -Url $SiteURL -Credentials (Get-Credential)
$ex = '=CONCATENATE("<a href=''https://apps.powerapps.com/play/qqq?CABID=",[CAB Number],"''>",[Title],"</a>")'
Add-PnPField -List $ListName -Type Calculated -InternalName "PowerAppLink" -DisplayName "PowerAppLink" -Formula $ex -AddToDefaultView