1.png

一套面向 Microsoft Access 开发者和企业内部应用场景打造的完整开发框架,让登录、权限、菜单、多数据库后端、数据升迁、通知待办、数据仪表板、代码生成与 AI 能力成为可以直接复用的基础设施。

易登开发框架的英文名称为 EdonSoft Development Framework,本文所称“易登开发框架”与 EdonSoft Development Framework 均指同一套产品。


为什么要做一套 Access 开发框架

Microsoft Access 一直是企业内部管理系统、数据录入工具、查询分析平台和部门级应用的重要选择。它把数据库、窗体、报表和 VBA 集成在同一个开发环境中,开发速度快、部署门槛低,特别适合需求变化快、业务人员参与度高的应用场景。

但 Access 开发也长期存在一个现实问题:每开始一个新项目,开发者往往都要重新编写登录、用户、权限、菜单、系统设置、日志、自动更新和基础增删改查代码。真正的业务功能还没有开始,项目的大量时间已经消耗在重复建设上。

随着系统规模扩大,这种零散开发方式还会带来更多问题:

  • 登录、权限和菜单逻辑分散在不同窗体中,后期难以统一维护。

  • 不同项目界面风格不一致,开发成果难以持续复用。

  • 多用户部署、前端升级和后端链接缺少标准流程。

  • 32 位与 64 位 Office 的兼容问题容易被忽略。

  • 公共函数不断复制,项目之间逐渐出现多个不兼容版本。

  • 开发经验停留在个人代码片段中,难以形成稳定的团队资产。

易登开发框架正是为了解决这些问题而诞生。

它不是几个示例窗体的集合,也不是只负责生成增删改查代码的工具,而是一套可以直接作为新项目起点的 Access 应用开发底座。开发者可以把精力集中在客户、订单、库存、财务、生产、项目等业务模块上,而不必每次从头搭建系统基础设施。


框架定位

易登开发框架面向 Microsoft Access 项目的完整生命周期,覆盖开发、配置、部署、使用和维护等环节。

它希望实现三个目标:

  1. 提高开发效率:将高频、通用、重复的能力封装为可直接使用的模块。

  2. 统一项目规范:让界面、权限、菜单、数据访问和错误处理遵循一致的方式。

  3. 增强交付能力:为多用户运行、版本更新、安全部署和后续维护提供完整支撑。

对于独立开发者,它是一套可以快速启动项目的基础模板;对于企业开发团队,它是一套能够沉淀规范、统一交付质量的开发平台;对于正在从 Excel 和零散 VBA 工具升级的用户,它提供了通往多人协作、权限控制和规范化数据管理的完整路径。

框架能力总览

能力领域已提供的主要功能
系统基础登录认证、用户管理、角色权限、动态菜单、系统设置、操作日志
数据后端Access、SQL Server、MySQL,统一 ADO 与 ODBC 连接能力
数据库运维链接表管理、连接测试、远程对象读取、批量重链、数据库升迁
业务协同提醒与待办、未读徽标、优先级、有效期、业务窗体直达
数据展示通用查询、搜索组合框、ECharts KPI 与图表
业务开发代码生成、窗体构建、单据选择弹窗、审计字段、公共函数库
运行维护前后端分离、自动更新、32/64 位支持、ACCDE 发布保护
智能辅助多模型 AI 问答、连续会话、数据库分析与 SQL 建议

一套适合真实项目的整体架构

前后端分离

框架采用 Access 项目中成熟、实用的 Split Database 前后端分离架构:

  • 前端数据库负责窗体、报表、菜单、VBA 代码和用户交互。

  • 后端数据库负责数据表存储,由多个前端通过链接表共同访问。

  • 客户端各自运行前端副本,避免多人直接共享同一个前端文件。

这种方式让程序更新与业务数据相互独立。发布新版本时可以替换客户端前端,而不需要搬迁用户数据,也能减少前端文件被多人同时占用造成的冲突。

框架已经形成 Access、SQL Server、MySQL 三类后端支持体系。项目既可以从简单直接的 Access 后端起步,也可以连接 SQL Server 或 MySQL,以适应更高的并发、集中运维、跨系统数据共享和企业数据库管理需求。

