2010-02-15 18 views
1

在工作中,我们使用/开发了很多MS Access应用程序。如何在整个企业中集中功能?

只要业务有明显不同的问题需要解决,就会启动一个新的MS Access项目。因此,尽管这些项目正在解决相当不同的问题,但他们实际上可能在每个项目的某些部分使用非常类似的代码。只有很多方法可以从同一个数据库中提取客户,对吗?或许,许多不同的项目需要处理我们已经从中返回邮件的客户名单。所以,每次我们开始一个新项目时,我们都编写了代码来完成与之前完成的相同的工作。

显然,某些“集中”这种功能的方法将非常有用。假设数据库模式略有改变,我们不想去更新每一个MS Access应用程序。什么是这样做的好方法?也许很多人会说“首先,取消所有的MS Access应用程序!”当然,替换我们现有的所有MS Access应用程序并不是那么容易,因此MS Access可以以某种方式使用集中式功能,这样会很好。如果不是的话,我仍然会喜欢那些不适用于MS Access的答案。

此外,解决方案将不得不在.NET中,因为我们是一个.NET商店。

编辑

我们使用的是.NET 3.5。

对.NET 4.0的引用在此阶段不会有用。

+0

您的.Net版本可能会有用...以及是否有任何对.Net 4.0的引用是值得的。 :) – IAbstract

+1

我认为你在这里有两个轨道,数据存储和应用程序。这听起来像你应该有一个单一的数据存储,即使所有的记录不拥有/所有用户都可以访问。然后,无论您使用什么构建应用程序,您的应用程序的体系结构都应该更容易标准化。 –

回答

1

从技术和组织的角度来看,这类事情从来都不是简单的。

如果我必须解决这个问题,我首先要看看我们是否可以确信单个数据库或更集成的集中数据库集合能够满足组织的功能需求。

有一次我很高兴看到我是否可以计划构建该数据库并迁移应用程序,以便彻底检查前端的数据,或修改它们以使用其他地方的数据(我相信这可以通过MS访问)。

另外,它可能只是最好找到一些大企业的应用程序,做你想要的一切,并迁移到那。

我会回应斯蒂芬所说的,你需要了解功能,以便优先考虑和适应它。这对于确定你是否最终得到更好的东西或者只是一大堆混乱的东西很重要,相比之下,许多单独的混乱的球。

这也将成为组织文化的变化,因为你要取电了人民的手中,你就需要让他们参与进来,‘卖’的概念,它们否则他们会不使用集中式系统,并恢复到构建他们自己的Access数据库。 :(

1

第一步是创建一个在哪个应用程序中使用哪些功能的映射。集中化意味着您需要开发一些方法来跟踪对应用程序(依赖项)的更改。

您的情况现在很简单:一切都是独立的,所以更改为一个不会破坏另一个应用程序。这是很多工作,因为需要对所有相关应用程序进行相同的更改。

对于更集中的系统,您需要进行一些组织更改:某人需要对每个功能区域的更改负责。开发人员不能再进行他们喜欢的任何更改。

0

止血。开始思考利用现有功能的心态,未来的应用程序。

看看已经挂起的请求,以增加更多的功能的现有应用程序,你可能会发现现有的代码使用。

开始创造一个更加自动化的方式在你的应用程序更新的代码。它可以是困难的,但我已经看到了这个网站recomendations各种工具来帮忙的VBA代码。

启动政策,即随着Access应用程序的成熟并获得更多采用,他们将被迁移到集中式应用程序(.NET)。这样,您就不会浪费开发人员从未使用过的主要应用程序的功能(理论上,您应该能够更快地开发Access)。由于各种原因,我看到整个应用没有看到白天的亮点。那时候,你很庆幸他们是用Access构建的。

0

+1为“访问原型”的想法。 Access是一个快速开发一个想法的好工具,它能很好地反应范围蔓延和“嘿,你也可以做到这一点?”我们都面临的问题。

一旦功能成熟并锁定,那么你可以迁移到一个新的应用和效果访问应用程序将成为您的规格/基准。使它更容易些

一种方法是有一个半开放的SQL服务器,以便添加新表等不繁琐的完整纠结。如果应用程序成为“升迁”的候选人,那么将数据库从半开放式SQL服务器移动到其自己的服务器或主要受支持的服务器是一件简单的事情。

0

我曾经在这样的情况下工作过。 MSAccess可以是一种快速灵活的解决方案,每个人都可以轻松满足他们特定的需求,而无需等待开发团队。为了妥善解决这个问题并集中所有的开发将会很昂贵(时间,金钱和人员)。像这样的集中式结构也需要大量的刚性,这可能会导致人们回到使用他们自己的小Access项目获得他们需要的方式和时间。

我会建议一个代码库。您甚至可以在Access中制作它并将其放在共享驱动器上。 :)现在,当有人需要一个特定的功能时,他们可以在创建自己之前看看它是否存在。如果您的数据来自sql或oracle存储库,那么有几个存储过程或视图是人们通常使用的数据集的汇编。这些可以从访问数据库访问,而不需要花费时间来“重新创建轮子”。

祝你好运。

相关问题