OFC321 InfoPath在企业解决方案中应用的最佳实践

Slides:



Advertisements
Similar presentations
Web Role 的每台虚机运行有 IIS ,用于处理 Web 请求 Worker Role 用于运行后台进程 Cloud Service 是什么? 支持多层架构的应用容器 由多个 Windows 虚拟机集群构成 集群有两种类型: Web 和 Worker Cloud Service 做什么 进行应用的自动化部署.
Advertisements

泛舆情管理平台 ——助力媒体业务创新 新模式 新格局 创新盈利增长点 2/26/2017 1:59 AM 屈伟: 创始人,总裁
中国银行业前置端操作系统移植研究.
借助公有云实现游戏的弹性运营 Shaun Fang (方兴) Azure开发技术顾问
吴峻 软件设计工程师组长 Exchange Server 微软有限公司
王书贵 资深分析师 CCW Research 计世资讯
深市协助执法及证券查询业务介绍 客户服务部 China Securities Depository
Database Architecture, not only DBA
抱怨處理技巧 高雄捷運公司 公共事務處 胡宜萍 安全 ‧ 便捷 ‧舒適 ‧ 可靠
请点击以下链接下载WinHEC的演讲材料
1. 设定愿景,确定业务场景 Microsoft Corporation
金融信息安全人才培养的思考与实践 中央财经大学 朱建明 2012年11月24日.
广东省广州市花都区教育局教研室 汤少冰 优化评估方式, 促进中学英语的教与学 广东省广州市花都区教育局教研室 汤少冰
張書源 Microsoft MVP MCT 趨勢科技 技術經理 網酷科技 資深顧問 集英信誠 資深顧問
控制流程實作 胡百敬 精誠公司恆逸資訊 二○一七年三月十九日
Office 2013 全新功能介紹 台灣微軟 Office 大使 楊承恩 Marcus Microsoft Office
——打造科技金融升级版 中国建设银行顺德分行 2015年6月.
2017年9月14日12时3分 DEV349 Visual C 无缝集成,无限潜力 李建忠 微软特约讲师 上海祝成科技
四川省集体林权流转平台 中国西部林权交易网
云实践引导产业升级 沈寓实 博士 教授 MBA 中国云体系产业创新战略联盟秘书长 微软云计算中国区总监 WinHEC 2015
W371 如何使网络设备更好的和Windows Vista工作
DEV323 .NET架构:全球化思想! 定制各种文化及国际数据
Windows Vista 操作系统最新安全特性
Mobile & Embedded DevCon 2005 朱敏博士 微软有限公司
OFC 302 InfoPath2007新特性及解决方案.
Windows Mobile 轻松接轨GPS
从UNIX到Windows的 电信软件移植实践
Microsoft Office SharePoint Server 2007 事件追蹤與專案管理
SOLUTIONACCELERATORS Windows Vista Hardware Assessment 1
朝雲端專業DBA邁進: 深入剖析 Windows Azure SQL Database 完整資料庫管理、雲端報表建立、建置分散式雲端資料庫
利用最新Hyper-V Replica 功能達成Hyper-V 災難備援機制
Windows Server 2008 NAP整合802.1x網路安全控管
BizTalk Server 2004.
MSG 330 Exchange服务器性能调节技巧
服務啟用、導入流程、 郵件移轉步驟簡介 Microsoft Office 12/2/2018
OFC351 利用Office System开发复杂的商务解决方案 架构、模式、场景
MBL 327 Windows Mobile开发中的异构系统集成
BizTalk Server 2004.
微软新一代云计算 面向企业的 Office 365 客户培训大纲
使徒行傳 21:17-23章「保羅的見證(一)」 引言 預言保羅為主的名受許多的苦難的實現
超完美整合 SQL Server 2008 MOSS 2007 及 Excel 2007 打造好用又省錢的 企業商業智慧解決方案
凌宁 系统工程师 亚洲区嵌入式系统事业群 微软(中国)有限公司
2/24/2019 5:40 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Microsoft SQL Server 2008 報表服務_設計
利用 ASP.NET MVC 提升您的 Web 應用程式


