2

我刚刚开始了我离开大学后的第一份新工作,作为其中的一部分,我的第一个任务是将一个完全 Access 2003 的数据库转换为一个 Access 前端、SQL 后端。

Access 数据库由一系列用于添加或查看员工数据的前端表单组成,其中包含指向员工照片的超链接以及位于共享驱动器上的简历。这些在 Access DB 中保存为超链接。

我已经将 Access DB 中的数据转换为 SQL 并将其存储在数据库中供我测试,现在作为数据转换的一部分,照片和 CV 位置已从超链接转换为 nvarchar。我已经使用 SSMA 完成了这项工作。

我现在的问题是我需要在前端显示这些文本链接并作为超链接工作,隐藏在“照片”和“简历”这两个词后面,但我不确定如何去做,就像过去一样我只使用过 SQL 而不是 Access。

任何帮助或建议将不胜感激,如果我在任何领域都不清楚,请随时提出问题,我会尽力为您解决任何问题。

4

3 回答 3

1

例如,您可以按以下方式进行:

  • 在您的详细信息部分中插入命令按钮或文本控件。
  • 将其标题或标签设置为“图片”
  • 添加“onclick”事件
  • 在 onClick 过程中,查看基础记录集中包含文件路径的字段
  • 使用此值启动 followHyperlink 方法
  • 例如,您可以为“图片”设置一个命令按钮控件或一个文本控件,为“cv”设置另一个控件等

这只是您拥有的可能性之一。另一种是有一个“员工”主表单,一个“员工文档”子表单。然后,您可以列出与某个人相关的所有文档,而对可用文档的数量没有任何限制(我们在这里讨论的是人员表和人员文档表之间的一对多关系),但原理是相同的:通过单击或执行在staffDocument 行上执行一些操作,您从底层记录集中获取文件名并将其发送到Application.FollowHyperLink 方法。这可以通过记录行上的命令按钮,甚至通过主菜单栏上的commandBarControl 按钮来完成,或在快捷菜单上。命令栏的主要优点是您可以添加额外的功能而无需增加表单上的标签或控件的数量。

例如,commandBars 可以很容易地添加一些额外的 commandBarButtons,它还允许您 (2) 将文件邮寄给某人(使用一些 Outlook 自动化代码)或 (3) 将文件复制到您的计算机上。

使用 commandBars,我们应用程序上的典型“文档”菜单将如下所示:

替代文字 http://www.imagechicken.com/uploads/1256033845035758200.gif

(对不起法语版本,但是......)最后三个 commandBarControls 允许查看/复制/发送链接文件。前两个允许从扫描仪或现有位置上传文件。

于 2009-10-20T09:16:30.927 回答
1

首先,您需要将数据存储与作为超链接处理的问题分开。Access中的超链接数据类型实际上是一个备忘录字段,其中嵌入了特定格式的超链接,正是因为Access/Jet/ACE可以处理的最大文本字段是255个字符,所以你需要一个备忘录字段来处理即使是合理的URL . 我不知道您通过 SSMA 导入操作最终得到什么格式。我更喜欢纯旧文本,因为您不需要超链接字段即可使用 FollowHyperlink 方法打开目标文件。

我建议您首先检查“超链接”的帮助文件。我认为您应该从“关于超链接”开始,尤其是关于超链接地址的部分和超链接地址示例的部分。然后,您应该查看 FollowHyperlink 方法的帮助。这应该给你足够的信息来弄清楚如何处理它们。

但我假设您的后端有一个不复杂的存储,即纯文本,或者 Access 可以轻松解析为纯文本的内容。

于 2009-10-21T00:54:17.030 回答
1

谢谢大家,我已经能够解决这个问题。

每个人的回应都有助于解决问题,尽管最后我不得不重新创建表单,因为它的创建方式存在问题。

我只是重新创建了表单,添加了显示数据的文本框并启用了超链接属性,之后它们工作正常。

于 2009-10-21T12:40:12.170 回答