数据驱动的系统结构

菜单、角色、权限和系统设置不再散落在代码中,而是通过统一的数据结构进行管理。管理员可以在系统界面中维护用户、角色、模块权限和菜单动作,开发者也可以在既有规则下扩展新业务模块。

数据驱动带来的价值不只是“少写几行代码”,更重要的是系统结构变得清晰:用户属于角色,角色拥有权限,菜单对应功能,功能再决定用户可以看到什么、执行什么。

可版本管理的 VBA 源码

框架将开发阶段导出的标准模块和类模块集中保存在 mode/ 源码目录中。与只保留一个 .accdb 文件相比,文本化源码更适合版本比较、代码审查、问题追踪和持续迭代,也让 Access 开发具备更规范的工程管理基础。


现代化而统一的 Access 界面

Access 应用不应只能停留在传统灰色窗体和零散按钮的视觉印象中。

易登开发框架在保留 Access 原生窗体稳定性的同时,对主界面、管理页面、按钮、列表和操作区域进行了统一设计。主界面结合 HTML、CSS、图标资源和 Access WebBrowser 控件,构建出更接近现代管理系统的导航体验。

框架主界面包括:

  • 支持层级展开的侧边栏菜单。

  • 系统名称、版本、当前用户和头像等顶部信息。

  • 用于承载业务窗体与功能页面的主工作区。

  • 可配置的主题、菜单字号和显示设置。

  • 菜单权限过滤与功能跳转。

HTML 菜单可以直接调用 Access VBA 过程和打开相应对象,实现 Web 风格导航与 Access 业务窗体之间的联动。用户得到的是更完整、更统一的应用体验,开发者仍然可以继续使用熟悉的 Access 窗体、报表和 VBA 技术栈。

image.png


核心功能

1. 用户登录与账号管理

框架提供完整的用户认证和账号管理能力,包括:

  • 用户名与密码登录。

  • 密码加密存储。

  • 记住登录信息。

  • 修改密码及旧密码验证。

  • 用户启用、禁用和角色分配。

  • 空闲超时与自动注销控制。

  • 用户头像及默认头像回退。

  • 发布环境下的导航窗格、特殊键和代码中断保护。

这些能力让开发者不必再为每个项目重新设计登录表、登录窗体和用户管理逻辑,也为后续权限与日志功能提供统一身份基础。

2. 基于角色的权限管理

框架采用 RBAC,也就是基于角色的访问控制方式。管理员先定义角色,再为角色配置模块权限,最后将用户分配到相应角色。

框架支持查看、新增、编辑、删除、打印、导出等标准权限,并可以结合实际业务继续扩展。权限不仅可以决定用户是否看到某个菜单,还可以用于控制窗体能否打开,以及按钮和业务操作是否可用。

权限管理界面支持角色选择、模块授权、批量设置和统一保存。业务窗体则可以通过框架提供的权限检查方法读取当前用户的权限,从而避免在各处重复编写用户名或角色名判断。

image.png

3. 动态菜单系统

框架菜单由数据配置生成,而不是写死在主窗体中。菜单支持层级结构、图标、排序、启用状态和权限关联,并可执行多种动作:

  • 打开窗体。

  • 打开表或查询。

  • 打开报表。

  • 运行宏。

  • 调用 VBA 过程。

  • 启动外部程序。

开发者新增业务模块后,只需要按规范配置菜单和权限关系,就能将功能接入主界面。对于行业版本、客户定制版本或持续扩展的内部系统,这种方式能够显著降低维护成本。

image.png

4. Access、SQL Server 与 MySQL 多后端支持

框架把后端连接能力进行了统一封装,支持 Access、SQL Server 和 MySQL 三种数据库类型。开发者可以通过标准接口生成 ADO 连接字符串和 ODBC 链接表连接字符串,并在保存配置前测试连接是否有效。