SQL Server Mobile 2005 程序开发(三)
橫跨電腦、手機與軟體的全方位端點管控解決方案
呂政周 精誠恆逸教育訓練處 資深講師 Windows PowerShell 呂政周 精誠恆逸教育訓練處 資深講師
4/30/2019 7:40 AM 約翰福音 15:9;17:20-23 加拉太書 6:1-2 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
模式与实践:Windows Mobile 5.0应用程序架构
DEV 343 VS2005超快速开发方案/EEP2006控件包.
5/4/2019 4:42 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
耿志刚 应用整合产品技术专家 专业解决方案部 微软中国
使徒行傳 24-26章 [ 保羅的見證(二)] 徒9:15 “  主 對 亞 拿 尼 亞 說 、 你 只 管 去 . 他 是 我 所 揀 選 的 器 皿 、 要 在 外 邦 人 和 君 王 並 以 色 列 人 面 前 、 宣 揚 我 的 名 。 ”]
TechEd /6/ :36 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
5/5/2019 7:06 PM 两跨框架梁截面配筋图的绘制 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may.
SQL Server Mobile 2005 程序开发(二)
MBL302 设计Windows Mobile应用程序的用户界面
百万亿次超级计算机诞生记 姓名 Xiangyu Ye 职务 微软中国技术中心资深HPC顾问 公司 微软中国
5/15/2019 姓名: 公司名称: 云赛空间BP模板 Now let’s take a look at who we are, what we’re doing and why we’re doing it in China... This is an image of a technology.
DEV 343 VS2005超快速开发方案/EEP2006控件包.
蔺华 ISV开发合作经理 平台及开发技术部 微软(中国)有限公司
MGT 213 System Management Server的昨天,今天和明天
MSG 361 如何从Exchange 5.5迁移 胡义 咨询顾问 上海星移软件有限公司 2019年7月31日8时9分
進階應用層防火牆實務 謝長明 技術總監 長成資訊顧問股份有限公司.
強化 Windows 平台 唐任威 資深講師.
高擴充高穩定高安全 企業級資料管理平台 Report Builder概論 錢曉明 資策會 資深講師 台灣微軟 資深講師.
Windows Workflow Foundation CON 230
Presentation transcript:

OFC321 InfoPath在企业解决方案中应用的最佳实践 2019年4月11日5时13分 OFC321 InfoPath在企业解决方案中应用的最佳实践 李婷 技术方案专员 专业解决方案部 微软有限公司 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

今日议程 初识InfoPath Microsoft Office InfoPath 数据流 InfoPath的数据连接 2019年4月11日5时13分 今日议程 初识InfoPath Microsoft Office InfoPath 数据流 数据模型 “契约” 更新/绑定周期 Performance InfoPath的数据连接 数据连接模式 Data Adapter的体系结构 主数据和辅助数据 连接到数据库 InfoPath在企业级解决方案的应用 解决方案实施的场景 应用InfoPath的专业解决方案 DEMO © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

2019年4月11日5时13分 初识InfoPath © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

InfoPath是什么? InfoPath的应用场景 创建丰富的电子表单的工具 医药卫生行业——病人登记、病理管理、处方查询… … 2019年4月11日5时13分 InfoPath是什么? 创建丰富的电子表单的工具 InfoPath的应用场景 医药卫生行业——病人登记、病理管理、处方查询… … 保险银行业——保险单据… … 生产行业——订单审批、项目申报、报销单据… … 政府教育行业——个人信息、每月报表… … 与表单相关的场景… … © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

表单定义 InfoPath 表单模版 (XSN) 数据 (.XML) 视图 Schema (XSLT) (XSD) 解决方案定义 (XSF) 2019年4月11日5时13分 表单定义 InfoPath 表单模版 (XSN) 数据 (.XML) 解决方案定义 (XSF) 视图 (XSLT) Schema (XSD) 默认数据 (XML) 商务逻辑 (JS, DLL) URL or URN © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

2019年4月11日5时13分 InfoPath 数据流 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

InfoPath “契约” XML数据总是正确的 XSLT 定义了从XML 到视图的映射 商务逻辑操作是针对DOM数据的 2019年4月11日5时13分 InfoPath “契约” XML数据总是正确的 通常用XML DOM存储当前数据 XML DOM 通常总是 “有效的” XSLT 定义了从XML 到视图的映射 视图仅仅是数据的显示形式 视图是多变的——所有的状态信息都存储在 DOM中 商务逻辑操作是针对DOM数据的 没有视图属性(除非做了这样的选择) 视图/控制状态是基于DOM的状态的 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Step 1: 向DOM中添加数据(演示) XML 可以来源于: 来自旧版本的模版么? 结果加载到DOM中 一个文件 一个数据连接 2019年4月11日5时13分 Step 1: 向DOM中添加数据(演示) XML 可以来源于: 一个文件 一个数据连接 template.xml 来自旧版本的模版么? upgrade.xsl (自动产生) OnVersionUpgrade 结果加载到DOM中 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Step 2: OnLoad 阶段 数据连接队列运行 声明的算法求值 执行 OnValidate 代码 声明的规则运行 2019年4月11日5时13分 Step 2: OnLoad 阶段 数据连接队列运行 声明的算法求值 执行 OnValidate 代码 声明的规则运行 OnLoad 代码运行 DOM 事件启动 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Step 3: 视图准备完毕 浏览应用到XML DOM的XSLT 输出为HTML HTML 投射到视图表面 视图展现外观 2019年4月11日5时13分 Step 3: 视图准备完毕 浏览应用到XML DOM的XSLT 输出为HTML HTML 投射到视图表面 视图展现外观 视图初始化并绑定控件 OnSwitchView 启动 此时视图可以同用户进行交换了 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

