我有一个悖论表的单个条目输出,它被导入到 Access 中。现在我已经创建了一个报表,并完成了报表中的数据绑定到来自 Paradox 的数据集。在 Paradox 中完成工作后,单条目输出会发生变化...如何打开访问权限并自动更新报告中的值,而无需手动重新导入表?
目的是当访问被打开时,报告会在打印前立即出现以供检查。
使用链接表而不是导入数据(假设 paradox 提供程序可用,这似乎很可能)。
直接链接到 Paradox 表应该可以。执行您所要求的自动导入的方法是在 autoexec 宏或报告的 OnLoad 事件中运行 DoCmd.TransferDatabase。您可能还想从删除查询开始也重置表。
通过菜单上的 GetData 将表链接到 Paradox 文件。您从 db 文件所在的路由目录中选择文件并选择。维护链接并将日期关系绑定到数据集。当您使用 Paradox 数据库进行更新时,Access 中的表也会随之更新。您不能同时运行数据库并访问,否则喷气发动机将无法工作。
从报告的设计视图中,转到属性表和事件选项卡。找到 On Load 事件并单击省略号按钮。如果出现“选择生成器”对话框,请选择“代码生成器”。这将使您进入 Report_Load 事件中的 VBA 编辑器。编辑看起来像这样:
私有子 Report_Load()
DoCmd.TransferDatabase acImport, "Paradox 7.x", "c:\yourdata\yourfile.tbl", acTable, "SourceTable", "YourAccessTable"
结束子
我不确定 Paradox 版本的细节、文件命名约定等(我只是简单地涉足 Paradox,不记得它的细节)。观看智能感知或将光标放在 TransferData 上并按 F1 以获取 TransferDatabase 方法的帮助以供参考。
在 TrasferDatabase 语句之前,您可能需要运行以下内容:
CurrentDb.Execute “从表名中删除”
这将在来自 Paradox 端的负载之前炸毁 Access 端的目标表。