我有一个SharePoint网站集,其中有几个子网站,每个子网站都有自己的文档库 . 现在我想将文件扩展名添加到所有这些库中的文档名称中 . 我该怎么做?
我已经看过提示你修改onet.xml文件的提示,但它们看起来不像我的那样,而且我不确定onet.xml文件会发生什么 - 它是否会改变现有的库?其他提示告诉我使用SharePoint设计器,这意味着我必须为每个库中的每个视图执行此操作,不是吗?所以我更喜欢从代码中做到这一点,我感觉更舒服,我可以在哪里自动化流程 .
因此,我想要的是用“名称(用于表单)”替换“名称(使用编辑菜单链接到文档)”,但仍保留链接和编辑菜单 . 我发现我需要使用FileLeafRef字段,但我不知道如何!
3 回答
如果您只需要为一个库执行此操作,那么sharepoint设计师就是您的选择 . 您可以将视图转换为XSLT视图并使用FileLeaFref字段 .
如果你想为所有的库做,那就没有简单的方法 . 你可以替换Name列,但如果你想显示链接和编辑菜单,你需要使用一些Jquery hack,我相信到目前为止还没有人做过 .
您可以按照以下方式进行操作 .
打开SharePoint Designer
选择WebPartPages:ListViewWebPart控件
右键单击,转换为XSLT数据视图
在数据视图中插入新列
我在灰色 Headers 行中输入了"Extension"
在 Headers 下方的第一行中,右键单击并选择“插入公式” - >“行”,“行”下的“展开树”,然后选择“文件类型”,单击“确定” .
参考链接:http://social.technet.microsoft.com/Forums/en-US/sharepointgeneral/thread/8222d979-f5ff-4665-a168-7245e4325b2f/
要么
修改ONET.XML中的显示模式 - 在
Name="Created_x0020_Date">
之前添加Name="File_x0020_Type"/>
. 在对ONET.XML进行更改后,您必须执行IISRESET . (在更改ONET.XML之前,请先备份) .由于我们公司禁止使用Sharepoint Designer更改WebPartPages,因此我必须找到解决此问题的另一种解决方法,这对我来说非常有用 . (但如果你想同时将它应用于许多列表,可能不是最实用的) . 它不替换name-column,而是添加仅包含文件扩展名的附加列 .
创建一个列,例如名为FileExt
在Sharepoint Designer中,继续工作流程 - > Listworkflows
选择操作 - >列表操作 - >在当前项中设置字段
"Set FileExt to Current Element: File Type"(我希望它是德国版的's called 1670923 , I')
在工作流程设置中,选择在添加新元素时自动启动工作流程
如果库已包含文件,我也会激活以在更改元素时启动工作流 . 然后我添加一个列,用数据表视图中的任何文本填充它,以便每个项目都被更改,并且工作流程将被激活 . 然后我删除该列并将工作流程设置回仅在添加新元素时才开始 .
实际上我希望能够用计算字段做同样的事情,但到目前为止还没有成功 .