更新/绑定周期 更新 XSL HTML 视图 XML DOM XSF 数据绑定 2019年4月11日5时13分 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Step 4: 用户交互 XML DOM 用户做了一个编辑工作 这个改变反馈到DOM相应的部分 事件的顺序 阶段 1: 结构上进行整合 2019年4月11日5时13分 Step 4: 用户交互 用户做了一个编辑工作 这个改变反馈到DOM相应的部分 事件的顺序 阶段 1: 结构上进行整合 OnBeforeChange Schema 结构验证 阶段 2: 验证 OnValidate 声明的验证 Schema 数据类型验证 阶段 3: 侧面影响 OnAfterChange 声明的算法 XML DOM Node Node Node Source Node © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Step 5: 浏览更新 原本实施的步骤为: 实际上实施的工作: 优化 (遵循契约) 将XSLT 重新应用到 XML DOM 2019年4月11日5时13分 Step 5: 浏览更新 原本实施的步骤为: 将XSLT 重新应用到 XML DOM 输出新的HTML 旧的HTML被新的HTML取代 视图进行显示、重新初始化,等等 实际上实施的工作: 优化 (遵循契约) 简化绑定:不需要视图更新 某范围内的重新应用 全部重新应用 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Performance Tip #1: 开始时间 2019年4月11日5时13分 Performance Tip #1: 开始时间 症状 可能有的诊断 应对策略 打开一个表单需要花费很长时间 有很多数据源队列等待加载 CLR 加载时间 XML 可能太大了 有过多的处理程序 加载的时候仅运行那些必要的队列 过滤查询的 XML 数据 关掉事件 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Performance Tip #2: 冻结的表单(演示) 2019年4月11日5时13分 Performance Tip #2: 冻结的表单(演示) 症状 可能有的诊断 应对策略 在打开或切换视图的时候,表单冻结了一段时间 视图中有过多的可编辑的控件 HTML 过大 (几兆字节) 使用过滤器或大纲/细节控件,减少 HTML 的大小 减少下拉菜单的数量 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Performance Tip #3: 慢速编辑(演示) 2019年4月11日5时13分 Performance Tip #3: 慢速编辑(演示) 症状 可能有的诊断 应对策略 在用户做了某个改动后,表单变慢了 (e.g. 比如在区域中录入,光标却还在区域之外) 编辑带来了太多的侧面影响 禁用视图更新 了解事件触发——使用其他的DOM 了解操作(“删除”,“插入”) © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Performance Tip #4: 添加行(演示) 2019年4月11日5时13分 Performance Tip #4: 添加行(演示) 症状 可能的诊断 应对策略 这里的每个下拉列表都包含上千个选项,让我添加一行看看,wow,真够慢的,怎么会这样? 请记住,视图中的所有状态都是由HTML决定的,由XSLT进行输出。在本例中,每行包括1000个选项。这就意味着当我添加一行的时候,同时我也创建了一个巨大的HTML流,视图需要重新解释这个HTML流。 This can happen any time a change causes a big HTML diff. Drop-downs with lots of options are the worst offenders, simply because you don’t see the options so the scale problem isn’t as obvious. This scenario isn’t very far-fetched either – consider pulling a list of user names from Active Directory. It may be fine when the number of users is small, but grow exponentially worse when the org increases in size! We had one customer who had 40,000 items in a drop-down. Whether or not that’s slow, it’s a horrible user experience - can you imagine scrolling down half-way, then mis-clicking the mouse? Yikes! The solution here again is to understand the contract and “cheat” it – let get those thousands of options out of the HTML, so it’s not InfoPath’s job to manage them. Christopher Walker had a great idea which he blogged – to use a modal dialog with the options in it. I click this button and exactly the same data is passed to it as would show in the drop-down. I pick the value, it’s returned from the dialog and stuffed into the view. Since all of those options aren’t in the view, it’s much faster. In this case, I’m using an HTML dialog implemented in script in and DHTML, which I show using the ShowModalDialog() call in InfoPath’s OM. From managed code, with a trusted form, you can pop a Form instead. The next step here is to add filtering and grouping to the list – you can make the dialog as complex as you want, so you can make the experience far richer than I’m showing you. Suddenly, picking from 40,000 items isn’t as crazy an idea at all! 新添加一行需要好几秒钟的时间 HTML diff 很大 下拉菜单选项使HTML变得很臃肿 在有大量的选项的时候可以使用任务面板或对话模型的方式 http://blogs.msdn.com/cjwalker/archive/2005/05/19/420254.aspx © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Performance Tip #5: 编辑 症状 可能有的诊断 应对策略 每次编辑都需要时间来”安置” HTML 的显示过于复杂 2019年4月11日5时13分 Performance Tip #5: 编辑 症状 可能有的诊断 应对策略 每次编辑都需要时间来”安置” HTML 的显示过于复杂 XSF中存在不必要的xmlToEdits 复杂的绑定依存 减少嵌套 (表格、节) 降低动态宽度 (%) 检查 XSF, 去除不需要的控件 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Performance Tip #6: 二进制数据(演示) 2019年4月11日5时13分 Performance Tip #6: 二进制数据(演示) 症状 可能的诊断 应对策略 一旦加入了文件、图片或数字签名,表单的打开/编辑/提交就会变得很慢 嵌入的文件和/或图形数据增加了XML文件的大小。 抗抵赖数据的签名(PNG图片)增加了XML文件的大小。 “分裂” 出文件或图片 (保存为共享) 用链接进行替换 创建较小的“签名视图 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