其中,MySQL 后端已经具备完整的配置与运行支持:

  • 配置服务器地址、端口、数据库、用户名和密码。

  • 配置 MySQL ODBC 驱动名称,默认使用 Unicode 驱动。

  • 生成 MySQL ADO 与 ODBC 连接字符串。

  • 通过链接表访问 MySQL 表和视图。

  • 使用统一 ADO 执行模块运行查询、更新和统计语句。

  • 检测与当前 Office 位数匹配的本地 ODBC 安装包。

  • 在具备安装权限时调用本地安装包完成驱动安装。

  • 使用 utf8mb4 字符集支持中文及完整 Unicode 数据。

这意味着 Access 前端不再被限定于本地 .accdb 数据文件,可以继续发挥窗体、报表和 VBA 的快速开发优势,同时把数据交给 SQL Server 或 MySQL 集中管理。

image.png

5. 链接表管理器

链接表管理器将连接测试、远程对象读取、本地表名设置和链接创建集中在同一个界面中,适用于后端文件迁移、服务器地址变更以及数据库类型切换等场景。

管理员可以选择 Access、SQL Server 或 MySQL 后端,填写相应连接信息,测试连接并读取远程表或视图。对象列表支持全选、全不选、修改本地链接表名、链接选中对象和批量链接全部对象。

当后端位置发生变化时,不必逐张表手工修改连接属性;当项目从 Access 后端迁移到 SQL Server 或 MySQL 时,也可以用同一套管理工具重建前端链接。

image.png

6. Access 数据库升迁工具

框架内置数据库升迁向导,可以将指定 Access .accdb.mdb 数据库中的表结构和数据迁移到 SQL Server 或 MySQL。它不是简单的数据导出,而是一套包含检测、迁移和重新链接的完整流程。

升迁过程包括:

  1. 浏览并选择需要升迁的 Access 源数据库。

  2. 选择 SQL Server 或 MySQL 作为目标数据库并测试连接。

  3. 扫描源数据库中的表、字段、记录数、主键和索引。

  4. 检查大型数字、附件、OLE、超链接、计算字段、多值字段及主键缺失等兼容性问题。

  5. 根据目标数据库生成对应的字段类型和建表语句。

  6. 创建远程表,复制数据并处理主键、自动编号和索引。

  7. 按需保留或替换目标数据库中的同名表。

  8. 升迁完成后自动将远程表重新链接到当前 Access 前端。

  9. 将原同名本地表改名备份,降低切换后端时的数据风险。

向导既支持迁移全部表,也支持只迁移选中的表,并在执行前明确标出不能自动迁移的对象。对于从单机应用升级到局域网多人系统,或者从 Access 数据库升级到企业数据库的项目,这项能力可以显著减少手工建表、类型转换、数据复制和重新链接的工作量。

image.png

7. 系统设置与主题配置

框架提供统一的系统设置能力,用于保存系统名称、版本、菜单主题、菜单字号、自动更新参数和其他运行配置。界面主题支持浅色与深色模式,管理员可以在系统设置中启用深色主题,使主界面、导航区域和相关页面切换为更适合暗光环境与长时间使用的深色视觉风格。

主题设置由框架统一保存和读取,切换后可同步应用到主界面菜单和顶部区域。公共设置通过统一接口管理,避免不同模块各自建立配置表或直接写死参数,也便于后续业务窗体遵循一致的界面主题。

image.png

8. 自动更新

在多用户 Access 项目中,如何让每台客户端及时使用同一个前端版本,往往是部署维护中最麻烦的问题之一。

框架的自动更新机制可以在程序启动时检测版本,并根据配置执行强制更新或可选更新。更新过程中,程序能够关闭当前 Access 前端、替换客户端文件并重新启动,从而减少逐台复制和人工确认的工作量。

前后端分离架构也保证了更新前端时不会覆盖后端业务数据。

9. 操作日志

框架提供统一日志能力,可用于记录用户、时间、操作内容和相关结果。日志不仅方便管理员追踪系统使用情况,也能帮助开发者定位问题、还原操作过程,并为需要审计记录的业务系统提供基础支持。

image.png

10. 通用查询

