在很多实际的业务场景中,需要让SharePoint的列表或表单库的标题唯一并且还具有可读性,唯一的话最好的方法就是使用该列表或表单库的ID,至于可读性就可以使用一些比较可读的字符然后再连上ID就可以了,在这里主要讲一下如何使用ID做标题,以下以列表为例,表单库其实也一样。

首先建立一个名为“UseIDAsTitle”的列表,不为其建立其它栏,只留默认的栏,下面就要分析一下,大家都知道,不管是列表还是表单库的“ID”都是要在保存之后才生成的,那么保存了之后我们再如何把“ID”赋给已经保存的项呢?这里有两种做法,第一种,就是我们可以把当前已经保存了的项目做一下修改,然后让其标题等于“ID”;还有一种做法,就是我们可以利用工作流来修改。

OK,找到了解决方案,下面就来一步一步的实现吧,先采用第一种做法,第一步我将列表的窗体修改为InfoPath的表单模式,点击Ribbon上的“自定义表单”:

ios 修改hybrid标题 id设置标题_表单

然后在表单上给其增加一个“提交”按钮,如下:

ios 修改hybrid标题 id设置标题_提交数据_02

然后给该按钮增加一个规则,运行如下4个操作:

1、“提交数据”,数据连接选择“主数据连接”;

2、“设置域值”,设置“标题”=“ID”;

3、“提交数据”,数据连接选择“主数据连接”;

4、“关闭表单”。

ios 修改hybrid标题 id设置标题_表单_03

然后我们需要去掉其默认的功能按钮,选择“文件”—“高级表单选项”—“Web浏览器”—去掉“在功能区或工具栏显示 InfoPath 命令”前的勾,然后发布回去。

下面点击列表的“添加新项目”,就会看到如下的界面:

ios 修改hybrid标题 id设置标题_表单_04

OK,随便写一个标题,然后提交试试:

ios 修改hybrid标题 id设置标题_数据连接_05

标题自动变为了“ID”。

下面说说工作流的做法,同样是这个列表,我们先把它恢复原样,打开SPD,给这个列表新建一个名为“ABC”的工作流,启动选项选择“创建项目时自动启动工作流”:

ios 修改hybrid标题 id设置标题_表单_06

然后给其添加一个操作“更新列表项”,列表选择“当前项目”,点击“添加”,设置此域选择“标题”,设置值点击最后的筛选,在弹出框中选择数据源为“当前项目”,源中的域选择“ID”,然后“确定”—“确定”—“确定”。

ios 修改hybrid标题 id设置标题_ios 修改hybrid标题_07

最后发布工作流,新建一条记录,填写标题为“AAAAAA”,保存,然后就会发现标题被更改为“ID”了。