开发文档
页是与开发者文档相关的文章索引。有关使用者文档,请参阅 用户手册
组织和开发工具
本章包含在开始任何Dolibarr开发行动之前需要阅读的一般信息。
编码规则和最佳实践
- 前提条件
- 开发语言和编码规范(PHP, SQL, HTML)
- 数据库表清单
- 核心文件和类树结构请参阅: doxygen生成的文档 。
模块清单
特定于Dolibarr标准功能模块的技术文档在每个模块的开发文档页上定义。请选择要访问的页面:
- 标准模块清单请参阅:List of standard modules
- 扩展模块清单请参阅:List of complementary modules
为 GUI 开发新的模块/扩展
本章介绍如何开发影响 Dolibarr 用户界面的新模块。可以是屏幕、外观(主题)、代码(CSS样式表)或数据。
脚本开发不在此范围内,将在下一章中进行描述。
要开发自己的Dolibarr扩展模块,请前往教程:模块开发
开发命令行或批处理脚本
本章描述了开发自己的批处理脚本以在Dolibarr中执行任务处理(读、写等)的过程。
对图形用户界面(GUI)进行变更不属于此范围。请参阅上一章。
要开发脚本,如 cron 处理脚本或从其他系统导入数据的脚本,请参阅:脚本开发
Dolibarr的技术组件
文件树
当前版本的文件层次结构请参阅:源代码的 doxygen generated documentation (生成文档的样式为“javadoc”)。
创建新模块时用于添加文件的路径在新模块开发文档中描述(请参阅 模块开发)。
配置文件
- /main.inc.php 定义Dolibarr GUI 环境(脚本不需要引用)
- /master.inc.php 定义Dolibarr所有进程的环境,不管是页面还是脚本。文件记取conf文件,初始化 $lang, $db和空的$user
- /filefunc.inc.php 引用 conf.php 文件和其他通用库文件,比如: functions.lib.php
- /core/lib/function.inc.php 函数库,包括了引用数据库的函数。
- /core/class/html.formother.class.php 其他HTML部件的预先配置文件
配置Dolibarr系统
Dolibarr中有3个级别的配置。
- Dolibarr的技术配置(应用程序身份验证模式、数据库验证信息和文件存储位置)仅在 conf/conf.php 配置文件中定义。相关的更多信息,请参阅 Configuration file 。
- 功能配置存储在 表llx_const 中。相关的更多信息,请参阅 Constants 。
- 特定于用户的配置存储在 表llx_user_param 中。相关的更多信息,请参阅 Constants 。
业务对象
请参阅 业务对象
菜单系统
请参阅 菜单.
选项卡系统
请参阅 选项卡.
主题系统
请参阅 主题.
消息框/widget小组件系统
请参阅 消息框/widget小组件.
身份认证系统
请参阅 认证.
权限系统
请参阅 用户权限.
翻译系统
请参阅 翻译.
错误处理
请参阅 错误处理 。
画布系统(屏幕重载)
画布是一种开发功能,用于替换创建、更新或查看/展示表单(产品、合作方、联系人等)的屏幕显示。例如,您可以将合作方输入表单替换为您自己的输入表单、编辑表单或查看/展示表单。
请参阅 画布.
触发器系统
触发器是一种开发功能,用于在Dolibarr“业务操作”(创建发票、删除用户、更新合作方等)执行期间运行自定义代码,仅适用于业务事件。要在其他场景中自定义代码,请参阅 钩子系统。
请参阅 触发器系统 。
钩子系统
请参阅 钩子系统 。
变量替换系统
请参阅 变量替换系统。
Web服务
可以配置 Dolibarr 为外部系统提供可访问的服务。
注意:提供SOAP API的Web服务模块(开发者)已弃用。
文件/文档的存储管理
请参阅 生成的文件 。
编号模块
对于在应用程序中创建的每个实体,Dolibarr 都会为其分配一个引用。
为了使此引用适应任何用途,Dolibarr 使用模块来定义生成此引用的规则。
系统提供了多个标准模块,其中有些是通用的,用于定义编号掩码(字符的个数,带或不带前缀,是否包括日期等),从而满足大多数需求。
然而,在某些情况下,提供的标准模块不能满足需求。在这种情况下,有必要开发自己的编号模块。
请参阅 自动编号模块.
文档模板和文档生成
有关从模板生成文档的更多信息,请参阅 创建PDF模板 或 Create an ODT document template.
附加字段
请参阅 附加字段.
在线支付系统
请参阅 在线支付系统 。
其他内部函数
您的代码可以使用许多内部库。
您可以在 functions.lib.php、functions2.lib.php 或 admin.lib.php 中找到大量的通用函数。
也可以使用在 htdocs/core/lib/*.lib 文件中找到的任何函数。
基于 Dolibarr 版本的判断条件
例如,要判断当前Dolibarr版本是否大于3.5,可以使用 admin.lib.php中的 versioncompare和 versiondolibarrarray:
if (versioncompare(versiondolibarrarray(), array(3,5,0)) > 0)
{
...
}
批量导入/导出
与其他应用程序的接口和链接
- Dolibarr到外部系统的接口 或 Dolibarr到Dolibarr的接口(Dolibarr触发器或钩子)
- 外部系统到Dolibarr的接口
- Web Services
将 Dolibarr 集成到自动化平台
- Integration of Dolibarr to the Zapier automation platform
- Integration of Dolibarr to the n8n automation platform
- Integration of Dolibarr to the Make automation platform
FAQ
所有常见问题(FAQs)解答均可通过 FAQ 索引页面 FAQ EN 获取。