JA Developer documentation: Difference between revisions
(Duplicate From En page) Tag: 2017 source edit |
(見出し翻訳) |
||
| Line 1: | Line 1: | ||
{{DISPLAYTITLE:開発者手引き}} | |||
<seo metak="developer, development, documentation, guide, doc, tutorial, usage, help, api, coding, standard, rules" /> | <seo metak="developer, development, documentation, guide, doc, tutorial, usage, help, api, coding, standard, rules" /> | ||
<!-- BEGIN interlang links --> | <!-- BEGIN interlang links --> | ||
| Line 13: | Line 15: | ||
= | =開発組織とツール= | ||
This chapter contains global information that must be read before starting any development on Dolibarr. | This chapter contains global information that must be read before starting any development on Dolibarr. | ||
| Line 22: | Line 24: | ||
#[[FAQ_Get,update_project_sources|Get or update sources of a development version]] | #[[FAQ_Get,update_project_sources|Get or update sources of a development version]] | ||
= | =コーディング規約とベストプラクティス= | ||
#[[Prerequisite|Prerequisites]] | #[[Prerequisite|Prerequisites]] | ||
| Line 29: | Line 31: | ||
#Tree structure of files and classes are available in the [http://doxygen.dolibarr.org/ doxygen generated documentation] | #Tree structure of files and classes are available in the [http://doxygen.dolibarr.org/ doxygen generated documentation] | ||
= | =モジュールリスト= | ||
Technical documentation on standard business modules is available in each module's developer documentation pages. Choose the appropriate page you are interested in: | Technical documentation on standard business modules is available in each module's developer documentation pages. Choose the appropriate page you are interested in: | ||
| Line 35: | Line 37: | ||
*[[:Category:Complementary modules|List of complementary modules]] | *[[:Category:Complementary modules|List of complementary modules]] | ||
= | =GUI 向けの新 モジュール/アドオン を作るには= | ||
This section describes how to develop a new module changing the Dolibarr user interface. This can be screens, themes, data, its own CSS stylesheet, source code or all of this. | This section describes how to develop a new module changing the Dolibarr user interface. This can be screens, themes, data, its own CSS stylesheet, source code or all of this. | ||
| Line 42: | Line 44: | ||
To develop your own module, check the [[Module development]] tutorial. | To develop your own module, check the [[Module development]] tutorial. | ||
= | =バッチまたはコマンドラインスクリプトを作るには= | ||
This chapter describes how to develop command line scripts to execute tasks in Dolibarr (read, update data...). | This chapter describes how to develop command line scripts to execute tasks in Dolibarr (read, update data...). | ||
| Line 49: | Line 51: | ||
To develop a script, like a cron script or a command line import tool to import data from an external source, you can have a look at the [[Script development]] page. | To develop a script, like a cron script or a command line import tool to import data from an external source, you can have a look at the [[Script development]] page. | ||
=Technical components | =Dolibarr の技術的要素 (Technical components)= | ||
==Tree structure== | ==ツリー構造 (Tree structure)== | ||
The path hierarchy of the current version files is available from the [http://doxygen.dolibarr.org/ doxygen generated documentation] (similar to generated "javadoc" documentation). | The path hierarchy of the current version files is available from the [http://doxygen.dolibarr.org/ doxygen generated documentation] (similar to generated "javadoc" documentation). | ||
Paths to use to add new files by a new module are defined in the documentation to develop a new module (see [[Module development]]). | Paths to use to add new files by a new module are defined in the documentation to develop a new module (see [[Module development]]). | ||
==Setup storage== | ==ストレージ準備 (Setup storage)== | ||
There are 3 places for Dolibarr setup parameters. | There are 3 places for Dolibarr setup parameters. | ||
| Line 68: | Line 70: | ||
*Feature parameters specific to a user are stored in [[Table llx_user_param]]. | *Feature parameters specific to a user are stored in [[Table llx_user_param]]. | ||
==Business objects== | ==ビジネスオブジェクト (Business objects)== | ||
See [[ | See [[ビジネスオブジェクト]] | ||
== | ==メニューシステム (Menu system)== | ||
See [[Menus system]] | See [[Menus system]] | ||
==Tabs system== | ==タブシステム (Tabs system)== | ||
See [[Tabs system]] | See [[Tabs system]] | ||
==Skins system== | ==スキンシステム (Skins system)== | ||
See [[Skins]] | See [[Skins]] | ||
==Widget system== | ==ウィジェットシステム (Widget system)== | ||
See [[Widget system]] | See [[Widget system]] | ||
==Authentication system== | ==認証システム (Authentication system)== | ||
See [[Authentication]] | See [[Authentication]] | ||
==Permission system== | ==許可システム (Permission system)== | ||
See [[Permissions En|Permissions]] | See [[Permissions En|Permissions]] | ||
==Translation system== | ==翻訳システム (Translation system)== | ||
See [[Translation system]] | See [[Translation system]] | ||
==Error management== | ==エラー管理 (Error management)== | ||
See [[Error reporting|Error reporting]] | See [[Error reporting|Error reporting]] | ||
==Canvas system== | ==キャンバスシステム (Canvas system)== | ||
Canvas is a developer feature to replace screens to create, update or view a record (products, thirdparties, contacts, ...). For example, you can replace the input form used to create a new third party, or its editing form, or replace its viewing template. | Canvas is a developer feature to replace screens to create, update or view a record (products, thirdparties, contacts, ...). For example, you can replace the input form used to create a new third party, or its editing form, or replace its viewing template. | ||
See [[Canvas development]] | See [[Canvas development]] | ||
==Triggers system== | ==トリガーシステム (Triggers system)== | ||
Triggers are a development feature to execute personalized code during a Dolibarr "business event" (creation of an invoice, deleting a user, update of third party, etc...), and only for a business event. To personalize code for other contexts, see the '''Hooks system''' chapter instead. | Triggers are a development feature to execute personalized code during a Dolibarr "business event" (creation of an invoice, deleting a user, update of third party, etc...), and only for a business event. To personalize code for other contexts, see the '''Hooks system''' chapter instead. | ||
For triggers usage, see [[Interfaces Dolibarr toward foreign systems|this page]]. | For triggers usage, see [[Interfaces Dolibarr toward foreign systems|this page]]. | ||
==Hooks system== | ==フックシステム (Hooks system)== | ||
See [[Hooks system]] | See [[Hooks system]] | ||
==Variable substitution system== | ==変数置換システム (Variable substitution system)== | ||
See [[Variable substitution system]] | See [[Variable substitution system]] | ||
==Web services== | ==ウェブサービス (Web services)== | ||
Dolibarr can be setup to provide some services. | Dolibarr can be setup to provide some services. | ||
| Line 118: | Line 120: | ||
Note: The [[Module Web Services API SOAP (developer)]] is deprecated. | Note: The [[Module Web Services API SOAP (developer)]] is deprecated. | ||
==Files/Documents storage management== | ==ファイル/書類 ストレージ管理 (Files/Documents storage management)== | ||
See [[Generated documents]] | See [[Generated documents]] | ||
==Numbering modules== | ==番号付けモジュール (Numbering modules)== | ||
For each entity created in the application, Dolibarr assigns a reference. In order to adapt the reference to any use, Dolibarr use modules to define the reference generation rule. Several standard modules are supplied. Some are generic and are used to define the numbering mask (number on x characters, with or without prefix, including the date or not, etc.), which can meet most needs. However, there are still cases where the modules provided don't meet the needs. In this case it is necessary to develop a custom numbering module. | For each entity created in the application, Dolibarr assigns a reference. In order to adapt the reference to any use, Dolibarr use modules to define the reference generation rule. Several standard modules are supplied. Some are generic and are used to define the numbering mask (number on x characters, with or without prefix, including the date or not, etc.), which can meet most needs. However, there are still cases where the modules provided don't meet the needs. In this case it is necessary to develop a custom numbering module. | ||
For more information, see [[Create numeration module|Create numbering module]]. | For more information, see [[Create numeration module|Create numbering module]]. | ||
==Document templates and documents generation== | ==文書テンプレートと文書生成 (Document templates and documents generation)== | ||
More documentation about document generation from templates is available to [[Create a PDF document template]] or [[Create an ODT document template]]. | More documentation about document generation from templates is available to [[Create a PDF document template]] or [[Create an ODT document template]]. | ||
==Extrafields== | ==エクストラフィールド (Extrafields)== | ||
See [[Extrafields]] | See [[Extrafields]] | ||
==Online payment system== | ==オンライン決済システム (Online payment system)== | ||
See [[Online payment system]] | See [[Online payment system]] | ||
==Other internal function== | ==他内部機能 (Other internal function)== | ||
There are many internal libraries your code can use. | There are many internal libraries your code can use. | ||
You may find a lot of generic functions in the functions.lib.php, functions2.lib.php or admin.lib.php. Any function found in htdocs/core/lib/*.lib files can be used. | You may find a lot of generic functions in the functions.lib.php, functions2.lib.php or admin.lib.php. Any function found in htdocs/core/lib/*.lib files can be used. | ||
| Line 144: | Line 146: | ||
For example, to make a condition based on requiring Dolibarr version > 3.5, you can use versioncompare and versiondolibarrarray found in admin.lib.php: | For example, to make a condition based on requiring Dolibarr version > 3.5, you can use versioncompare and versiondolibarrarray found in admin.lib.php: | ||
< | <syntaxhighlight lang="PHP"> | ||
if (versioncompare(versiondolibarrarray(), array(3,5,0)) > 0) | if (versioncompare(versiondolibarrarray(), array(3,5,0)) > 0) | ||
{ | { | ||
... | ... | ||
} | } | ||
</ | </syntaxhighlight> | ||
=Mass exports/imports= | =大量 エクスポート/インポート (Mass exports/imports)= | ||
#[[Mass imports]] | #[[Mass imports]] | ||
#[[Module Exports En|Mass exports]] | #[[Module Exports En|Mass exports]] | ||
=Interfaces and links with other applications= | =他のアプリとのインタフェースやリンク (Interfaces and links with other applications)= | ||
#[[Interfaces Dolibarr toward foreign systems]] or Dolibarr toward Dolibarr (Dolibarr Triggers or Hooks) | #[[Interfaces Dolibarr toward foreign systems]] or Dolibarr toward Dolibarr (Dolibarr Triggers or Hooks) | ||
Revision as of 11:07, 26 April 2023
<seo metak="developer, development, documentation, guide, doc, tutorial, usage, help, api, coding, standard, rules" />
This page is main index of documents relating to developer documentation. For user documentation see here.
開発組織とツール
This chapter contains global information that must be read before starting any development on Dolibarr.
- Organization of project
- To be known before starting to develop
- Environment and development tools
- Dependencies and external libraries
- Get or update sources of a development version
コーディング規約とベストプラクティス
- Prerequisites
- Language and development rules (PHP, SQL, HTML)
- List of tables
- Tree structure of files and classes are available in the doxygen generated documentation
モジュールリスト
Technical documentation on standard business modules is available in each module's developer documentation pages. Choose the appropriate page you are interested in:
GUI 向けの新 モジュール/アドオン を作るには
This section describes how to develop a new module changing the Dolibarr user interface. This can be screens, themes, data, its own CSS stylesheet, source code or all of this.
Script development is not included in this section (this is described in the next chapter).
To develop your own module, check the Module development tutorial.
バッチまたはコマンドラインスクリプトを作るには
This chapter describes how to develop command line scripts to execute tasks in Dolibarr (read, update data...).
Making modifications to the graphical user interface (GUI) is not included in this chapter. See the previous chapter for this.
To develop a script, like a cron script or a command line import tool to import data from an external source, you can have a look at the Script development page.
Dolibarr の技術的要素 (Technical components)
ツリー構造 (Tree structure)
The path hierarchy of the current version files is available from the doxygen generated documentation (similar to generated "javadoc" documentation).
Paths to use to add new files by a new module are defined in the documentation to develop a new module (see Module development).
ストレージ準備 (Setup storage)
There are 3 places for Dolibarr setup parameters.
- Dolibarr technical setup parameters (authentication mode, database logins and storage area for files) are defined in only one setup file:
/conf/conf.php.
- See Configuration file for more information.
- Global features parameters are stored in Table llx_const.
- See the Constants page for more information.
- Feature parameters specific to a user are stored in Table llx_user_param.
ビジネスオブジェクト (Business objects)
See ビジネスオブジェクト
メニューシステム (Menu system)
See Menus system
タブシステム (Tabs system)
See Tabs system
スキンシステム (Skins system)
See Skins
ウィジェットシステム (Widget system)
See Widget system
認証システム (Authentication system)
See Authentication
許可システム (Permission system)
See Permissions
翻訳システム (Translation system)
エラー管理 (Error management)
See Error reporting
キャンバスシステム (Canvas system)
Canvas is a developer feature to replace screens to create, update or view a record (products, thirdparties, contacts, ...). For example, you can replace the input form used to create a new third party, or its editing form, or replace its viewing template.
トリガーシステム (Triggers system)
Triggers are a development feature to execute personalized code during a Dolibarr "business event" (creation of an invoice, deleting a user, update of third party, etc...), and only for a business event. To personalize code for other contexts, see the Hooks system chapter instead.
For triggers usage, see this page.
フックシステム (Hooks system)
See Hooks system
変数置換システム (Variable substitution system)
See Variable substitution system
ウェブサービス (Web services)
Dolibarr can be setup to provide some services.
See Module Web Services API REST (developer)
Note: The Module Web Services API SOAP (developer) is deprecated.
ファイル/書類 ストレージ管理 (Files/Documents storage management)
番号付けモジュール (Numbering modules)
For each entity created in the application, Dolibarr assigns a reference. In order to adapt the reference to any use, Dolibarr use modules to define the reference generation rule. Several standard modules are supplied. Some are generic and are used to define the numbering mask (number on x characters, with or without prefix, including the date or not, etc.), which can meet most needs. However, there are still cases where the modules provided don't meet the needs. In this case it is necessary to develop a custom numbering module.
For more information, see Create numbering module.
文書テンプレートと文書生成 (Document templates and documents generation)
More documentation about document generation from templates is available to Create a PDF document template or Create an ODT document template.
エクストラフィールド (Extrafields)
See Extrafields
オンライン決済システム (Online payment system)
他内部機能 (Other internal function)
There are many internal libraries your code can use. You may find a lot of generic functions in the functions.lib.php, functions2.lib.php or admin.lib.php. Any function found in htdocs/core/lib/*.lib files can be used.
To specify a requirement based on Dolibarr version number
For example, to make a condition based on requiring Dolibarr version > 3.5, you can use versioncompare and versiondolibarrarray found in admin.lib.php:
if (versioncompare(versiondolibarrarray(), array(3,5,0)) > 0)
{
...
}
大量 エクスポート/インポート (Mass exports/imports)
他のアプリとのインタフェースやリンク (Interfaces and links with other applications)
- Interfaces Dolibarr toward foreign systems or Dolibarr toward Dolibarr (Dolibarr Triggers or Hooks)
- Interfaces from foreign systems toward Dolibarr
FAQ
All FAQs are available through the FAQ index page FAQ EN