通用查询功能可以为现有窗体或子窗体快速增加组合查询能力。开发者通过配置查询字段、控件类型和匹配方式,即可让用户按文本、数字、日期、选项等条件筛选数据。

它既可以直接过滤当前窗体记录,也可以基于基础 SQL 重新生成记录源,适合客户列表、订单查询、日志检索和各种业务台账。

image.png

11. 搜索组合框

搜索组合框为 Access 原生组合框增加即时搜索能力。用户输入关键字时,候选列表会根据配置动态过滤,可以按包含、拼音表达式或固定条件查找数据。

开发者只需要在窗体中声明一个事件对象并调用 CreateSearchCombo,即可指定搜索字段、显示字段、数据来源、附加条件和排序方式。它适合客户、供应商、商品、员工等候选项较多的录入场景,减少用户在长列表中逐项查找的时间。

12. 代码生成与窗体构建

框架内置多种开发辅助能力,用于减少机械、重复的 VBA 编码工作。开发者可以根据表结构生成或构建标准业务窗体、查询界面和相关代码,并在统一规范的基础上继续扩展业务逻辑。

代码生成器与窗体构建模块并不是要替代开发者,而是负责完成最耗时、最容易重复的基础工作,让生成结果继续保留可修改、可扩展的 Access VBA 结构。

image.png

13. 单据选择弹窗

单据选择弹窗面向销售订单选商品、采购入库选采购明细、费用单选项目等主子表业务场景。调用方传入来源数据、字段映射和目标明细子窗体后,用户即可查询并一次选择一条或多条记录写入明细。

它支持:

  • 使用表名、查询名或 SELECT SQL 作为数据来源。

  • 自定义列表显示字段和关键字搜索字段。

  • 按“包含”“开头是”“等于”等方式过滤数据。

  • 多选记录并批量追加到目标子窗体。

  • 使用 目标字段|来源字段 配置字段映射。

  • 为数量等目标字段设置默认值。

  • 在目标记录集不可更新时指定实际写入表或可更新查询。

这项能力把业务系统中高频的“从来源单据选择数据并带入明细”流程封装成统一组件,开发者不必为每个业务窗体重复制作选择窗口。

image.png

14. 提醒与待办事项

框架提供通用的提醒与待办中心,业务模块可以通过公共 API 向指定用户或所有用户投递消息。每条提醒可以包含标题、详细内容、业务类别、目标用户、优先级、创建人、过期时间和业务跳转参数。

用户登录后,可以在主界面顶部看到当前未读数量,并进入待办列表查看全部、已读或未读消息。列表支持标记单条已读、全部已读和删除提醒,也会自动过滤已经过期的消息。

提醒的跳转参数与动态菜单使用同一套 FArguments 格式。用户打开“销售订单待处理”之类的提醒时,系统可以直接定位到对应业务窗体和指定记录,避免消息提醒与实际处理入口相互脱节。

对于开发者,AddReminderGetUnreadCountMarkReminderReadMarkAllReadDeleteReminder 等接口可以直接接入订单审核、库存预警、任务到期、数据异常等业务流程。

image.png

15. ECharts 数据仪表板

框架已经提供可直接集成到 Access 窗体中的 ECharts 仪表板渲染引擎。开发者在窗体上放置 WebBrowser 控件后,可以通过 VBA 添加 KPI 指标和图表,并把完整看板渲染到系统首页、经营分析页或统计页面中。

KPI 卡片支持标题、数值、趋势文字、Font Awesome 图标、自定义颜色和 VBA 格式化掩码。数据既可以直接传入,也可以由 SQL 查询实时生成。

图表支持:

  • 柱状图。

  • 横向柱状图和排名图。

  • 折线图。

  • 面积图。

  • 堆叠柱状图。

  • 饼图与环形图。

  • 指标面积图。

  • 带分类汇总列表的汇总饼图。

图表可以按照 12 栅格宽度灵活排列,并能在 Access 窗体尺寸变化时自动重绘。框架同时提供直接传数组和传入 SQL 两种数据方式:SQL 结果的第一列作为分类,其余列自动转换为数据系列,适合快速建立销售趋势、订单统计、产品排行和经营指标看板。

