如何通过InfoPath中的日期选取器控件获取当前选中的月份的名称

原文:
http://www.bizsupportonline.net/infopath2007/how-to-extract-month-name-from-date-picker-infopath.htm
 
by S.Y.M. Wong-A-Ton
 
这篇文章描述了如何使用辅助数据源、规则、筛选等InfoPath相关功能从基于日期选 取器控件上显示日期的辅助数据源来获取选取的相应月份名称。
 
问题:
首先在 InfoPath表单中,有一个日期选取器控件。你想要通过日期选取器控件,
根据你选取的日期的不同,它所在的英文月份名称相应的显示在文本框控件中。
 
解决方案:
通过一个包含有月份名称XML文件,创建一个辅助数据连接,并且用规则及InfoPath的两个方法number()和substring()来获取在日期选取器中选中的日期对应的月份名称。
 
探讨:
你可以按照以下步骤完成上述功能:
1   创建一个XML文件并命名为monthnames.xml,具体内容如下所示:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2   在InfoPath中新建一个空表单模板
3   在 工具菜单中单击 数据连接
4   在 数据连接对话框中,单击 添加,然后按照说明,在 数据连接向导对话框中,选择 新建连接下的 仅接收数据选项,单击 下一步。如下图
5   在 希望从何处接受数据?下选择 XML文档,点击 下一步
6   在接下来的对话框中,选择 浏览按钮,找到相应的XML文件
7   最后点击 完成
8   在InfoPath的表单模板,添加一个 日期选取器控件和一个 文本框控件
9   双击 日期选取器,打开 属性对话框
10 在 日期选取器对话框中,选择 规则按钮
11 在 规则对话框中,选择 添加按钮
12 在接下来的对话框中,选择 添加操作按钮
13 在 操作对话框中, 操作下拉列表中选择 设置域值
14 点击 下面文本框后面的按钮
15 在 选择域或组对话框中,选择表示 文本框控件的相应字段,单击 确定
16 在 操作对话框,点击 下面文本框后面的按钮
17 在 插入公式对话框中,点击 插入域或组
18 在 选择域或组对话框中,从数据源下拉列表中,选择 monthnames,并展开所有节点,选择 name节点,点击 筛选数据按钮
19 在 筛选数据对话框,点击 添加
20 在 指定筛选条件对话框  ,在第一个下拉列表中选 id,在第二个下拉列表中选择
is equal to,在第三个下拉列表中选择 使用公式
21 在 插入公式对话框中,输入number(substring(
22 在 插入公式对话框中,点击 插入域或组
23 在 选择域或组对话框中,在 数据源下拉列表中选择 ,然后选择其下面的表示
日期选取器控件的相应字段名,点击 确定
24 在 插入公式对话框中,输入, 6, 2))
整个公式内容如下所示:
number(substring(field3, 6, 2))
field3表示日期选取器控件的相应字段名
依次点击确定即可
效果图如下:
如上所示,当你从日期选取器中选择一个日期后,会相应在文本框中显示出来与之对应的月份名称。
 
 
 
 
 
 
 
 

你可能感兴趣的:(xml,数据源,控件,休闲,infopath)