Difference between revisions of "开发文档"

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
 
(16 intermediate revisions by the same user not shown)
Line 17: Line 17:
 
本章包含在开始任何Dolibarr开发行动之前需要阅读的一般信息。
 
本章包含在开始任何Dolibarr开发行动之前需要阅读的一般信息。
  
#[[Dolibarr Project|项目组织]]
+
#[[Dolibarr项目|项目组织]]
#[[To known before to start|在开始开发之前要了解的信息]]
+
#[[开发须知|在开始开发之前要了解的信息]]
#[[Environment and development tools|环境和开发工具]]
+
#[[开发环境与工具|环境和开发工具]]
#[[Dependencies and external libraries|外部库和依赖项]]
+
#[[依赖项与外部库|外部库和依赖项]]
#[[FAQ_Get,update_project_sources|获取、更新版本的源代码]]
+
#[[常见问题-获取与更新项目的GIT源代码|获取、更新版本的源代码]]
  
 
=编码规则和最佳实践=
 
=编码规则和最佳实践=
  
#[[安装前提条件|先决条件]]
+
#[[安装前提条件|前提条件]]
#[[语言和开发规则|开发语言和标准(PHP, SQL, HTML)]]
+
#[[语言和开发规则|开发语言和编码规范(PHP, SQL, HTML)]]
 
#[[:Category:Table SQL|数据库表清单]]
 
#[[:Category:Table SQL|数据库表清单]]
 
#核心文件和类树结构请参阅: [http://doxygen.dolibarr.org/ doxygen生成的文档] 。
 
#核心文件和类树结构请参阅: [http://doxygen.dolibarr.org/ doxygen生成的文档] 。
Line 83: Line 83:
 
请参阅 [[主题]].
 
请参阅 [[主题]].
  
==小部件系统==
+
==消息框/widget小组件系统==
请参阅 [[信息框]].
+
请参阅 [[信息框|消息框/widget小组件]].
  
 
==身份认证系统==
 
==身份认证系统==
Line 95: Line 95:
 
请参阅 [[翻译]].
 
请参阅 [[翻译]].
  
==错误管理==
+
==错误处理==
请参阅 [[Error reporting|Error reporting]].
+
请参阅 [[错误处理]]
  
 
==画布系统(屏幕重载)==
 
==画布系统(屏幕重载)==
Line 104: Line 104:
  
 
==触发器系统==
 
==触发器系统==
触发器是一种开发功能,用于在Dolibarr“业务操作”(创建发票、删除用户、更新合作方等)执行期间运行自定义代码,仅适用于业务事件。要在其他场景中自定义代码,请参阅 '''钩子系统'''
+
触发器是一种开发功能,用于在Dolibarr“业务操作”(创建发票、删除用户、更新合作方等)执行期间运行自定义代码,仅适用于业务事件。要在其他场景中自定义代码,请参阅 [[钩子系统]]
  
请参阅 [[Interfaces Dolibarr toward foreign systems|this page]].
+
请参阅 [[触发系统|触发器系统]]
  
 
==钩子系统==
 
==钩子系统==
请参阅 [[钩子系统]].
+
请参阅 [[钩子系统]]
  
==变量代换系统==
+
==变量替换系统==
请参阅 [[Variable substitution system]].
+
请参阅 [[变量替换系统]]
  
 
==Web服务==
 
==Web服务==
 
可以配置 Dolibarr 为外部系统提供可访问的服务。
 
可以配置 Dolibarr 为外部系统提供可访问的服务。
  
请参阅 [[Module Web Services]].
+
请参阅 [[提供REST API的Web服务模块(开发者)]]
  
请参阅 [[Module Web Services API REST (developer)|模块 Web 服务 API REST(开发人员)]]
+
注意:[[Module Web Services API SOAP (developer)|提供SOAP API的Web服务模块(开发者)]]已弃用。
 
 
注意:[[Module Web Services API SOAP (developer)|模块 Web 服务 API SOAP(开发人员)]]已弃用。
 
  
 
==文件/文档的存储管理==
 
==文件/文档的存储管理==
请参阅 [[Generated documents]].
+
请参阅 [[生成的文件]]
  
 
==编号模块==
 
==编号模块==
Line 145: Line 143:
  
 
==在线支付系统==
 
==在线支付系统==
请参阅 [[Online payment system|在线支付系统]] 。
+
请参阅 [[在线支付系统]] 。
  
==其他内部功能==
+
==其他内部函数==
 
您的代码可以使用许多内部库。
 
您的代码可以使用许多内部库。
  
Line 172: Line 170:
 
=与其他应用程序的接口和链接=
 
=与其他应用程序的接口和链接=
  
#[[Interfaces Dolibarr toward foreign systems]] or toward Dolibarr (Dolibarr Triggers)
+
#[[Dolibarr到外部系统的接口]] 或 Dolibarr到Dolibarr的接口(Dolibarr触发器或钩子)
#[[Interfaces from foreign systems toward Dolibarr]]
+
#[[外部系统到Dolibarr的接口]]
 
#[[Module Web Services|Web Services]]
 
#[[Module Web Services|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=
 
=FAQ=
All FAQs are available through the FAQ index page [[:Category:FAQ EN|FAQ EN]]
+
所有常见问题(FAQs)解答均可通过 FAQ 索引页面 [[:Category:FAQ EN|FAQ EN]] 获取。

Latest revision as of 08:37, 12 October 2023


页是与开发者文档相关的文章索引。有关使用者文档,请参阅 用户手册


组织和开发工具

本章包含在开始任何Dolibarr开发行动之前需要阅读的一般信息。

  1. 项目组织
  2. 在开始开发之前要了解的信息
  3. 环境和开发工具
  4. 外部库和依赖项
  5. 获取、更新版本的源代码

编码规则和最佳实践

  1. 前提条件
  2. 开发语言和编码规范(PHP, SQL, HTML)
  3. 数据库表清单
  4. 核心文件和类树结构请参阅: doxygen生成的文档

模块清单

特定于Dolibarr标准功能模块的技术文档在每个模块的开发文档页上定义。请选择要访问的页面:

为 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 为外部系统提供可访问的服务。

请参阅 提供REST API的Web服务模块(开发者)

注意:提供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)
{
 ...
}

批量导入/导出

  1. 批量导入
  2. 导出模块

与其他应用程序的接口和链接

  1. Dolibarr到外部系统的接口 或 Dolibarr到Dolibarr的接口(Dolibarr触发器或钩子)
  2. 外部系统到Dolibarr的接口
  3. Web Services

将 Dolibarr 集成到自动化平台

FAQ

所有常见问题(FAQs)解答均可通过 FAQ 索引页面 FAQ EN 获取。