本文讲述在SharePoint2013 中使用文档库Scheduling (计划公布功能)的步骤和注意的事项。

文档库Scheduling (计划公布功能)
用于设定当文档通过审批后特定的时间区间内才干够被普通用(非管理员,审批人员和作者)户看到。也就是说要启用Scheduling,必须先启用文档库的内容审批和小版本号控制。这是官方文档的说法,可是笔者注意到除此之外Draft
Item Security要设置成Only users who can approveitems (and the author of the item) 才行:

另外,当在系统文档库上启用Scheduling时,SharePoint会自己主动加列PublishingExpirationDate(Scheduling End Date) 和 PublishingStartDate (Scheduling Start Date)

可是当又一次新建一个文档库时,启用Scheduling时上面两列不会自己主动加入,能够有两个方法解决

1. 使用系统文档库模板

a.      将系统文档库存为模板,假设看不到另存模板的连接能够直接使用/_layouts/15/savetmpl.aspx?List=ListID能够从文档库设置中找到,或者直接把listedit.aspx换成savetmpl.aspx: /_layouts/15/listedit.aspx?List=%7B465AD054%2DD81B%2D495F%2DAA9F%2D6E44053A3B63%7D

b.     再使用a
步得到的文档库模板新建文档库,这样新建出来的文档库启用Scheduling时上面两列就会自己主动加入了

2.   启用Scheduling后从Site column
中加入这两列PublishingExpirationDate(Scheduling End Date)
和 PublishingStartDate(Scheduling Start Date)

用PowerShell的话能够这样写:

Param(
[parameter(Mandatory=$true)]
[alias("web")]
$webUrl,
[parameter(Mandatory=$true)]
[alias("DocumentLib")]
$documentLibTitle
) $webSite = get-SPWeb $webUrl
$documentLib = $webSite.Lists[$documentLibTitle]
Write-host "Enable content approval"
$documentLib.EnableModeration = $true
Write-host "Enable minor version"
$documentLib.EnableMinorVersions = $true
$documentLib.DraftVersionVisibility = 2; # Only users who can approve items (and the author of the item), lib.DraftVersionVisibility = DraftVisibilityType.Approver
$documentLib.Update()
[Microsoft.SharePoint.Publishing.PublishingWeb]::EnableScheduling($documentLib);
# Check if the list have the two column "Scheduling Start Date" and "Scheduling End Date" ## refresh the document library
$documentLib = $webSite.Lists[$documentLibTitle]
if(-Not($documentLib.Fields.ContainsFieldWithStaticName("PublishingStartDate")))
{
Write-host "Adding column Scheduling Start Date"
$listField=$webSite.Site.RootWeb.Fields["Scheduling Start Date"]
$documentLib.Fields.AddFieldAsXml($listField.SchemaXml, $true, 4) # SPAddFieldOptions.AddToAllContentTypes = 4
$documentLib.Update()
} if(-Not($documentLib.Fields.ContainsFieldWithStaticName("PublishingExpirationDate")))
{
Write-host "Adding column Scheduling Start Date"
$listField=$webSite.Site.RootWeb.Fields["Scheduling End Date"]
$documentLib.Fields.AddFieldAsXml($listField.SchemaXml, $true, 4)
$documentLib.Update()
} $webSite.Dispose();
Write-host "Done!" -foregroundcolor green

在SharePoint 2013 中使用文档库Scheduling (计划公布功能)的更多相关文章

  1. sharepoint 2010 如何给文档库或自定义列表添加评论功能

    转:http://www.cfanz.cn/?c=article&a=read&id=40924 最近公司在知识库中,有一个需求,就是想要给文档添加评论功能,在sharepoint 2 ...

  2. sharepoint 2010 如何创建文档库内容类型content type

    转:http://biancheng.dnbcw.info/linux/441643.html 这次主要是记录下,如何来创建文档内容类型,例如新建文档的时候,可以选择不同模板,有word,excel文 ...

  3. SharePoint 开发另存文档库中文档

    前言 最近碰到这样一个问题,用前端框架读取SharePoint文档库中文档的时候,如果是PDF/TXT等类型的文档,不会出现另存为的操作,而是在浏览器中在线打开,这样用户是无法接受的. 解决方法 通过 ...

  4. SharePoint 服务器端对象模型操作文档库(上传/授权/查看权限)

    简介:上传文档到文档库,并对项目级授权,查看项目级权限方法         //在列表根目录下创建文件夹 public static string CreatFolderToSPDocLib(stri ...

  5. sharepoint rest api 创建文档库 文件夹

    function createFolder() { var requestHeaders = { "Accept": "application/json;odata=ve ...

  6. 跟我学SharePoint 2013视频培训课程——怎样创建文档库并上传文档(8)

    课程简介 第8天,怎样在SharePoint 2013怎样创建文档库并上传文档. 视频 SharePoint 2013 交流群 41032413

  7. 在Outlook中查看预览SharePoint文档库的文档

    本文概况 阅读时间: 约2分钟 适用版本:SharePoint Server 2010及以上 面向用户:普通用户,管理员 难度指数:★★☆☆☆ 在日常工作中,总有一些常用的文档需要经常打开查看,其实我 ...

  8. [MSDN] 使用 SharePoint 2013 中的 JavaScript 库代码完成基本操作

    MSDN:http://msdn.microsoft.com/zh-cn/library/jj163201.aspx 了解如何编写代码以在 SharePoint 2013 中使用 JavaScript ...

  9. .net sharepoint文档库操作

      /// <summary> /// 检查文档库 /// </summary> /// <param name="siteUrl"></ ...

随机推荐

  1. SiteMesh

    1.导入对SiteMesh.jar的依赖 <dependency>      <groupId>org.sitemesh</groupId>      <ar ...

  2. android获取系统wifi状态等

    WIFI 获取WIFI状态 WifiManager wifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE); ...

  3. cmake学习笔记(五)

    在cmake 学习笔记(三) 中简单学习了 find_package 的 model 模式,在cmake 学习笔记(四)中了解一个CMakeCache相关的东西.但靠这些知识还是不能看懂PySide使 ...

  4. IT第十九天 - 继承、接口、多态、面向对象的编程思想

    IT第十九天 上午 继承 1.一般情况下,子类在继承父类时,会调用父类中的无参构造方法,即默认的构造方法:如果在父类中只写了有参的构造方法,这时如果在子类中继承时,就会出现报错,原因是子类继承父类时无 ...

  5. notify()、notifyAll()和wait()

    看到一道面试题,写一个多线程程序,交替输出1.2.1.2…… 先写下程序: /** * Created by Andrew on 2015/10/28. */ public class OutputT ...

  6. java学习之字符流与字节流的转换

    package com.io; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundExce ...

  7. 【C语言学习】存储类型

    C语言中的存储类型主要有四种:auto.static.extern.register ★auto存储类型 默认的存储类型.在C语言中,假设忽略了变量的存储类型,那么编译器就会自己主动默认为auto型 ...

  8. SpringMVC+Mybatis+Mysql实战项目学习--环境搭建

    1.开发IDE:Spring Tool Suite(自带maven插件) 下载地址https://spring.io/tools/sts/all 在STS.ini配置信息中加下面一行 保证编码格式为u ...

  9. 【Hibernate】HQL new map

    HQL 查询如果需要带出对象(比如:OneToOne子对象)的一两个属性,而不是全部带出.可以使用 select new map的方法带出. 1.lazy还是设置为false /**关联属性对象*/ ...

  10. IAR之工程配置

    参考 : IAR的Workspace顶部下拉菜单中Debug和Release http://blog.csdn.net/yanpingsz/article/details/5588525 ++++++ ...