仪表板采用纯内存渲染,不要求额外建立配置表,也不会限制开发者对数据和布局的控制。Dashboard_ResetDashboard_AddKPIFromSQLDashboard_AddChartFromSQLDashboard_Render 等接口可以直接组合出不同业务首页。

image.png

16. 进度条组件

对于导入、导出、批量计算、数据迁移等耗时任务,框架提供多种进度条组件,包括基础进度、详细进度、双层进度和扁平样式。

组件可显示百分比、当前状态、已用时间、预计剩余时间和处理速度,并支持不同主题颜色、多实例和资源清理。开发者只需要初始化进度对象并在循环中更新数值,就能获得统一的任务反馈体验。


image.png

image.png

17. AI 辅助能力

框架已经将 AI 能力集成到 Access 应用中,并支持多个模型供应商及自定义兼容接口。现有能力包括:

  • AI 问答窗体。

  • 连续对话与系统提示词。

  • 历史会话保存和查看。

  • 流式回复显示。

  • 针对当前数据库表和查询的分析。

  • 业务理解、SQL 建议和开发辅助。

这使 AI 不再是 Access 系统之外的独立工具,而可以成为业务应用中的一项可集成能力。开发者既能用它辅助理解数据库和编写查询,也可以在自己的项目中继续扩展面向用户的智能功能。

image.png

18. 公共函数与基础组件

框架还整理了大量可复用的 VBA 基础能力,例如:

  • SQL 文本、日期及条件安全拼接。

  • DAO 与 ADODB 数据访问辅助。

  • 数据库设置持久化。

  • 日期区间与数值处理。

  • 流水号生成。

  • Excel 格式化导出。

  • JSON 解析与序列化。

  • 审计字段自动维护。

  • 消息提示与错误处理。

  • 压缩、文件和系统 API 调用。

这些函数经过统一整理后,可以减少项目之间复制代码造成的差异,也让业务代码更简洁、更容易阅读。

image.png


开发者能获得什么

快速进入业务开发

新项目不必再从空白数据库开始。登录、用户、角色、权限、菜单、设置、日志和更新已经具备基础实现,开发者可以直接建立业务表、窗体、查询和报表。

统一的项目结构

公共模块有明确职责,系统功能有统一入口,窗体构建和错误处理遵循一致模式。即使项目持续多年,也更容易判断某项能力应该放在哪里、如何扩展和如何维护。

可靠的多人部署

前后端分离、本地前端、共享后端、自动更新和链接表维护共同组成了一套完整的部署思路。系统可以从单机使用逐步扩展到局域网多人使用,并根据需要连接 SQL Server 或 MySQL。数据库升迁向导还能承担表结构转换、数据迁移和前端重链工作,让后端升级不再完全依赖手工处理。

完整的业务协同

提醒与待办并不是孤立的消息列表,而是可以由业务代码投递、在主界面显示未读数量并直接跳转到目标窗体的协同入口。开发者可以将订单待审、库存预警、任务到期和数据异常统一接入,形成从发现事项到处理事项的完整路径。

直观的数据呈现

通用查询、搜索组合框和 ECharts 仪表板覆盖了从查找记录到观察经营指标的不同层次。开发者可以继续使用 SQL 和 VBA 准备数据,由框架负责将结果呈现为更易用的筛选界面、KPI 卡片和交互图表。

低学习与交付成本

框架配套帮助文档覆盖快速开始、日常使用、管理员配置、开发者参考、部署维护和常见问题。对于团队而言,新成员不必完全依赖原开发者口头讲解;对于交付项目而言,管理员和最终用户也有更清晰的操作依据。


适合哪些场景

