SharePoint:如何批量签入(Check in)文档?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SharePoint:如何批量签入(Check in)文档?相关的知识,希望对你有一定的参考价值。

自从中国国家标准委员会就知识管理模型定位之后,很多企业早些年启用了“传统的知识管理”的模式管理企业结构化和非结构化文档,但在现阶段,很多企业应其本身的快速发展以及应用趋势的需要,逐渐寻求和关注显性知识的“传统的知识管理”平台步入关注“知识共享”和“社交学习并重”转变的解决方案。

通过企业内部的各项评估和调研,多数企业都选择SharePoint 平台作为企业内外部社交、协同办公、知识文档管理系统平台。

但部分企业IT管理员部署完SharePoint平台后,由各个部门管理员进行知识等信息数据架构设置时,往往会遇到一个场景:

用户需求场景:

部门管理员为了应终端用户的需求:多人协作编辑文档需个人编辑完成之后,其他人可见再次编辑,管理员为实现需求在若干文档库启用“签入和签出”功能,比如SoW 文档库,项目Proposal文档库等需要多人协作的文档库。

存在隐患:

但满足用户需求的情况下,往往管理员会忽略了将原始的“传统的知识管理系统”,比如File Server或者FTP Server中的结构化和非结构化文档批量导入SharePoint特定的文档库的情况,未在导入文档前关闭“签入和签出”功能,导致文档批量导入后全部是签出状态,意味着其他终端用户无法访问这些签出的文档,若把文档改成签入状态,单个文档进行修改,势必增加管理员的工作量,那么如何能实现批量签入的需求呢?

解决方案:

多个企业用户管理员曾咨询过我这类问题,这里分享下解决方案: 用PowerShell的cmdlet对文档进行批量签入。(本文适用于SharePoint Server 2013,2016,2019)

具体步骤如下:

$WebURL="http://cpshelley:9001/sites/Project_Shelley"
$LibraryName="shelley"

技术分享图片

$Web = Get-SPWeb $WebURL
$CheckedOu$DocLib = $Web.Lists.TryGetList($LibraryName)

技术分享图片

$CheckedOutFiles = $DocLib.Items | Where-Object { $_.File.CheckOutStatus -ne "None"}

技术分享图片

ForEach($item in $CheckedOutFiles) { $DocLib.GetItemById($item.Id).file.CheckIn("Checked in by cp01administrator") }

技术分享图片

说明:Checked in by是指用哪个用户做批量签入,使用管理员账户。

希望本文对大家有帮助,若大家在使用和操作上遇到其他问题,欢迎线下讨论和咨询。

以上是关于SharePoint:如何批量签入(Check in)文档?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 SharePoint 上“签入”上传的文档?

SharePoint - 如何快速check SharePoint是Standard还是Enterprise Edition?

On Premise Gated Check-in 失败并显示“Theshelfset ... 无法找到用于签入”

powershell sharepoint snapin check

从 SP 2010 文档库中获取文档的最新签入版本(文档)

SharePoint 2103 Check user permission on list