其他的关于性能方面的提示 避免自定义 XSL 缩短视图的长度和降低它的复杂度 2019年4月11日5时13分 其他的关于性能方面的提示 避免自定义 XSL 设想现在 (及将来)可以在InfoPath中设计XSLT的优化渠道 缩短视图的长度和降低它的复杂度 简单视图(< 50k XSLT)一般会更快 使用多重视图 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

2019年4月11日5时13分 InfoPath数据连接 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

数据连接模式 基于XML的数据模型 Data Adapters 表单中的商务逻辑可以为自定义数据连接所用 2019年4月11日5时13分 数据连接模式 基于XML的数据模型 外部数据以XML文件的形式被引入进来 InfoPath的输出是一个XML文件 保存文件 提交文件或文件片断 Data Adapters 内置的对象,便于与外部数据连接 可以通过声明的规则或目标模块使用 表单中的商务逻辑可以为自定义数据连接所用 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Data Adapter 的体系结构 InfoPath Runtime Object Model Access Main DOM HTTP 2019年4月11日5时13分 Data Adapter 的体系结构 Query Data Adapters ADO XML File WSS List Web Service HTTP POST E-Mail DAV (WSS) ADO Web Service Submit Data Adapters HwS Submit Adapters External Data Source Sec. DOM External Data Sources Query Adapters View Object Model Access Main DOM InfoPath Runtime © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

主数据和辅助数据 “Main DOM” 是InfoPath文档 辅助数据源是一些帮助性的数据 模式: 可以使用辅助数据源进行: 2019年4月11日5时13分 主数据和辅助数据 “Main DOM” 是InfoPath文档 辅助数据源是一些帮助性的数据 如下拉菜单和列表框中的选项 在会话的结尾不会予以保留 控件可以与辅助数据绑定(new in SP1) 模式: 可以使用辅助数据源进行: 数据校验 分段查询: 使用商务逻辑把需要的数据复制到main DOM 中 与自定义的控件进行交互 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

连接到数据库 选择 数据库和 Web service dataset adapters 可以自动的跟踪及提交改动的数据。 2019年4月11日5时13分 连接到数据库 选择 ADO adapter Web Services adapter 面向SQLXML 的XML file adapter 在OnLoad和OnSubmitRequest 事件处理中应用自定义的商务逻辑 数据库和 Web service dataset adapters 可以自动的跟踪及提交改动的数据。 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

InfoPath在企业级解决方案的应用

解决方案实施的场景 某公司需要一个处理人员费用报销的流程 员工填写报销单并提交 经理得到提示,进行批复:批准/拒绝 如果被拒绝,员工修改报销单,提交 经理批准后,员工可以以word的方式打开该报销单 经理可以在Excel中查看批准的单据

应用InfoPath的专业解决方案 Windows SharePoint Services Server Windows Server 雇员 2019年4月11日5时13分 应用InfoPath的专业解决方案 Windows SharePoint Services Server Windows Server 雇员 应用服务器 /财务数据库 经理 报销单 BizTalk Server © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

2019年4月11日5时13分 某公司人员费用报销系统 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

资源 Office Online InfoPath MSDN InfoPath Developers Center 2019年4月11日5时13分 资源 Office Online InfoPath http://office.microsoft.com/infopath MSDN InfoPath Developers Center http://msdn.microsoft.com/Office/InfoPath InfoPath Newsgroup microsoft.public.infopath InfoPath Team Blog http://blogs.msdn.com/infopath © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Office Online InfoPath MSDN InfoPath Developers Center http://office.microsoft.com/infopath MSDN InfoPath Developers Center http://msdn.microsoft.com/Office/InfoPath InfoPath Newsgroup microsoft.public.infopath InfoPath Team Blog http://blogs.msdn.com/infopath