易登开发框架特别适合以下类型的项目:

  • 企业内部的客户、订单、库存、采购、生产和项目管理系统。

  • 数据录入、审核、查询、统计和报表类应用。

  • 从 Excel 表格和 VBA 工具升级而来的多人协作系统。

  • 需要用户、角色和功能权限控制的部门级应用。

  • 需要快速交付多个定制项目的 Access 开发者或软件团队。

  • 需要连接 Access、SQL Server 或 MySQL 后端的桌面管理系统。

  • 需要把现有 Access 后端平滑升迁到 SQL Server 或 MySQL 的项目。

  • 需要待办提醒、业务直达和可视化经营看板的内部系统。

  • 希望在现有 Access 应用中加入 AI 辅助能力的项目。

  • 用于学习 Access VBA 工程化开发的示例和实践平台。

它尤其适合“业务复杂度已经超过单个 Excel 文件,但又不希望立即承担大型 Web 系统开发与运维成本”的团队。


兼容性与部署

框架面向 Windows 与 Microsoft Access 环境,支持:

  • Access 2013、2016、2019、2021、2024 和 Microsoft 365。

  • 32 位 Office 与 64 位 Office 对应版本。

  • Access 后端数据库。

  • SQL Server 后端数据库。

  • MySQL 后端数据库。

  • 单机运行与局域网多人运行。

  • .accdb 开发部署和 .accde 发布部署。

在 API 调用方面,框架按 VBA7、PtrSafeLongPtr 规范处理 32 位与 64 位兼容。实际部署时,应根据 Office 位数选择对应版本,并推荐为每个用户部署本地前端,将共享数据集中保存在后端。使用 MySQL 时,需要安装与 Office 位数一致的 MySQL Connector/ODBC 驱动。


社区版与专业版

框架通过社区版和专业版服务不同规模的 Access 项目。两个版本共享统一的框架基础和开发规范,专业版在此基础上提供面向企业数据库、部署迁移和业务协同的增强能力。

社区版重点提供 Access 项目常用的登录、用户、功能权限、动态菜单、Access 后端、设置、日志、查询、更新和开发辅助能力,适合常规单机及局域网项目。

专业版现已提供:

  • SQL Server 完整后端及存储过程调用能力。

  • MySQL 完整后端及 ODBC 驱动部署支持。

  • Access、SQL Server、MySQL 统一链接表管理。

  • Access 数据库向 SQL Server 或 MySQL 的升迁向导。

  • 提醒与待办中心、未读徽标及业务跳转。

  • ECharts KPI 与多类型数据仪表板。

行级数据权限、轻量审批流、单库多租户和备份中心等企业能力仍会按照版本计划持续完善,具体功能以对应版本的发布说明为准。框架会坚持稳定优先,不为了堆砌功能而破坏 Access 项目简单、直接、易部署的优势。

专业版已经正式发布,原价 4980 元,限时早鸟价 3980 元



不只是框架,也是 Access 开发经验的沉淀

Access 的价值从来不只是“做一个小数据库”。在合适的业务规模和应用边界内,它仍然是构建企业内部工具、快速验证需求和交付桌面管理系统的高效平台。

真正限制 Access 项目的,很多时候并不是技术本身,而是缺少统一架构、成熟组件和可复用的工程经验。

易登开发框架希望做的,就是把这些经验沉淀下来:把每个项目都会遇到的问题做成标准能力,把容易出错的地方变成统一规范,把重复劳动交给框架,让开发者把时间留给真正有价值的业务设计。

它既是一套可以直接使用的开发底座,也是一套持续成长的 Access 工程实践。


结语

如果你正在开发 Access 管理系统,如果你已经厌倦了反复编写登录、权限、菜单和更新代码,或者你的团队正准备从 Excel 和零散 VBA 工具走向更规范的多人应用,那么易登开发框架可以成为一个更高效的起点。

从用户认证到权限控制,从动态菜单到自动更新,从 Access、SQL Server、MySQL 多后端到数据库升迁,从待办提醒到 ECharts 仪表板,再到代码生成与 AI 辅助,这套框架正在建立一套完整、清晰、可持续的 Access 开发方式。

让基础能力交给框架,让开发回到业务本身。

项目与下载地址:http://www.edonsoft.com/access-framework

帮助文档:www.edonsoft.com/access-framework-help.aspx


易登开发框架及相关内容归江阴易登软件有限公司所有。