Sharepoint 2013:如何从术语库为文档库中的所有现有文件设置不同的/更改术语?

Sharepoint 2013:如何从术语库为文档库中的所有现有文件设置不同的/更改术语?,sharepoint,tags,metadata,sharepoint-2013,document-library,Sharepoint,Tags,Metadata,Sharepoint 2013,Document Library,我正在Sharepoint 2013中为文档库中的特定列使用托管元数据 为此列选择的术语(列名:committee)已从术语库设置为xxx,但它应为yyy(也从术语库设置)。 我可以在编辑(托管元数据)列(例如yyy)时设置不同的默认术语。如果我创建了一个新的文件夹或文件,它将在列委员会下正确地标记为yyy 如何在此特定文档库中将所有现有文件夹和文件的标记更改/更新为新的默认值xxx? 我只需要在sharepoint中为此文档库执行此操作,因为这两个TEM都在其他文档库中正确使用。最简单的方法是

我正在Sharepoint 2013中为文档库中的特定列使用托管元数据

为此列选择的术语(列名:committee)已从术语库设置为xxx,但它应为yyy(也从术语库设置)。 我可以在编辑(托管元数据)列(例如yyy)时设置不同的默认术语。如果我创建了一个新的文件夹或文件,它将在列委员会下正确地标记为yyy

如何在此特定文档库中将所有现有文件夹和文件的标记更改/更新为新的默认值xxx?


我只需要在sharepoint中为此文档库执行此操作,因为这两个TEM都在其他文档库中正确使用。

最简单的方法是使用快速编辑。可以使用填充句柄直接更改所有项的托管元数据列值

也可以使用PowerShell脚本更新库中的所有文件

这里是我测试的脚本。这在我这方面是有效的

#Variables
$WebURL="http://sp/"
$ListName="Documents"
$FieldName="TF"
 
#Get the web
$Web = Get-SPWeb $WebURL    
 
#Get the Term from Term store
$TaxonomySession = Get-SPTaxonomySession -Site $web.Site
$TermStore = $TaxonomySession.TermStores[0]
$TermGroup = $TermStore.Groups["Test Term Set Group"]
$TermSet = $TermGroup.TermSets["Task force"]
$Term = $Termset.Terms["Beta"]
 

#Get the List and List Item
$List= $Web.Lists[$listName]
$Items = $List.items
 
Foreach ( $item in $items)
{
#set managed metadata field value powershell
$MMSField = [Microsoft.SharePoint.Taxonomy.TaxonomyField]$Item.Fields[$FieldName]
$MMSField.setFieldValue($Item,$Term)
$Item.Update()
 }
参考: