项目背景:
某大型外企各分部通过互联网专线统一域环境,Exchange邮件系统,Sharepoint平台及依赖环境已经购买并搭建起来,Dell Quick app for Sharepoint已购卖并成功部署webpart。
内部每个部门至少有一位员工接受过简单的Sharepoint,Infopart及Quick app for Sharepoint(以前叫Quest Webpart)使用的培训。
一程序猿协助实施。
Sharepoint开发工具:Sharepoint designer
项目需求:
1、知识共享及文档管理(sharepoint基本功能)
2、无纸化办公,各种申请表单(财务系统除外)用电子工单代替(infopart基本功能)
3、每个部门有自己的Portal门户按需用于信息发布,工单申请受理和部门内部讨论等功能(Sharepoint子站,Sharepint Team Discussion等功能)
4、简单易用,经培训后各部门无IT背景的人都能上手使用,尽量不用编程写代码实现
5、只供内部员工使用统一用域环境认证。
计划实施过程:
1,按照公司组织架构建立主站及各部门子站、分配好各子站相应的用户权限(每部门按排一到两个网站管理员有管理网站的所有权限)
2,为各部门逐一设计网站
1)网站概要设计(主页,各子页或建立子站若有必要)
2)建立文档库(Document Library)及划分其目录结构用于文档管理(后台数据,文档管理)
3)建立列表(List)用于信息发布及管理(后台数据)
4)设计infopart电子表单,并发布到Sharepoint表单库,如果表单简单可以直接用infopart设计List实现;需IT协助为infopart创建各种规则。(实现电子表单)
5)在各页面中大量使用Quick app for sharepoint中常用的qListview,qSelecter和qChartView用于信息展示、数据汇总按图形展示和搜索等(前端数据展示)
6)为各表单或者列表创建工作流(1.IT协作用Sharepoint Design创建全局工作流、列表工作流。2.为表单创建审批用工作流)
7)各网页若功能复杂需IT写简单的css及javascript代码实现(前端展示)。
3、逐一测试各部门网站或各办公系统。
比如:
会议室申请系统(查询会议室空缺情况->填infopath表单,提交->自动邮件提醒成功与否),办公用品库存管理系统和请假申请管理系统等。
实际实施过程
1、人家业务部门一直说忙,找来程序猿开个会就把事交给了程序猿这边搞,结果程序猿只好按公司组织架构创建好各个Sharepoint网站,把用户权限分配好。
2、各业务部门网站实施时更逗呵呵,人家都是PPT高手,一个个拿着漂亮的PPT来找IT程序猿开会,这个说我要做成这样的效果,那个说他要做成这样的效果,各种流行的网站特效,程序猿婉转回答道:“这些都是需要写代码实现的,你们自己不好维护啊。”呵呵,顺从的也有,不顺从的一大遍,坚持要做成那效果,而且要求要做成方便维护的。此时,程序猿变成了主角,知道协助实施只是卖个关子,此乃坑也哈哈。
一通一通的,用PS裁图,Div+CSS制作页面,用了很多个现成jQuery插件,自己也写了不少jQuery插件来实现特效,花上了好几周;设计几十个Infopath表单,写Infopath规则,这么一干下来又熬了几周;用Sharepoint designer写各种工作流又是好几周时间;陪着每个部门成员开需求会议又是几番折疼。
3、好不容易搞完下来进行逐个测试,各部门更是无数的突发奇想,要改成如何如何呵呵,这么数个来回又是几个星期;改bugs找虫又是几周时间。
目前,好不容易,都在使用了,很多部门会自己维护页面和使用其他功能了,看着问题貌似越来越少了,终于可以松了口气。
微软的东西是比较傻瓜式的,说实在如果不太考虑性能,还真可以不用代码就可以搭出系统来,难怪那么多外企都喜欢花钱用他们的东西。
本项目中infopart表单用到的公式(函数):
字符串:concat,translate,substring,contains
日期:today,now
数学:count,sum
用户:userName
用户服务:GetUserProfileByName
本项目中Sharepoint Designer设计工作流时用到的条件与操作:
If Else
Set Field to Value
Send Emails
Pause for Time
Wait Until Field Change
并行运行块
Stop Workflow
Sharepoint列表Calculated字段用到公式
=TEXT(申请日期,"YYYY/MM")
Quick App For Sharepoint配置参考帮助说明