zoukankan      html  css  js  c++  java
  • SharePoint中使用Visio Service展示业务数据

    SharePoint中可以通过Visio Service可以在浏览器中查看Visio图,功能部署到系统中,一切安好。

    而现实总是很折磨人,使用该功能后,相关使用者随后提出,Visio图能否与我的业务数据进行绑定,实现数据变动,图形也随之变化?

    记得这个功能是有的,在2010时代就有,一直没尝试使用过。

    测试案例

    以IT运维中服务器监控为例,建一“服务器列表”的自定义列表

    字段清单:标题、状态(下拉选项:正常、警告、关机)、IP地址

    录入一部分数据,如下图所示:

    image

    打开Visio,创建新文档,类型选择“基本网络图”

    image

    在Visio中将各个服务器图形画好,然后点击顶部菜单中“数据”选项卡,点击“将数据链接到形状”,如下图的示:

    image

    在数据源中,选择SharePoint 列表

    image

    在网站地址框中输入列表所在的站点地址,然后点击下一步,选择要绑定的列表

    image

    点击“完成”,可以看到数据源已经添加到visio页面中

    image

    数据添加到页面中后,需要对数据和图形做关联关系,点击“自动链接”

    image

    自动链接可以按照指定的关系进行链接,也可以手动链接

    image

    绑定成功后,就可以看到绑定的数据信息显示在图形上:

    image

    下面我们需要将图形右侧的文本信息显示改变成直接的图形标记,右键图形,选择“数据”---“编辑数据图形”

    image

    删除默认的标题和ID信息

    image

    然后点击“新建项目”,将“状态”字段显示出来,在“显示为”下拉框中选择所需的样式

    显示样式可选择如下几种,本例选择“图标集”

    image

    图标集也有不同的预置风格供选择使用,选择完成后,在图标规则中配置相应图标显示的条件

    image

    配置完成后,Visio中就可以根据数据显示出相应服务器的状态图标了:

    image

    Visio中的设计基本完成,下面需要把该文档发布到SharePoint文档库中,以便于在WEB上展示,

    image

    更改下数据,将FTP服务器设置为“正常”

    image

    然后刷新web界面

    image

    如上图所示,结果有点失望,图形居然没发生变化,经错误排查,其原因在于visio service展示数据图形有缓存时间,默认5分钟时间

    解决方法

    进入管理中心,点击“管理服务应用程序”,选中Visio Graphics Service,点击“管理”按钮

    image

    点击“全局设置”

    image

    在设置界面中,将“最小缓存保留时间”改为0,然后保存设置

    image

    重新刷新页面,就可以看到图形已经显示成最初的预期效果:

    image

    附加问题

    可能会有人问,这个案例意义何在?数据还是需要手工更改,没有实际意义,其实不是这样,本案例中的数据的更新,其实你可以做一个定时程序,尝试用WMI抓取服务器状态,或者只是简单的Ping测试均可,根据你的实际需求,将定时提取的数据更新到相应的列表中即可。

    本例仅提供一个指导,抛砖引玉,这种方案可以有很多发挥的地方,至于数据源也不只是SharePoint列表,也可以sql server数据库等,你可以直接调用你的业务数据进行绑定展示,比如各部门费用额度展示(报销系统中建一视图即可)、员工座位分布图及闲忙状态(闲忙状态可以考勤系统决定,或由员工在门户中自行手动设置,或者由Lync状态决定),设备状态、车辆空闲情况等。

    存在的缺陷

    • 不适合很多图形的展示,如员工座位分布图,如果你把1000个员工画在一个visio页面中,那么这个展示将意义不大,而且也有可能无法展示,如果存在这种情况,建议分多个visio文件,可以按部门建目录,或按办公室;
    • 对于经常变动的数据,维护工作量较大,以员工分布图为例,员工异动都需要更改Visio图形,重新上传;
  • 相关阅读:
    git(常用命令)思维导图...
    有关gitlab的神秘操作.....version&&domain设置...
    Gitlab不小心关闭了sign-in,无法登录web的坑。。。
    聊聊CMSIS-RTOS是什么东东
    c#接口interface学习
    没有内置小鹤双拼的rime输入法就是差劲
    stm32中的型号对比——为什么很少用STM32F2,F3?
    stm32软件编程的框架及注意事项——rtos篇
    modbus-poll和modbus-slave工具的学习使用——modbus协议功能码3的解析(及欧姆龙温控器调试笔记)
    keil中error: #70: incomplete type is not allowed—解决方法
  • 原文地址:https://www.cnblogs.com/janet/p/3181948.html
Copyright © 2011-2022 走看看