1、资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。微软 Dynamics AX 技术概览 1微软 ERP 系统源代码的分层技术架构 Dynamics AX 向客户开放源代码并为客户提供强大的开发环境和语言。Dynamics AX是一个完全面向对象的体系架构和开发环境,业务逻辑存储在名为”类”的较小的模块化对象中。用户界面存储在表单、报表和菜单中。能够自由添加、修改或置换任意 Dynamics AX 对象。对象的源代码是以多层代码的形式提供的。标准的 Dynamics AX 代码进入系统(SYS)层。微软在 DIS层(包括解决方案,分销商,本地)对语言、货币、规则等进行本地化。我们的
2、竞争对手的方法将只提供其系统或DIS代码,直接对该代码进行修改。这个方法存在的问题是:在升级过程中保留定制的唯一方法是在成百上千的代码行中一行行地重新修改定制,而且一次只能重新申请一行。Dynamics AX 则不存在这样的问题;我们提供了能够控制的四个代码层,分别为业务、合作伙伴、客户和使用人员层。只需将对象从SYS/DIS 层继承(或复制)到这四个层中,然后在这四个层中进行定制,改写标准 Dynamics AX 系统表表表表 (1 1 1 16 6 6 61 1 1 16 6 6 6)类类类类 (5 5 5 50 0 0 04 4 4 41 1 1 1)表表表表单单单单 (1 1 1 18
3、 8 8 89 9 9 94 4 4 4)菜菜菜菜单单单单 (6 6 6 65 5 5 5)报报报报表表表表 (7 7 7 72 2 2 21 1 1 1)商商商商务务务务逻逻逻逻用用用用户户户户模模模模板板板板层层层层 D D D Dy y y yn n n na a a am m m mi i i ic c c cs s s s A A A AX X X X:面面面面向向向向对对对对象象象象的的的的体体体体系系系系架架架架构构构构 资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。中的逻辑。由于 Dynamics AX 将业务逻辑拆分为许多很小的对象,而不是巨大的整体模块,才得
4、以实现这种分层的方法。Dynamics AX的分层技术见下图:从选择商务管理应用软件开始,每个客户都会面临两难的境地:她们必须决定:1)对软件包进行定制,以满足企业的业务实践,从而保持自己独特竞争优势。可是软件包经过修改后,可能难以甚至无法进行升级,或者 2)更改企业的业务实践,以便适应软件包。Dynamics AX 的方式不必面临这种两难的境地,而且在应用软件和业务流程之间能够找到最佳平衡点。使用 Dynamics AX,能够使软件适应您自己的管理方式而不是供应商认为的管理方式!进行定制后,经过将定制内容导入下一版本,依然能够以极低的成本升级 Dynamics AX 系统,且大多数情况下不必
5、重新编码。这样,就能够充分利用微软在 Dynamics AX 研发(R&D)方面注入的巨大投资。我们能够看一个客户案例。客户甲选择按照其整体业务架构来组织四个代码层。将适用于全局用户的修改放在业务层(这些修改是由 Dynamics AX Global Design Team 进行的,该小组由 Columbus IT、TECTURA和eBEC组成)。客户甲发现,与标准的 Dynamics AX 相比,Columbus IT的信贷管理、TECTURA 的高资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。级分发和eBEC的精益制造更适合企业的业务,加上构成”全局构建”的24处客户甲全局
6、修改。因此,她们将此对象插入了业务层。保留合作伙伴层以存储适用于所有全局用户的、修改过的对象,客户甲自己的IT部门修改代码时能够使用该层。客户甲的业务被划分为三个地区:美国、欧洲和亚太地区。这些地区有时可能存在不同的业务规则。例如,各地区的订购项商品处理逻辑各不相同,因此 客户甲将该对象的三个不同版本放在客户层中。使用人员层用于隔离各国不同的系统版本。例如,客户甲为每个国家制定了不同的发票格式。因此,她们使用人员层能够存储29种差别很小的发票对象。Dynamics AX 内核按指定的优先级顺序调用对象进行工作,内核会从上向下搜索层极,并调用首先找到的对象。例如,当内核调用发票对象时,它将立即在
7、使用人员层找到与该用户所在的国家匹配的发票。可是,当调用全局计划对象时,内核最终在业务层上找到并执行该对象之前,将首先搜索合作伙伴、客户和合作伙伴层。当客户甲运行MRP时,由于客户甲或她们的合作伙伴在系统层上方的任意一个层中都没有对该对象进行修改,内核将调用 Dynamics AX 标准MRP展现对象。2.微软 ERP 系统支持环境及对象服务器 Dynamics AX 解决方案的支持应用程序对象服务器(AOS)三层体系结构。下图是使用AOS的三层解决方案的简单示例。三层体系结构 使用这种三层体系结构,一部分应用程序在客户端上执行,另一部分应用程序在 AOS 上执行。因此,所有与用户界面相关的进
8、程都在由用户操作的客户端上执行,而所有业务逻辑则在服务器上执行。例如,当用户决定更新分类账时,用于选择此进程的菜单是在客户端上执行的,可是分类账更新进程本身是资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。在服务器上执行的。也就是说,不必将所有数据从数据库中经过 AOS 发送到要更新的客户端,再经过系统返回到服务器。远程客户端远程客户端 由于三层体系结构使部分应用程序在客户端上执行,另一部分应用程序在 AOS 上执行,因此客户端计算机不必像双层解决方案要求的那样具有很高的性能。群集功能群集功能和负载均衡和负载均衡 Dynamics AX 支持群集功能。群集功能意味着,当客户端的数
9、量增加到AOS将要成为解决方案的瓶颈时的临界点时,能够安装其它AOS以增加可用带宽。安装其它 AOS 非常简单,而且安装过程中不需要关闭 Dynamics AX 解决方案。使用群集 AOS 时,负载平衡进程将帮助确保用户每次登录时,将用户连接到所连接的客户端数量最少的服务器上。群集功能还能够减少出现整个系统故障的几率。服务器冗余帮助确保在某个 AOS 要出现故障时,用户能够使用剩余的活动服务器继续工作。需要注意的是,上面所述功能都是标准的 Dynamics AX 功能,不需要任何其它软件。Dynamics AX 的设计目的是使客户在需要时能够在不同的位置添加客户端计算机以增加用户数量。使用具有
10、 Internet 连接和浏览器的计算机,经过 Web 部署的客户端功能,能够从任何位置下载 Dynamics AX 客户端软件。下载客户端软件后,即可进行安装,然后该计算机就能够像其它新用户一样连接到 AOS。资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。安全性安全性 在三层解决方案中,AOS 还能够保护 Dynamics AX 数据库免受安全威胁,因为客户端与数据库的连接只经过该 AOS。Dynamics AX 允许经过两种方式加密数据。第一种方法是使用虚拟专用网络(VPN),第二种方法是使用 Dynamics AX AOCP 协议,这是一种内部密码机制,它是该解决方案的主
11、干,不需额外成本即可使用。这两种方法都使用 128 位加密。还能够将 AOS 与 Microsoft Active Directory 集成,这将允许具有需要 Microsoft Active Directory 的安全策略的企业能够充分利用 AOS。使用使用 AOS AOS 的业务优点的业务优点 三层 Dynamics AX 解决方案能够显著地降低 TCO。还有诸如降低网络上MSMS-SQLSQL数据数据系统应用服务器系统应用服务器 AOSAOS-1 1 AOSAOS-1 1 AOSAOS-1 1 MYCLUSTER 数 据 中各分公司 远程访问服务器集群 其它公司 VPN VPN 企业虚拟网 资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。的总体流量和负载、更好地在各台计算机上分配负载和改进安全性等其它优点。总部和附属办事处能够使用同一解决方案,从而降低总体拥有成本(TCO)。在多个地理位置有分公司的企业中使用 AOS,将不需要复制数据,这能够保证数据处于最新状态并改进数据的完整性。使用 AOS 的企业能够选择使用三层体系结构或双层和三层的混合体系结构,从而充分利用企业现有硬件。