当前位置:主页 > Office办公 > 其他专区 > SharePoint

最新发布

SharePoint PowerShell 如何批量导入用户到用户组
SharePoint PowerShell 如何批量导入用户到用户组

最近,生产环境上线,好多好多用户组需要配置,一大批人要分别加到各种组,BA的手都点麻了,花了一天时间干活,又花了大半天时间做检查。  然后,大家就一起讨论这个事儿,这样既费时费力,又无法保证正确的事情,我们该怎么解决呢?  解决方法  作为机智的程序员,一定可以解决这个问题的,因为我们都是很(ai)聪(tou)明(lan)的代码者!!!  好吧,运维利器PowerShell 命令又该出场了!掌声在哪里?  作为需求分析员,只需要把上线数据准备好,放到CSV文件里,如下:  Tips:我这里把域名放在用户名了,其实,更(tu)严(sheng)谨(shi)的情况,可以把域名放到代码中:   PowerShell 代码  Tips:代码逻辑很简单,读取CSV文件,找到站点的用户组,一个一个添加就好了;

SharePoint PowerShell 如何从CSV文件导入数据到列表
SharePoint PowerShell 如何从CSV文件导入数据到列表

最近,因为新系统要上线,总是需要准备数据,把文档里的数据导入到SharePoint 列表当中,复制吧快速编辑功能还不给力,就想到写个PowerShell 扔给BA去玩。  这里就举个简单的列表,结构如下:  我们需要的CSV文件结构如下:  导入CSV到List的PowerShell 命令如下:Add-PSSnapin Microsoft.SharePoint.PowerShell #Read CSV file $CSVData = Import-CSV -path "D:\Data.csv" #Get SPWeb $web = Get-SPWeb -identity "http://sitecollection" #Get SPList $List = $web.Lists["ListName"] #Loop every Row in the CSV foreach ($Row in $CSVData) { #New SPListItem $Item = $List.Items.add() #Add SPColumn Value $item["Title"] = $row.Title $item["Name"] = $row.Name $item["Mark"] = $row.Mark $item.Update() Write-Host "Added: "$row.Name -ForegroundColor Green }   PowerShell 执行结果:  结束语  其实,整个代码思路是很简单的,读取CSV文件里的所有行,然后循环插入到列表就好了。

SharePoint PowerShell 如何清空网站集回收站
SharePoint PowerShell 如何清空网站集回收站

在很久很久以前,碰到过一次这样的需求,给客户做好的站点经过层层测试,需求变更在测试,历经半年时间终于要上线了。  然而,有个问题是,回收站里的东西太多太多了,作为开发人员,尤其是有强迫症的开发人员,势必要清空回收站。  那么,问题就来了,大大小小的子网站几十个,回收站里的东西全都清除一遍,没有个半天时间可能都干不完。  作为一个热(xi)爱(huan)技(tou)术(lan)的程序猿,想的是有怎样快捷的方式,让程序帮助我们完成这项任务呢?  解决方法 复制代码 #Get SPSite $Site = Get-SPSite "http://sitecollection" #Delete all from 1st Stage Recycle bin in SPWeb $Site.AllWebs | Foreach-object { $_.RecycleBin.MoveAllToSecondStage() } #Empty 2nd Stage Recycle bin in SPSite $Site.RecycleBin.DeleteAll();复制代码  其实,命令的思路很简单,就是便利每个网站,把回收站添加到网站集回收站,然后,再清空就好了。  结束语  这样一段命令就把一下午的活儿干完了,下午又能认真学习SharePoint 其他技术了,好开森。

SharePoint Online 如何启用传统体验模式
SharePoint Online 如何启用传统体验模式

最近在用SharePoint Online 站点,一打开就是现代体验,看起来很好看,但是自己的功能,需要在传统体验下做起来更方便,所以需要切换回传统体验。  现代体验模式,如下图:  单个列表修改为传统体验  正常情况,如果单个列表需要修改显示模式,进入列表的高级设置:  所有列表和库修改为传统体验  进入网站集管理,找到SharePoint Lists and Libraries experience并激活,即可,如下图:  再次查看文档库视图,发现已经切换为传统体验了:

SharePoint 如何进行列表的增删改
SharePoint 如何进行列表的增删改

