OpenERP 模块描述文件 : __openerp__.py

一般模块

在已创建模块的目录下,你必须添加一个__openerp__.py文件。这个文件必须在Python的格式下,负责:

  1. 确定所需的XML文件,server在进行初始化时将从语法上分析这些文件。

  2. 1.确定已创建模块的依赖。

这个文件包括下面的值:

name

(英文)名称.

version

版本

description

描述

author

模块的作者

website

模块的网站

license

模块的授权协议(默认AGPL).

depends

列出该模块所依赖的其他模块,因为base模块包括模块必须的视图,报表等数据,所以base模块应该在其他所有模块的依赖中。

init_xml

List of .xml files to load when the server is launched with the “—init=module” argument. Filepaths must be relative to the directory where the module is. OpenERP XML File Format is detailed in this section.

update_xml

List of .xml files to load when the server is launched with the “—update=module” launched. Filepaths must be relative to the directory where the module is. OpenERP XML File Format is detailed in this section.

installable

True或是False,决定这个模块是否可安装。

active

True或是False(默认是False),决定这个模块在数据库创建时是否安装。

例子

以product模块中的__openerp__.py为例:

  1. {
  2. "name" : "Products & Pricelists",
  3. "version" : "1.1",
  4. "author" : "Open",
  5. "category" : "Generic Modules/Inventory Control",
  6. "depends" : ["base", "account"],
  7. "init_xml" : [],
  8. "demo_xml" : ["product_demo.xml"],
  9. "update_xml" : ["product_data.xml","product_report.xml", "product_wizard.xml","product_view.xml", "pricelist_view.xml"],
  10. "installable": True,
  11. "active": True
  12. }

放置在init_xml中的文件必须要么是和工作流相关,要么是安装软件时装载数据相关,或是和示例数据相关。

update_xml中的文件涉及到视图,报表和向导。

Profile 模块

一个profile的目的是在数据库创建后直接使用一组模块来初始化OpenERP。这个profile是一种特殊的模块,它不包含代码,只是 依赖于其他的模块

为了创建一个新的profile,你需要在server/addons里建一个新目录(可以给它取名为profile_modulename)。在新目录里放一个空的__init__.py文件和__openerp__.py。这个文件的结构是:

  1. {
  2. "name":"''Name of the Profile'',
  3. "version":"''Version String''",
  4. "author":"''Author Name''",
  5. "category":"Profile",
  6. "depends":[''List of the modules to install with the profile''],
  7. "demo_xml":[],
  8. "update_xml":[],
  9. "active":False,
  10. "installable":True,
  11. }

例子

我们以文件server/bin/addons/profile_manufacturing/__openerp__.py中的代码为例,它对应着OpenERP中的manufacturing industry profile。

  1. {
  2. "name":"Manufacturing industry profile",
  3. "version":"1.1",
  4. "author":"Open",
  5. "category":"Profile",
  6. "depends":["mrp", "crm", "sale", "delivery"],
  7. "demo_xml":[],
  8. "update_xml":[],
  9. "active":False,
  10. "installable":True,
  11. }