Búsqueda de sitios web

Actualizar los campos de metadatos "Creado por" y "Última modificación" de un elemento de lista mediante PowerShell


¿Alguna vez quiso actualizar la lista de SharePoint o los campos de metadatos del elemento de la biblioteca, como: “Creado por” “Modificado por” “Creado” “Última modificación”? Estos valores de columna deben actualizarse mientras se copian elementos de una lista a otra, mediante programación.

Hoy, tenía otro requisito para actualizar los campos de metadatos en un documento almacenado en la biblioteca de documentos de SharePoint. Actualicemos estos campos de metadatos como "Creado por" "Modificado por" "Creado" "Última modificación" usando PowerShell.

Actualización creada por campo usando PowerShell en SharePoint:

El siguiente script cambia "Creado por" en un elemento de la lista de SharePoint.


Add-PSSnapin Microsoft.SharePoint.Powershell -ErrorAction SilentlyContinue
 
#Set Configuration Parameters
$WebURL = "https://portal.crescent.com/IQ/"
$ListName = "Questionnaire"
$ItemID = "147"
$UserName = "Crescent\Hamid"
 
#Get the Web, List, Item and User objects
$Web= Get-SPWeb $WebURL
$List= $web.Lists[$ListName]
$Item = $List.GetItembyID($ItemID)
$Author =$web.EnsureUser($UserName)
 
#update the created by & modified by columns
$Item["Author"] = $Author
$Item["Editor"] = $Author
$Item.SystemUpdate()

Script de PowerShell para actualizar campos de metadatos en SharePoint:

A continuación se explica cómo actualizar los valores de los campos Creado por, Modificado por, Creado y Modificado de un archivo en SharePoint con PowerShell.


Add-PSSnapin Microsoft.SharePoint.Powershell -ErrorAction SilentlyContinue

#Define the Parameters
$WebURL = "https://sharepoint.crescent.com/projects/1033/"
$LibraryName = "Project Documents"
$DocumentName = "Project Schedules.xlsx"
$UserName = "Global\EricCo"
$DateValue = "2013-01-01 10:05" # Should be in "yyyy-mm-dd HH:mm" format

#Get the Web 
$web= Get-SPWeb $WebURL
#Get the Library
$list= $web.Lists[$LibraryName]
#Get the User
$Author =$web.EnsureUser($UserName)
#Get the document
$Document = $list.Items | where {$_.Name -eq $DocumentName}

#update created by column sharepoint programmatically
$Document["Author"] = $Author
#set modified by programmatically
$Document["Editor"] = $Author

#Set Created Date value
$Document["Created"] =  $DateValue

#sharepoint powershell to update modified date
$Document["Modified"] = $DateValue

$Document.UpdateOverwriteVersion() #Can use $Document.SystemUpdate() as well..

Para actualizar los valores de campo Creado por, Creado, Modificado por, Modificado en SharePoint Online, consulte: SharePoint Online: Actualización de valores de campo Creado por/Modificado por, Creado/Modificado mediante PowerShell

Artículos relacionados