如何在InfoPath2010中转换主数据源
使用过InfoPath2007的人应该都知道,我们在设计或编辑一个InfoPath表单时,除了可以在设计界面的同时构建主数据源外,还可以事先将编辑好的主数据源XSD文件导入到InfoPath中,然后根据数据源的结构来设计表单界面。下面是这两种方法的一些简单介绍:
1. 在设计表单界面的同时构建主数据源
打开InfoPath,在New菜单中选择Blank Form(界面和菜单的位置与InfoPath2007稍有不同)。InfoPath会打开一个空白的设计界面,你可以在里面任意设计界面布局和添加控件(InfoPath2010提供了一些现有的界面模板可以直接套用),在添加控件的同时InfoPath会同时为你生成对应的主数据源(在界面右边的Fields面板中)。这时的主数据源结构是可以手动编辑的,你可以修改主数据源中节点的名称和属性等,以及节点的位置。
2. 创建XSD文件并导入到InfoPath中
InfoPath的一个最主要的用途就是在线收集以固定格式定义的XML数据文件。我们将定义好的InfoPath模板发布到网络上的一个公共位置,用户下载并使用这个模板填写数据并最终生成对应格式的XML文件。既然InfoPath模板规定了最终要生成的XML文件的结构,那么我们在设计InfoPath模板之前便可以确定好XML的结构。XML的结构定义是由XSD文件来规定的,编写XSD文件的一个最简单的方法就是事先在Visual Studio中手动将XML结构编写好,然后在XML菜单中选择Create Schema,Visual Studio会自动为你生成对应的XSD文件。当然,你可能还需要知道一些有关XSD的知识以防在必要的时候手动修改XSD文件,例如让XSD的结构在InfoPath中支持Rich TextBox控件,以及支持InfoPath的循环节点等。有关如何定义XSD文件,可以参考W3school的Schema教程。
然后我们将定义好的XSD文件导入到InfoPath中。在InfoPath2007中,我们通过Tools菜单的Convert Main Data Source…菜单导入XSD文件,如下图:
但是在InfoPath2010中,没有Tools菜单,那又该如何执行该操作呢?InfoPath2010中,在Data菜单下可以找到Refresh Fields,该菜单的功能既是InfoPath2007中的Convert Main Data Source菜单的功能。
注意,使用XSD文件作为数据源导入到InfoPath之后,不能再在InfoPath中修改该主数据源的结构,如要修改主数据源的结构,必须修改原始的XSD文件然后再重新导入。
在XSD中将节点定义为支持InfoPath的Rich TextBox控件:
<xs:complexType mixed="true">
<xs:sequence>
<xs:any namespace="http://www.w3.org/1999/xhtml" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</ xs:element>
在XSD中将节点定义为支持InfoPath的循环Section:
<xs:element name="segment" maxOccurs="unbounded" minOccurs="0">
maxOccues=unbounded表示循环没有上限(即可以在InfoPath中无限添加该节点) ;minOccurs=0允许没有该节点,如果值为1则表示该节点最少出现次数为1。
转载于:https://www.cnblogs.com/jaxu/archive/2011/10/25/2223479.html
如何在InfoPath2010中转换主数据源相关推荐
- html类型转换函数,如何在JavaScript中转换数据类型?
在JavaScript中,数据类型用于对一种特定类型的数据进行分类,确定可以分配给类型的值以及可以对其执行的操作.虽然由于类型强制,JavaScript会自动转换许多值,但为了达到预期的结果,通常最好 ...
- 如何在Java中转换Excel文件到图像?
Excel电子表格被广泛用于存储,组织和分析数据.但是,不能将Excel工作簿或工作表直接嵌入到Web或桌面应用程序中.合适的选项之一是将工作表转换为图像或HTML格式.在本文中,将学习如何使用Jav ...
- mysql_result 对应mysqli哪个_php – 如何在mysqli中转换mysql_result?
这个代码以前是在 mysql中,现在因为它已被弃用,我决定在mysqli中转换我的代码,但是我在我的页面中有这个问题有分页,在它使用mysql之前没有错误,但现在我得到了这一行出错: Warning: ...
- mysql中转换成字符串_如何在R中转换字符串的大小写?
mysql中转换成字符串 Hello, folks. In this tutorial we are going to convert the case of the string in R. The ...
- 如何在Mac中转换图片格式
对于转换图片的格式这个话题,很多网友留言有没有简单快速的解决方法,可以试试这个方法,但是前提是需要安装小机器人Permute 哦. Permute 3 如何转换图片格式 1.把软件安装到Mac电脑,接 ...
- linux 图片转视频教程,如何在Linux中转换视频
描述 步骤1:打开终端 端子位于子类别之一的应用程序菜单中. (取决于发行版和桌面环境).在Ubuntu中,它位于"应用程序"->"附件"->&qu ...
- java中bjt和utc转化_如何在Java中转换UTC和本地时区
我对Java中的时区感到好奇.我想从设备获取UTC时间(以毫秒为单位)并发送到服务器.当服务器向用户显示时间时,服务器会将其转换为本地时区.我系统中的时区是澳大利亚/悉尼(UTC + 11:00),测 ...
- 价钱转换python_如何在python中转换货币?
我正在做一个虚拟助手项目.我想让它告诉我其他货币的美元汇率. 我用beauthoulsoup编写了以下代码,它从给定的网站获取数据,对其进行解析并在命令行中打印结果供我阅读.但这只是美元对巴基斯坦卢比 ...
- 关于SpringBoot中的多数据源集成
引言 其实对于分库分表这块的场景,目前市场上有很多成熟的开源中间件,eg:MyCAT,Cobar,sharding-JDBC等. 本文主要是介绍基于springboot的多数据源切换,轻量级的一种集成 ...
- 如何在Excel中使用SQL语言?
如何在 Excel 中获取外部数据源? 使用 SQL 查询数据,首先需要数据源.如果我们用 Excel 来呈现这些数据的话,就需要先从外部导入数据源.这里介绍两种直接导入的方式: 通过 OLE DB ...
最新文章
- ubantu14下vim的配置...
- unittest单元测试框架—加载测试用例的3种方法以及测试报告存储管理
- “六级”题公布,觉得WebAPI简单的,勿进!
- cordova监听事件中调用其他方法_Laravel模型事件的实现原理详解
- 每日一题(12)—— .h头文件中ifndef/define/endif的作用
- 如何破解几乎所有的求职面试
- PHP printf()函数格式化使用详解
- Linux下ping命令、traceroute命令、tracert命令的使用
- java 8 sdk官方下载_Java SDK下载方法
- oracle中索引的类型,oracle索引类型normal
- Prolog环境搭建与简单使用
- matlab实现色彩迁移,图像的色彩风格迁移
- vue-cli脚手架卡在 ‘98%’ after emitting CopyPlugin 报错,无法运行
- sipjs 保存mp4文件_微信视频号视频怎么下载,视频号视频怎么保存到手机
- 删除Linux虚拟机中的/dev/sdb磁盘步骤
- 云服务器和虚拟主机有哪些区别
- backtrader 自定义indicator_BackTrader回测工具(一)
- python bind绑定失败_Python tkinter之Bind(绑定事件)的使用示例
- 认识 DELL EMC VPLEX VS6物理配置
- c语言生成随机数猜数字大小,产生一个随机数,进行猜数字小游戏
热门文章
- 指标权重确定方法之熵权法
- 如何实现台达触摸屏与台达PLC之间的远距离无线数据交换?
- js 实现文件上传 php,JS+php后台实现文件上传功能详解
- 系统集成项目管理工程师(软考中级)—— 第七章 知识产权 笔记分享
- Altium Designer软件绘图
- ISO27001LA国际信息安全管理主任审核员(IRCA)认证
- 局域网服务器共享文件夹设置,server2012文件夹、局域网共享设置权限以及server2012r2文件共享权限设置方法...
- VBA—EXCEL操作集合—05
- 汽车车载诊断基础知识
- 小米4c android5.1,小米4c原版官方刷机包安卓5.1.1rom线刷包