Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何在整个企业中集中功能?_.net_Ms Access - Fatal编程技术网

.net 如何在整个企业中集中功能?

.net 如何在整个企业中集中功能?,.net,ms-access,.net,Ms Access,在工作中,我们使用/开发了很多MS Access应用程序 每当企业有一个明显不同的问题需要解决时,就会启动一个新的MS Access项目 因此,尽管这些项目解决的问题完全不同,但它们实际上可能在每个项目的某些部分中使用非常相似的代码。从同一个数据库中提取客户的方法只有这么多,对吗?或者,许多不同的项目需要处理我们从中返回邮件的客户列表。因此,每次我们开始一个新项目时,我们都会编写代码来完成与以前几乎相同的事情 显然,某种“集中”此功能的方法将非常有用。假设数据库模式略有更改,我们不想去更新每个M

在工作中,我们使用/开发了很多MS Access应用程序

每当企业有一个明显不同的问题需要解决时,就会启动一个新的MS Access项目

因此,尽管这些项目解决的问题完全不同,但它们实际上可能在每个项目的某些部分中使用非常相似的代码。从同一个数据库中提取客户的方法只有这么多,对吗?或者,许多不同的项目需要处理我们从中返回邮件的客户列表。因此,每次我们开始一个新项目时,我们都会编写代码来完成与以前几乎相同的事情

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

此外,解决方案必须在.NET中,因为我们是.NET商店

编辑

我们正在使用.NET3.5


在这个阶段,对.NET 4.0的引用将没有用处。

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

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


有了一个更集中的系统,您将需要进行一些组织更改:需要有人负责每个功能领域的更改。开发人员再也不能随心所欲地进行任何更改。

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

如果我必须解决这个问题,我会首先看看我们是否能够确信,一个单一的数据库,或者一个更完整的中央数据库集合,能够满足组织的功能需求

一旦对此感到满意,我就会考虑是否可以计划构建该数据库,并将应用程序迁移到使用它的环境中,或者彻底检修前端,或者修改它们以使用其他地方的数据(我相信这在MS Access中是可能的)

或者,最好是找到一些能满足您所有需求的大型企业应用程序,然后迁移到这些应用程序上

我同意Stephan所说的,你需要理解功能,这样你才能优先考虑并适应它。这对于决定你最终是得到更好的东西,还是仅仅是一个大的混乱球,而不是一个单独的混乱球是很重要的


这对您的组织来说也是一种文化变革,因为您将从人民手中夺取权力,您需要让他们参与进来,并向他们“推销”概念,否则他们将不会使用集中化系统,并将恢复建立自己的Access数据库(

停止流血。以使用现有功能的心态开始思考下一个应用程序

查看一个现有应用程序,该应用程序有挂起的添加更多功能的请求。您可能会找到要使用的现有代码

开始创建一种更自动化的方法来更新应用程序中的代码。这可能很困难,但是我在这个网站上看到了一些重新推荐,以获得各种工具来帮助使用vba代码


启动一项策略,随着Access应用程序的成熟和获得更多的采用,它们将迁移到集中式应用程序(.NET)。这样,您就不会在主应用程序中从未使用过的功能上浪费开发时间(理论上,您应该能够更快地在Access中开发)。我看到由于各种原因,整个应用程序都看不到曙光。在这一点上,你应该感谢它们内置于Access中。

+1因为“Access中的原型”理念。Access是快速开发理念的一个很好的工具,对范围蔓延和我们都面临的“嘿,你能让它做到这一点吗?”问题反应良好

一旦功能成熟并锁定,您就可以迁移到新的应用程序,实际上access应用程序将成为您的规范/基准


一种简单的方法是使用半开放式SQL server,这样添加新表等就不会完全是繁文缛节了然后,只需将数据库从半开放式SQL server移动到其自己的服务器或主要支持的服务器上即可。

我以前曾在类似的情况下工作过。MSAccess是一种快速灵活的解决方案,每个人都可以轻松满足其特定的小需求,而无需等待开发团队。要正确地解决这个问题并集中所有的开发将是昂贵的(在时间、金钱和人员上)。像这样的集中化结构也将需要大量的刚性,这可能会导致人们重新使用自己的小访问项目,以在需要时以何种方式获得所需

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


祝你好运。

你的.Net版本可能会有用……以及是否值得参考.Net 4.0。:)我想这里有两条轨道,数据存储