异构应用访问SharePoint的文档库或列表时,使用WebService的方式再恰当不过了。有朋友问我如何在dotNet Framework 3.0下的应用程序中控制SharePoint 2003中的列表项。想一想类似的场景应该比较常见,所以写了下面的demo。以下的代码在VS2005中测试通过。using System; using System.Xml; using System.Collections.Generic; using System.Text;namespace ConsoleDemo { class Program { static void Main(string[] args) {try { test(); } catch (Exception ex) { Console.WriteLine(ex.Message); } Console.WriteLine("END"); Console.Read(); }private static void test() { LabPortal.Lists listService = new ConsoleDemo.LabPortal.Lists(); listService.Credentials = System.Net.CredentialCache.DefaultCredentials;string strBatch = "<Method ID='1' Cmd='New'>"+ // //ID是Method的唯一标识,如果有多个Method就都列在下面 //Cmd的类型有:New,Update,Delete。分别对应增加,删除,更新 "<Field Name='ID'>New</Field>"+ // //ID在增加操作时只是个唯一标记,可以随便指定,并不对应到实际 //listitem的ID。但在删除和更新时就必须是实际的ID了,因为要靠这个来唯一指定一条记录 "<Field Name='Title'>Smf</Field>"+ "</Method>"; XmlDocument xmlDoc = new XmlDocument(); XmlElement elBatch = xmlDoc.CreateElement("Batch"); //Batch元素下面的这些Attribue是可选的 elBatch.SetAttribute("OnError", "Continue"); //指定出错后是返回还是继续下一步 elBatch.SetAttribute("ListVersion","1"); //指定列表的版本 elBatch.SetAttribute("ViewName", "654446D3-8E70-4483-B2B6-F87329EAC2D9"); //指定所操作的列表视图GUID elBatch.InnerXml = strBatch; XmlNode ndReturn = listService.UpdateListItems("Contracts", elBatch); //在名为Contracts的联系人列表中增加一条记录 Console.WriteLine(ndReturn.OuterXml); } } }

SharePoint 访问群体对象模型的开发
SharePoint 访问群体对象模型的开发

访问群体(Audience)是Sharepoint Portal server中个性化特性的重要基础。所以基于基于访问群体对象模型的开发场景必然也很常见。在这里列举了8个比较常用到的功能实现。 按照我对其进行了解的顺序排列:1、显示访问群体属性 我在访问群体管理页面中创建了好多的访问群体,现在想要编程的方式来看看这些访问群体的属性。 下面的代码显示了一个访问群体的 ID,name, 和 bValid 属性。分别是访问群体的GUID,名称和是否还有效。2、编程创建访问群体   下面的代码创建了一个名为 "Customer Connection"的访问群体。这个访问群体仅仅是被创建出来了,这时并没有任何的规则与之对应。我们需要为其添加规则并进行收集工作。这里需要注意,收集访问群体只能在Web管理页面中进行,这个操作没有相应的对象模型可以编程。 3、为访问群体添加简单的基于AND 和OR的规则在Web管理页面中仅仅提供了两个规则的操作项:满足所有规则的用户分组或满足任意规则的用户分组。 而且,当我们使用 Web管理页面时,我们被限制为最多使用6条规则。当然,这在多数情况下已经足够用了。但是我们还是希望可以使用多于6条的规则^_^   这种情况下我们可以通过访问群体对象模型来实现。对象模型允许您在一个访问群体上对应多于6条的规则。当然也不一定非要这种情况下才用到对象模型。我们在上面创建好的访问群体实际上没有对应任何规则,我们可以接着用代码为其添加规则,如此就完美了。 下面的例子用了 “AND”来连接多条规则,当然你也可以改为“OR”了。   注意:如果使用 Audience.AudienceRules.Add 增加一条规则,然后调用 Audience类的 Commit 方法并不能保存这条新规则。 我们必须在调用 Commit方法前设置AudienceRules属性。避免这样做的另一个方法就是创建一个新的规则 ArrayList,然后让 Audience.AudienceRules =新的规则的ArrayList。原因大家估计已经可以猜到了。是的,只有指定这个属性值的方式才能告诉Commit这个访问群体的规则变化了。(迟钝!)

SharePoint 内容类型(Content Type)
SharePoint 内容类型(Content Type)

SharePoint 引入了一个新的特性叫做 Content Type。我们都希望对文档库或列表进行更深一层的控制。比如,你可以在一个文档库中关联多个类型,每个类型关联一个特定的文档模板,工作流或元数据。 这样,我们就可以利用内容类型这个特性将某个类别的文档集中存储在一个文档库中。关联的工作流可以帮助您处理文档的各种状态,自动对文档进行处理,如当审批通过后改变文档的权限,将文档转换为PDF等等。下面以一个自定义列表为例,看看具体的效果。这种应用场景也比较常见,比如你要记录每天与客户沟通的情况。在项目周期中或者对于一个销售人员,这是一个基本工作。你的记录中应该包括一些基本条目,任务,事件,或者任何你认为应该有的东西。使用内容类型的好处这时就显现出来了,所有与客户相关的或项目相关的内容可以组织到一个视图中。我们再也不必在多个列表中跳来跳去了。让我带你一步步地创建一个简单的自定义列表,并且为其关联多个内容类型。创建一个自定义列表Journal进入我们准备要往里写记录的站点。为了方便演示,我这里创建了一个叫Demos/Journal的临时站点。进入站点后,选择“查看全部的站点内容)”,点击“创建”链接 。进入选择要创建的内容类型页面。选择自定义列表,如图所示。 填入列表名“Journal”和描述信息,然后点创建。 默认情况下,新创建好的自定义列表包括一个标题列。我们把它作为所有与该列表关联的内容类型的通用标题列。在我们增加新的内容类型前,我们需要告诉SharePoint该列表要支持多个内容类型。默认一个列表只支持一个内容类型。改变设置需要点击设置下拉菜单,选择列表设置,如图: 进入列表设置修改页面后,可以看到许多自定义列表所需的设置项。在一般设置标签组下面,点击高级设置链接,进入Journal列表的高级设置页。在第一节中包括了是否允许管理内容类型的设置。默认是“否”的,我们选择“是”后保存。现在,我们就可以为Journal列表设置不同的内容类型了。请看演示。 回到修改列表设置页面,你将看到增加了一个新的标签组叫“内容类型”。只有一个叫Item 的内容类型列在下面。这个内容类型就是在我们点新建时,让我们仅输入一个标题的那个内容类型。  

483 次浏览
SharePoint 隐藏自定义列表中的某些栏
SharePoint 隐藏自定义列表中的某些栏

客户提出的很有趣的一个关于Windows SharePoint Services的问题。要求我快速解答并且不能增加任何的代码量。下面是我巧妙的(个人认为)解决方案。 在我们使用由WSS构建的网站时,往往会遇到这样的需求。某些用户有权访问一个特定的站点,并且可以进入其下面的某个自定义列表。我们希望这个用户可以查看所有的栏,但是只能更新列表项里其中的某一部分栏的内容。我们可以如下设置:1、首先进入一个SharePoint自定义列表,并且我们假设您已经添加了一些列表项 2、在我们添加完一个新项后,点击该项的编辑菜单,将进入编辑页面EditForm.aspx 3、在 FrontPage 2003中打开这一页,然后利用文件另存为保存一份副本。可以起名叫EditAdminForm.aspx。这个版本是允许完全访问列表项的,所以一定要保存好。 4、回到编辑页面EditForm.aspx ,重新在FrontPage中打开。 5、选择"Main"Web部件区域中的那个ListFormWebPart,右键,选则“自定义SharePoint列表表单” 6、在每个在 您希望隐藏的栏里,点击对应行中的标签单元格。在FrontPage的导航条上,您可以看到选择HTML标记的地方,点击最近的<TR>标记,整行将被选中。 7、在下拉列表中选择“编辑标记” 8、在出现的快速标记编辑器中将<TR>标记改为<TR style=’”display:none”>后保存。这个操作将把这一行隐藏起来。 9、在每个要隐藏的行上重复上面的步骤。 10、在EditForm.aspx页的某处放置一个隐形对象。这里我用了一个无边框的透明的文本框放到页面左侧。为其指定下面的URL地址:“javascript:location.href=’EditAdminForm.aspx’+location.search” 这段脚本将传递相应列表项的ID给EditAdminForm页面。管理员可以通过培训被告知从哪里找到隐藏的完整栏的访问地址。而一般用户仅仅能看到显示出来的栏。最重要的是我们并没有更改SharePoint默认的保存链接就做到了这一点。进一步发挥,我们使用同样的方法也可以对NewForm.aspx和DispForm.apx做处理,就能实现更多功能了。

336 次浏览
SharePoint 如何更改某用户个人网站的配额设置
SharePoint 如何更改某用户个人网站的配额设置

默认100M的空间很快就被那些个人文档比较多的用户用完了。这时,技术支持人员就会接到很多电话,要求增加分配给该用户的空间。当时我用了自己的一个办法解决了这个问题。客户那边用下来也正常,所以有相同问题的朋友也不妨试一试。步骤如下: 1、 在Sharepoint服务器上,进入管理工具中的“SharePoint管理中心”。 2、 点击组件配置一节中的“管理配额和锁定” 3、 点击“管理配额”下的“管理网站集配额和锁定” 进入“管理网站集配额和锁定”后,在*网站一栏的文本框中,输入如下地址: http://server_name/personal/xxx 其中的“xxx”为要管理的那个个人的名字,不同的帐户名在写法上可能会有所不同。如果不是很清楚怎么写,可以进入那个人的个人网站,然后把鼠标放到导航栏上“文档和列表”或“网站设置”的链接上,看一下状态栏里的地址,在personal后面的一级内容就是了。 4、点击“查看数据”后,下面就会出现网站配额信息一节。点击修改“网站最大存储空间为”,在后面的文本框中输入变大后的值。 5、点击确定。 现在就为那个用户扩大了空间。那个用户可以在个人站点里看到空间的变化。步骤如下: 1、进入个人站点,点击“网站设置”, 2、点击管理一节中的“转到网站管理”。 3、在网站集管理一节中,点击“查看存储空间分配信息”。 4、进入“存储空间分配”页面中。 这里就可以图形化的显示出个人空间的使用情况了。下面的列表还列出了各个库所占的空间大小。

387 次浏览
SharePoint Add或Update类型为User的项
SharePoint Add或Update类型为User的项

SharePoint的任务列表中有一个字段叫做“分配对象”,就是为任务指派给某个用户。该字段的数据类型是User型的。在拼Web Service更新命令的串时,并不能像通常的字段一样直接给一个用户名做为值。 关于如何使用SharePoint提供的WebService进行列表的增删改,可以参考这里。下面是该栏的相关信息: 内部名AssignedTo栏名分配对象类型User

318 次浏览
共计373条记录 上一页 1.. 32 33 34 35 36 37 38 下一页