斗鱼刀蛆:使用 Access、InfoPath 或结合使用这两个程序收集和存储数据 - 帮助和使用方...

来源:百度文库 编辑:中财网 时间:2024/05/04 03:02:46
使用 Access、InfoPath 或结合使用这两个程序收集和存储数据适用于: Microsoft Office Access 2003  适用于 Microsoft Office Access 2003 Microsoft Office InfoPath 2003

Access 2003 提供了一组功能强大的工具,用于快速建立完整的数据库管理系统。由于 Access 支持基于窗体的丰富用户界面,并可以访问多种数据源(包括 Microsoft SQL Server™ 2000)中的数据并对其进行操作,所以它是适合各种业务自动化和报表需求的理想解决方案。

不过,Access 并不是唯一支持基于窗体的客户端开发的 Microsoft Office System 产品。Microsoft Office InfoPath™ 2003 是一种新推出的 Microsoft Office System 程序,工作组和组织可以使用该程序轻松地创建和使用丰富的动态窗体。与 Access 不同,InfoPath 主要侧重于收集数据,而不是存储或报告数据。使用 InfoPath 创建的窗体可以与 Access 或 SQL Server 数据库方便地进行集成,或通过 Web 服务与支持 XML 的任何其他后端系统进行集成。另外,您还可以使用 InfoPath 创建基于窗体的解决方案,将窗体分别保存到服务器或 Microsoft Windows® SharePoint™ Services 窗体库中。

如果您的解决方案需要使用数据库,InfoPath 并不取代数据库 — 而是提供灵活的前端系统,可以直接(对于 Access 和 SQL Server)或通过 Web 服务与数据库连接。如果您的解决方案不需要使用数据库 — 例如,如果您希望建立一个解决方案,允许用户通过电子邮件互相发送窗体,或者使用 SharePoint 窗体库保存和合并窗体,InfoPath 也是一种很好的候选方案。在这种情况下,窗体中的数据将被保存为单独的 XML 文件。

通过使用 Access 或 InfoPath,您可以:

  • 创建丰富的图形窗体以添加、编辑、删除或查看数据。
  • 直接连接到外部数据源。
  • 在窗体中使用一系列图形控件。
  • 打印窗体或窗体设计。
  • 利用数据验证规则确保窗体中输入数据的正确性。
  • 以 XML 格式导出或保存窗体数据。

使用这两种产品,您都可以创建丰富的动态客户端体验。因为 InfoPath 支持创建功能丰富的基于窗体的界面,并且由于它支持从 SQL Server 以及 Access 的本机数据库格式访问数据,所以您可能希望了解哪一种产品最能满足您的业务自动化需求。

在本文中,我们将提供一些常规的指导性说明,帮助您做出正确的选择。

Access 的主要不同点:数据存储和报告

根据 Access 和 InfoPath 之间的一些主要不同点来衡量您的需求不失为一种很好的方法。第一点(也是最重要的一点),Access 是用于创建基于关系数据库管理的解决方案的平台,而 InfoPath 则是使用 XML 建立基于窗体的数据输入和编辑解决方案。

这意味着 Access 主要侧重于数据的存储、检索和报告。Access 将数据存储在基于主题的表中;数据本身由数据库引擎管理,该引擎可以检索信息并实施用来确保数据完整性的规则。默认情况下,Access 将使用 Microsoft Jet 数据库引擎。

大多数基于窗体的应用程序在输入数据后都需要具备存储数据的功能。在 Access 中,输入到窗体中的数据存储在数据库表中。在创建窗体前,您应仔细考虑数据库的各项功能并相应地进行设计。当使用 InfoPath 作为数据库的前端系统时,这一点对于 InfoPath 来说也是至关重要的。对于不需要使用数据库的解决方案,InfoPath 将自动为窗体中的控件生成相应的数据源。例如,如果您在窗体的重复节(用户通过重复节可以在填写窗体的同时添加其他控件组)中添加日期选取器和文本框控件,数据源将由重复组中的两个字段组成 — 一个字段的数据类型是“日期”,另一个字段的数据类型是“字符串”。

报表生成是需要考虑的另外一个方面。许多应用程序都需要使用汇总和打印销售数据或按地区或地域对数据进行分组的功能。实际上,大多数 Access 应用程序都需要利用该功能生成打印报表。通过 Access 中的报表设计功能,您可以轻松地创建具有图形并能执行计算的高级多级报表。例如,您可以使用它来组织并打印产品销售数据,以用于正式的演示活动。由于 InfoPath 不具备报表功能,所以您需要使用其他程序(如 Access 或 Microsoft Office Excel 2003)生成报表。

如果正在进行复杂的商业分析,您可能需要创建自定义查询,从多个表中收集信息,或可能需要查询数据库以创建特定供应商的所有产品的列表。InfoPath 允许您通过在窗体中提供示例值来进行查询,但是该程序实际上并不是专门针对复杂的自定义查询而设计的。相反,Access 包含丰富的图形查询设计界面,您可以在表之间拖放连接,或使用 SQL 命令快速建立自定义查询。

InfoPath 的主要不同点:数据收集、窗体设计和 XML 支持

