推荐阅读

SharePoint 入门教程之创建及修改母版页
在SharePoint 2013中,微软提供了根据HTML页面转换Master页的方法,并支持单项同步,但是这样的更新,并不完善,会使一些功能造成丢失,所以,了解Master结构的人,尽量直接去修改Master比较方便。 当然,如果需要使用母版页,必须开启SharePoint 2013的发布功能,也就是去网站集功能和网站功能,打开激活发布的Feature。1、激活发布功能2、打开SharePoint Designer 2013(以下简称spd),打开网站,右侧菜单选择母版页,选中seattle.master,Ctrl+C –>Ctrl+V,然后重命名即可。当然,你可以选择其他母版页,两个母版页的命名很有意思,一个西雅图,一个奥斯陆(挪威首都); 3、 右键 -> 在高级模式下编辑文件(或者直接双击)进入代码编辑,如果出现大片黄色背景,可以选择Ribbon菜单上的高级模式(途中红框标识);

如何给Word文档加密
很多有时候我们辛苦做的文件,并不像让人随意看见,这是我们可以通过添加打开密码来为Word文档添加密码。那么下面就由小编给大家分享下给Word文档加密的技巧,希望能帮助到您。 给Word文档加密的步骤如下: 步骤一:首先,打开我们需要加密的Word文档,右键单击左上角的“文件”—然后选择“另存为”,如图: 步骤二:选择文档需要保存的位置(或者选择“浏览"),然后会出现另存为的对话框,在对话框右下角选择“工具”,然后选择“常规选项”如图: 步骤三:这时,就打开了常规选项的对话框了。第一项为加密选项,我们只需在第一项的输入框内输入密码,然后点击“确定”,如图: 步骤四:这时,会弹出确认对话框,我们需重复输入一次密码,点击“确定”。 步骤五:然后回到另存为对话框,点击“保存”即可。 步骤六:那么打开此文档时久需要正确输入密码才可以打开,到此,给word 文档加密就完成了。 步骤七:这里,我再讲讲第二项:此文档的文件共享选项 步骤八:共享选项主要是针对修改文档的权限,在此选项输入密码后点击确定,那么打开此文档时需要正确输入密码才可以进行文档的修改。

excel表格乘法函数公式怎么使用
在Excel表格中,我们常常会利用Excel公式来统计一些报表或数据等,这时就少不了要用到加、减、乘、除法,在前面我们已经详细的讲解了Excel求和以及求差公式使用方法。那么我们又如何利用公式来对一些数据进行乘法计算呢?下面给大家分享excel表格乘法函数公式的使用方法。 excel表格乘法函数公式的使用方法 我们先从简单的说起吧!首先教大家在A1*B1=C1,也就是说在第一个单元格乘以第二个单元格的积结果会显示在第三个单元格中。 1、A1*B1=C1的Excel乘法公式 ①首先,打开表格,在C1单元格中输入“=A1*B1”乘法公式。 ②输入完毕以后,我们会发现在 C1 单元格中会显示“0”,当然了,因为现在还没有输入要相乘的数据嘛,自然会显示0了。 ③现在我们在“A1”和“B1”单元格中输入需要相乘的数据来进行求积,如下图,我分别在A1和B1单元格中输入10和50进行相乘,结果在C1中就会显示出来,等于“500”。 上面主要讲解了两个单元格相乘求积的方法,但是在我们平常工作中,可能会遇到更多数据相乘,下面主要说说多个单元格乘法公式运用,如:“A1*B1*C1*D1”=E1。 2、Excel中多个单元格相乘的乘法公式 ①在E1单元格中输入乘法公式“=A1*B1*C1*D1”。

如何在Word中制作资产标签实例教程
年底盘点、资产管理、资产更新等等,资产标签的制作已经成为行政人员工作上不可缺少的一部分,但是,资产数量繁多,如果每次都是每条记录粘贴到Word中再进行打印,不仅工作繁琐,且效率低又容易出错。本案例将使用Word中“邮件合并”功能,轻松为您解决此问题,有效提高您的办公效益。操作步骤1 启动Word2007,打开资产标签的模板,点击菜单栏–邮件–选择收件人,使用现有列表。教大家如何在Word2007中制作资产标签2 弹出选取数据源对话框,选择制作资产标签-源数据.xls,打开它。教大家如何在Word2007中制作资产标签3 光标定位到第一格资产名称后面,点击邮件选项卡下的插入合并域按钮,选择资产名称。教大家如何在Word2007中制作资产标签4 重复步骤3,将数据全部填充完整,如下图所示点击预览结果按钮可以查看效果。教大家如何在Word2007中制作资产标签
最新发布

SharePoint JavaScript 更新用户和组字段
最近,需要更新列表字段,字段的类型是用户和组,so写了这么一段代码 复制代码 function updateUserField(){ var ctx = new SP.ClientContext.get_current(); var list = ctx.get_web().get_lists().getByTitle('My List'); var item = list.getItemById(1);//Item Idvar assignedToVal = new SP.FieldUserValue(); assignedToVal.set_lookupId(12);//User Id in the site collection item.set_item("AssignedTo",assignedToVal);//AssignedTo is a column name item.update(); ctx.executeQueryAsync( function() { console.log('Updated'); }, function(sender,args) { console.log('An error occurred:' + args.get_message()); } ); } ExecuteOrDelayUntilScriptLoaded(updateUserField, "sp.js");

SharePoint 如何配置PowerShell任务计划
最近,有这么个需求,需要定时为SharePoint更新内容,所以,就想到了PowerShell命令和任务计划(Windows自带的功能,英文叫Task Schedule,在开始菜单里就能找到),然后,就配置了一下。配置成功以后,发现PowerShell和任务计划一块使用,还是很不错的,比开发控制台简单方便的多,所以就有这么一篇博客分享给大家,希望能对有类似需求的人有所帮助。 1.创建一个任务,如下图: 记得红框的选项要这么选择,因为PowerShell需要很高权限才能执行,而且,无论用户是否登陆,都要执行。 2.设置任务的执行计划,按照自己的需求设置就可以了,如下图: 3.选中任务要执行的程序,点击浏览选中PowerShell,如下图: 4.PowerShell命令的位置,如下图: C:\Windows\System32\WindowsPowerShell\v1.0

SharePoint 读取内容的插件之SharepointPlus
最近,一直在前端和SharePoint进行交互,然后,发现一个好用的插件,分享给大家。 首先,需要添加一个引用,如下图: 当然,我这里只是举个例子,亲们一定要去下载这个库,然后传到服务器或者文档库中进行引用,而不是添加下面一行代码就行的【新手必读,老手忽略之】;<script type="text/javascript" src="sharepointplus-5.1.min.js"></script> 然后,添加JQuery库,因为很多时候和DOM进行交互,会比原生的JavaScript方便很多。 最后,就可以使用SharePoint Plus插件了。 举个简单的例子,如何获取数据: 复制代码 // with some fields and an orderby command $SP().list("ListName","http://www.mysharepoint.com/mydir/").get({ fields:"Title,Organization", orderby:"Title DESC,Test_x0020_Date ASC" }).then(function(data) { for (var i=0; i<data.length; i++) console.log(data[i].getAttribute("Title")); });复制代码 插件还有很多其他的功能,大家可以参考下面的链接,里面有例子;

SharePoint 前端开发常用的对象之_spPageContextInfo
_spPageContextInfo对象,是SharePoint开发一个非常常用的对象,尤其是前端开发,可以非常方便的获取到一些和站点有关的信息。 完整对象如下图,需要什么属性,可以自己获取,然后在代码中使用了。_spPageContextInfo { [functions]: , alertsEnabled: false, allowSilverlightPrompt: "True", clientServerTimeDelta: -447, crossDomainPhotosEnabled: false, currentCultureName: "en-US", currentLanguage: 2052, currentUICultureName: "zh-CN", isAppWeb: false, isSiteAdmin: true, layoutsUrl: "_layouts/15", pageItemId: 1, pageListId: "{20b11cdc-7008-4c2f-89d6-d7c2ad57cca0}", pagePersonalizationScope: 1, ProfileUrl: "http://moss:80/my/Person.aspx", serverRequestPath: "/SitePages/主页.aspx", siteAbsoluteUrl: "http://moss", siteClientTag: "13$$16.0.4327.1000", siteServerRelativeUrl: "/", systemUserKey: "S-1-0-0", tenantAppVersion: "0", updateFormDigestPageLoaded: [date] Fri Feb 1 15: 59: 00 UTC + 0800 2019, userId: 1073741823, userLoginName: "SHAREPOINT\system", webAbsoluteUrl: "http://moss", webLanguage: 2052, webLogoUrl: "_layouts/15/images/siteicon.png", webPermMasks: {}, webServerRelativeUrl: "/", webTemplate: "1", webTitle: "开发网站", webUIVersion: 15 } 获取的截图如下图: 如果想在JavaScript或者JQuery里使用的话,直接如下方法使用就可以了; 当然,像userLoginName/webAbsoluteUrl/webLangeuage等属性,是经常会用到的; var siteUrl = _spPageContextInfo.webAbsoluteUrl; 结束语 SharePoint会为们提供很多类似的方法,我们可以慢慢总结,以便我们开发中更加快速和方便。

SharePoint REST 服务获取讨论版问题
最近,有这么个需求,需要获取讨论版里的问题,然后汇总,这里就考虑用REST服务了。 1.我们先创建这么一个讨论版列表,然后添加一些问题,如下图: 2.然后需要开发REST服务代码了,如下图: 3.如何获取ContentTypeId呢,只需要进入列表设置,找到内容类型一栏,然后点进去相应的内容类型,URL地址上就可以看到; 4.完整的获取代码,如下:$.ajax({ url: _spPageContextInfo.siteAbsoluteUrl + "/_api/web/lists/getbytitle('Discussion Board')/items?$filter=startswith(ContentTypeId,'0x01200200153F6A1D2550B542BF614FA5FB2F0F6B')", type: "GET", headers: { "Accept": "application/json;odata=verbose", }, success: function (data) { $.each(data.d.results,function(i,item){ console.log(item.Title); }); }, error: function (data) { alert("Error"); } }); 总结 这里的代码,只是获取讨论版的问题,其实,可以举一反三一下,获取SharePoint各种类型的列表项目,通过内容类型去进行筛选,都可以使用类似的代码。同时,也可以修改查询条件,筛选其他字段。

SharePoint PowerShell 启动工作流
最近,有个需求,就是需要批量更新列表内容,平时这些操作,都用powershell去完成,但是,powershell需要在服务器上操作,而服务器权限需要通过客户的层层把关,所以,这次就考虑不用命令了,而改用SharePoint网站工作流,然后,用powershell命令去创建任务计划。 这样,以后有需求修改,直接在客户端就能做了,而任务计划,是始终不会变的。 1.创建网站工作流,这个就比较简单了,我们就不多少了,直接在SharePoint Designer里干就好了; 2.启动网站工作流的PowerShell代码段,这个显然是本文的重中之重; 复制代码 # SharePoint.Workflow.Start-SPSiteWorkflowparam ( [string]$Url = "http://sharepoint/demos/workflow", [string]$Workflow = "Sample Site Workflow" )Add-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")# get the workflow assocation from the target site/web $site = Get-SPSite $Url $culture = [System.Globalization.CultureInfo]::InvariantCulture $wfAssociation = $site.RootWeb.WorkflowAssociations.GetAssociationByName($Workflow,$culture)if ( $wfAssociation ) { # initialize and optionally update association data $assocData = $wfAssociation.AssociationData# start the workflow $wfRunOption = [Microsoft.SharePoint.Workflow.SPWorkflowRunOptions]::Asynchronous $site.WorkflowManager.StartWorkflow($site, $wfAssociation, $assocData,$wfRunOption) } else { Write-Error "Workflow association not found on target web site." }

SharePoint PowerShell如何修改母版页
最近在群里帮忙回答问题,碰到这么一个尴尬的问题,有人创建了一个新母版页,然后引用了新的母版页,不知道怎么的母版页有问题了,再也进不去站点了,希望修改回旧的母版页。 看到问题,想了一下,其实两种方法可以解决,一个是用SharePoint Designer打开站点,找到旧的母版页,直接设置就行了(前提是Designer还能打开); 第二种方法就是用PowerShell命令来解决了,命令如下:$web = Get-SPWeb http://sharepoint $web.CustomMasterUrl = "/_catalogs/masterpage/nightandday.master" $web.MasterUrl = "/_catalogs/masterpage/nightandday.master" $web.Update() 结束语 其实,SharePoint PowerShell在开发和运维中,有着非常棒的帮助,大家一定不要忘记这一工具。

SharePoint 如何上传文档提示别人迁出
我们在使用SharePoint文档库的时候,经常会遇到文档被别人迁出,自己无法修改的情况。这时候,我们最好的办法就是找到那个迁出的人,怼他!如果,他已经离职了,我们无法找到,那么,就请继续往瞎看把。 1.如果我们上传一个文档,有下面的提示,就说明文档库中已经有了这样一个文档,但是,被sb(somebody)迁出了。 2.最简单的办法,就是找到这个人,然后,眼看着让他签入; 3.当然,我们还可以使用管理员权限,进入列表设置,管理未迁入的文档,如下图: 4.选中文档,选择Take Ownership of Selection,这样,文档的Checked Out To就会变成管理员,这个文档也就任由你处置了。 结束语

SharePoint 如何修改用户属性User Name
最近,碰到一个奇怪的事情,在SharePoint里的用户,如果显示方式显示为登录名(Account)的方式,显示为空。如下图: 1.经过查找,发现是因为用户属性 User name为空造成的,如下图: 2.然后,解决问题就是把这个属性更新了,其实更新很简单,SharePoint把这些属性都存在一个列表里了,这个列表就叫做User Information List,可以通过下面的URL访问; http://{SiteUrl}/_catalogs/users/simple.aspx 3.找到问题了,我们只需要更新一下列表就可以了,更新列表的代码附后:

SharePoint PowerShell 创建网站栏
最近,有这么个需求,需要使用PowerShell为网站集创建网站栏,好吧,直接看代码吧。 Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue$webUrl = "HTTP://SITEURL" $listname = "LISTNAME" $fieldname = "FIELDNAME" $IsRequired = $False $FieldType = [Microsoft.SharePoint.SPFieldType]::Text$site = Get-SPSite $webUrl $Web = $site.OpenWeb() $list = $web.Lists.TryGetList($listname) $field = $list.Fields[$fieldname];if($field -eq $null) { $list.Fields.Add($fieldname,$FieldType,$IsRequired) $list.Update() Write-Host $fieldname "is created" } else { Write-Host $fieldname "is already exist" }复制代码 结束语 其实,整个代码逻辑和SharePoint其他对象很相似,只要掌握PowerShell和其他对象一些简单的语法区别即可。