MS Access 组开发
Posted
技术标签:
【中文标题】MS Access 组开发【英文标题】:MS Access group development 【发布时间】:2010-04-25 19:14:49 【问题描述】:我们正计划重新设计一个相当庞大的 MS Access 应用程序。有没有办法在同一个应用程序上同时工作,或者是否可以合并同一个文件的两个单独的实例(不是数据,而是表单和代码)。现在 Access 包含数据,但在未来的版本中 mysql 将托管数据,Access 将只是前端(通过 ODBC)
【问题讨论】:
这些可能感兴趣:***.com/questions/777591/…***.com/questions/187506/… 【参考方案1】:是的,您可以让多个开发人员同时开发应用程序。
在我们的软件行业,这通常是通过使用所谓的源代码控制系统来完成的。或者通常是我们所说的源代码存放处。
源代码控制系统只允许多个开发人员处理同一组文档,或者在本例中是同一时间的同一应用程序。
它的工作原理是一个开发人员可以“检查”几个报告、几个模块、表格等。现在他拥有那个时期的那些模块、代码、表格。没有其他人可以签出和修改那些“签出”的部分。事实上,在大型软件公司中,您可能有数百名开发人员在同一个项目上工作,并且通常有一个不成文的行为准则,并说如果您将某些内容重新检入到主构建中,并且它会导致错误,那么您不会回家,直到你修好它!换句话说,不要将代码签入会导致它崩溃的应用程序!在软件行业中,所谓的“破坏构建”在某些软件领域是不可以的。你不想成为那样的人!
因此请记住,MS 访问支持源代码控制。在看到这些附加选项出现之前,您必须安装开发人员扩展程序才能访问(当然,还假设您安装了 Visual Studio 源代码控制系统)。
这是 access 2003 的屏幕截图,请注意表单上一些对象旁边的小复选框: alt text http://www.members.shaw.ca/AlbertKallal/vss/Image2.gif
这是另一个镜头: alt text http://www.members.shaw.ca/AlbertKallal/vss/Image1.gif
再次注意,带有复选标记的是我拥有的表格。每个对象旁边的小“锁”意味着如果我尝试修改该对象,它会被锁定,并且您实际上会收到一个提示,询问您是否要“签出”并获取该特定对象的所有权(在这种情况下是一个表单)。
如前所述,源代码控制系统适用于所有对象。这是查询生成器选项卡的屏幕截图:
alt text http://www.members.shaw.ca/AlbertKallal/vss/Image4.gif
再次注意上面的小附加复选标记或锁是如何添加到访问界面的。
在软件行业,使用 SCC 系统是标准的做法,这与期望数据库开发人员学习一些数据库规范化技术没什么不同。
源代码文件取自源代码系统并用于为每个用户构建本地 .exe 的事实,或者在这种情况下,本地 mdb 文件构建是没有实际意义的,因为与此相比,这只是一个物理视图的逻辑观点。
由于 access 可以将任何对象(表单、报告、代码)等导出为单个文本对象,这就解释了为什么 Access 作为单个文件可以支持使用源代码控制的多个开发人员,因为逻辑视图是单独的对象并且它没有实际意义,你有一个本地构建。只要access + VSS可以单独查看每个对象,那么整个过程与c ++从源代码系统创建SINGLE本地.exe或单个mdb并没有什么不同。
【讨论】:
我熟悉源代码系统(cvs、subversion、git),但我对 MS 特定的开发和源代码管理工具了解不多。看来我应该检查一下。【参考方案2】:Microsoft 建议对 Access 开发人员进行源代码控制。我不记得确切的参考资料,但我想你可以很容易地用谷歌搜索它。在表单、查询和/或表比较方面,我不知道这个源代码控制有多“智能”。我们在 VBA 中开发了自己的源代码控制系统,主要基于将 Acces 对象导出/导入到文本文件的能力(未记录的 Application 对象的 SaveAstext/LoadFromText 方法)。我们还使用文件比较工具(“文件比较工具”)来完善我们的源代码控制工具。
我们有一个“对象”表,其中列出了客户端界面中的所有可用对象。从这个列表中,我们可以导出\比较:
表:我们有自己的工具来比较客户端表的表结构和表数据,例如保存到我们不同数据库的连接字符串的表等。 查询:“客户端”查询保存在“查询”表中。查看上一个 宏:我们只有一个 autoexec 宏 模块:我们通过文本比较工具将模块作为文本文件进行比较 表单:可拆分为 2 个文件,一个“控件”文本文件和一个“表单模块”文本文件,以供进一步比较。【讨论】:
【参考方案3】:2(或更多)开发人员在一个“前端”上工作很可能会在某个时候流泪。就我个人而言,我从未参与过需要适当源代码控制的项目,但有人告诉我,可视源代码安全适用于访问,因此您可能想试一试。
【讨论】:
Access 已经支持源代码控制大约 15 年了。更糟糕的建议是让两个用户在同一个前端进行开发是不可能的。这里的解决方案是使用 Visual source safe。所以就像两个用户不能同时打开同一个 c++ 源文件并对其进行编辑一样,对于 c++ 开发人员或 ms-access 开发人员来说,这里的解决方案是使用源代码控制。具有访问权限的 VSS 允许每个开发人员签入/签出他们正在处理的应用程序的各个部分。用于访问的 VSS 加载项允许基于源代码库进行本地构建。 @Albert 我不建议在同一个前端有两个用户,我实际上是在尝试将 OP 关闭并将它们指向 VSS以上是关于MS Access 组开发的主要内容,如果未能解决你的问题,请参考以下文章
MS Access 表单开发:按下选项按钮时隐藏对象,无需对需要隐藏的每个对象进行编码
在 ms Access 中从每个组中选择至少 3 行时出错 - 仅选择了至少 2 行