DataRecordset 对象 (Visio)
在 Microsoft Visio 中对从数据库中查询的数据进行存储、格式设置、刷新和公开操作。
备注
此 Visio 对象或成员仅供 Visio Professional 2013 的授权用户使用。
Microsoft Visio 可以连接到来自各种源的数据,其中包括:
- Excel 工作表
- Access 数据库
- SQL Server 数据库
- SharePoint 列表
- 其他 OLEDB/ODBC 数据源,如 Oracle 数据库
- 符合 ADO 经典 XML 架构的 XML 文件
每个 Visio Document 对象都有一个 DataRecordsets 集合,该集合在与数据源建立连接之前为空。 若要将 Visio 文档连接到数据源,需要向该文档的 DataRecordsets 集合添加 DataRecordset 对象。
若要将 DataRecordset 对象添加到 DataRecordsets 集合,可以使用以下三种方法之一,具体取决于要连接到 (OLEDB/ODBC 或 XML) 的数据源的类型以及要将连接字符串和查询命令字符串传递给 Visio 的方式。 使用:
DataRecordsets.Add 方法,可以连接到 OLEDB 或 ODBC 数据源,并将连接和查询命令字符串信息作为方法参数直接传递给 Visio。
DataRecordsets.AddFromConnectionFile 方法,可以通过向方法传递 Office 数据连接 (ODC) 文件,其中包含要提供给 Visio 的连接和查询命令字符串信息,从而连接到 OLEBD 或 ODBC 数据源。
DataRecordsets.AddFromXML 方法向该方法传递 ADO 经典 XML 字符串,其中包含要包含在数据记录集中的所有数据。
创建数据记录集后,与数据记录集关联的连接字符串和查询命令字符串分别由 DataConnection.ConnectionString 和 CommandString 属性表示。
如果数据记录集与 DataConnection 对象相关联(也就是说,如果使用 Add 或 AddFromConnectionFile 方法将其添加到 DataRecordsets 集合),则可以使用 DataConnection 属性获取关联的 DataConnection 对象。
DataRecordset 对象的默认属性是 ID。 ID 属性值标识 DataRecordsets 集合中的 DataRecordset,并且在任何给定文档的集合中都是唯一的。
使用 Name 属性可将显示名称与数据记录集相关联。
使用 GetDataRowIDs 方法可获取数据记录集中所有行的 ID 数组,其中每一行表示单个数据记录。 以这种方式检索数据行 ID 后,可以使用 GetRowData 方法获取存储在数据行中每列中的所有数据。
使用 DataColumns 属性获取与数据记录集关联的 DataColumn 对象。 DataColumn 对象公开了一些方法和属性,可以用于为链接到数据的形状自定义从数据列到 Visio ShapeSheet 电子表格的“形状数据”内容中的单元格的映射。
为数据记录集设置主关键字列可帮助防止刷新数据时形状与数据之间的链接断开。 可以分别通过使用 GetPrimaryKey 和 SetPrimaryKey 方法来获取和设置主关键字列。
当数据源中的数据更改时,可以刷新已连接的(非 XML)数据记录集中的数据来反映这些更改。 通过设置 RefreshInterval 属性,可以指定 Visio 按指定的时间间隔自动刷新数据;或者,可以通过调用 Refresh 方法以编程方式刷新数据。
在刷新数据源中的数据时,如果这些数据自上次刷新以来发生了更改,则可能会产生冲突。 当单个形状链接到同一数据源中的多个行时,或者当形状链接到数据源中已删除的行时,可能会发生冲突。 可以通过使用 GetAllRefreshConflicts、GetMatchingRowsForRefreshConflict 和 RemoveRefreshConflict 方法来发现和解决因刷新数据而引起的冲突。
备注
保存包含一个或多个数据记录集的 Visio 文档时,记录集中的所有数据都会保存在 Visio 文件中。 对于包含大量数据的记录集,这会导致生成相当大的 Visio 文件,从而对性能造成影响。 因此,应考虑先对大型数据源进行筛选,然后再将其导入到 Visio 中。
- Delete
- GetAllRefreshConflicts
- GetDataRowIDs
- GetMatchingRowsForRefreshConflict
- GetPrimaryKey
- GetRowData
- Refresh
- RefreshUsingXML
- RemoveRefreshConflict
- SetPrimaryKey
- Application
- CommandString
- DataAsXML
- DataColumns
- DataConnection
- Document
- EventList
- ID
- LinkReplaceBehavior
- Name
- ObjectType
- RefreshInterval
- RefreshSettings
- Stat
- TimeRefreshed
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。