InfoPath 主要用于建立和填写窗体以收集数据。InfoPath 不能取代解决方案中的数据库;更确切地说,InfoPath 只是便于与现有数据库直接(对于 Access 和 SQL Server)或间接(通过 Web 服务)地集成数据收集功能。另外,您还可以使用 InfoPath 建立解决方案,将窗体保存到 SharePoint 窗体库或文件共享中。如果您的数据需要使用数据库解决方案(即需要表之间具有一对多关系的基于记录的数据),InfoPath 可以用作此类解决方案的前端系统。

对于不需要使用数据库的解决方案,InfoPath 将基于窗体设计自动为您推断设计方案并生成 XML 数据结构。如果您认为这意味着 InfoPath 可能更适用于相对简单的窗体自动化任务,事实上的确如此。如果您需要部门级的应用程序,其中的数据可能被许多应用程序访问,则最好选择单独使用 Access 或与 InfoPath 一起使用 Access。

InfoPath 基于行业标准的可扩展标记语言 (XML),这使得它非常适合与需要以 XML 格式共享数据的应用程序进行集成。在您设计窗体时,InfoPath 将创建一个窗体模板 (.xsn) 文件,这是一种扩展名为 .xsn 的 Cabinet (.cab) 文件。.xsn 文件包含标准的 XML 文件,如 XML 架构 (XSD) 文件和 XSL 转换 (XSLT) 文件。当用户在 InfoPath 中填写窗体时,该窗体中的数据将以 XML 格式保存或提交。这便于组织在其他地方(可能是基于 XML 的现有过程,如开支报告过程)重复使用这些数据。

另外,您还可以基于组织已经使用的 XML 文件设计窗体。例如,如果您的组织的采购订单使用特定的 XML 架构 (.xsd) 文件,您可以基于该 .xsd 文件设计 InfoPath 采购订单窗体。

Access 的优点

使用 Access,您可以:

  • 允许多种类型的应用程序访问您的数据库,并可以自动实施随同数据库存储的规则。
  • 创建多用户部门级或工作组级的应用程序。
  • 使用一个应用程序从多个数据源中收集数据,以用于报告或打印。例如,您可能希望联接几个表中的信息,以用作报表的数据来源。
  • 在日后添加其他表。
  • 创建复杂的特别查询。例如,如果您经常需要联接数据库内存储的多个表中的信息,以进行特别分析,请选用 Access。
  • 创建可以使用多个节和多种分组级别的打印业务报表。例如,如果您需要按分支机构、地区和区域列出并汇总订单,请选用 Access。
  • 使用以 Visual Basic for Applications (VBA) 编程语言编写的现有代码库。
  • 部署数据库的运行时版本,该版本不需要用户安装 Access。
  • 创建简单的 Web 应用程序,以在 Intranet 上显示或编辑数据库中的数据。使用 Access 可以创建数据访问页。数据访问页是一种直接连接到数据库中的数据的网页。您可以使用这些网页通过 Microsoft Internet Explorer 查看、编辑、更新、删除、筛选数据库中的实时数据并对其进行分组和排序。

InfoPath 的优点

使用 InfoPath,您可以:

  • 允许用户在脱机模式(未连接网络时)下填写窗体,以后再提交数据。
  • 创建基于窗体的解决方案,用于可以收集数据并将每个窗体存储为单独的 XML 文件。
  • 从多个数据源收集数据,在同一窗体中进行查看和编辑。
  • 将窗体直接保存到 Windows SharePoint Services 窗体库中。
  • 创建用户可以互相通过电子邮件发送的窗体。
  • 创建连接到 Access 或 SQL Server 数据库的窗体,而无需进行编程。
  • 创建连接到 Web 服务的窗体,而无需进行编程。
  • 实现现有纸质表单的自动化操作,而无需创建数据库或进行编程。
  • 基于现有 XML 架构创建窗体。
  • 在 XML 窗体中使用结构化数据,以简化业务过程和工作流程,或者与 Microsoft Biztalk® Server 2004 进行集成。
  • 创建具有一对多关系的窗体,以实现现有手动过程的自动化操作,或添加到不使用 Access 的现有应用程序。

组合使用 InfoPath 和 Access

在解决方案中可以结合 InfoPath 和 Access 的优点,将 InfoPath 用作 Access 数据库的基于窗体的前端系统。

组合使用 InfoPath 和 Access 可以提供一种在关系数据库中存储数据并允许用户脱机填写窗体的解决方案,使得连接各种数据源、利用 Web 服务以及支持不同的工作流程方案(如通过电子邮件多次提交和发送窗体等)更加方便。

您可以将 InfoPath 窗体连接到 Access 数据库,用作主要数据源(当希望编辑数据库中的记录以及向数据库中添加记录时)或用作辅助数据源(例如,当需要填写列表框中的选项时)。在这两种情况中,创建连接都十分简单:使用 InfoPath 中的向导,您可以指定您的窗体要使用的数据库中的表和查询。InfoPath 随后会基于该数据库(包括表之间的关系、所有数据验证规则和列的数据类型)自动创建窗体。

您的用户随后可以使用 InfoPath 窗体查询数据库中的记录、修改这些记录,并添加新记录。因为该窗体既可以将数据提交给 Access 数据库,本身又可以另存为独立的 XML 文件,所以用户可以在脱机时填写窗体,以后联机时再提交数据。

有关组合使用 InfoPath 和 Access 的详细信息,请参阅以下文章:

使用指南:将 InfoPath 表单连接到 Access 数据库

设计连接到数据库的表单

案例分析:National Clinical Research(英文)

案例分析:Commercial and Industrial Design Co.(英文)