[IMP] base: each ir.module.category will be assigned with an
autogenerated xml-id during the creation of the database [IMP] base: Create the records for the categories of OpenERP bzr revid: stw@openerp.com-20110929115515-rqlwqfzndxblxqtz
This commit is contained in:
@@ -42,13 +42,13 @@ from osv import fields, osv, orm
|
||||
|
||||
|
||||
ACTION_DICT = {
|
||||
'view_type': 'form',
|
||||
'view_mode': 'form',
|
||||
'res_model': 'base.module.upgrade',
|
||||
'target': 'new',
|
||||
'type': 'ir.actions.act_window',
|
||||
'nodestroy':True,
|
||||
}
|
||||
'view_type': 'form',
|
||||
'view_mode': 'form',
|
||||
'res_model': 'base.module.upgrade',
|
||||
'target': 'new',
|
||||
'type': 'ir.actions.act_window',
|
||||
'nodestroy':True,
|
||||
}
|
||||
|
||||
class module_category(osv.osv):
|
||||
_name = "ir.module.category"
|
||||
@@ -70,11 +70,25 @@ class module_category(osv.osv):
|
||||
result.get(id, 0))
|
||||
return result
|
||||
|
||||
def name_get(self, cr, uid, ids, context=None):
|
||||
result = []
|
||||
|
||||
reads = self.read(cr, uid, ids, ['name', 'parent_id'], context=context)
|
||||
for record in reads:
|
||||
name = record['name']
|
||||
if record['parent_id']:
|
||||
name = record['parent_id'][1] + ' / ' + name
|
||||
result.append((record['id'], name,))
|
||||
|
||||
return result
|
||||
|
||||
_columns = {
|
||||
'name': fields.char("Name", size=128, required=True, select=True),
|
||||
'parent_id': fields.many2one('ir.module.category', 'Parent Category', select=True),
|
||||
'child_ids': fields.one2many('ir.module.category', 'parent_id', 'Child Categories'),
|
||||
'module_nr': fields.function(_module_nbr, method=True, string='Number of Modules', type='integer')
|
||||
'module_nr': fields.function(_module_nbr, method=True, string='Number of Modules', type='integer'),
|
||||
'module_ids' : fields.one2many('ir.module.module', 'category_id', 'Modules'),
|
||||
'description' : fields.text("Description"),
|
||||
}
|
||||
_order = 'name'
|
||||
module_category()
|
||||
|
||||
@@ -1,6 +1,84 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
<record model="ir.module.category" id="module_category_customer_relationship_management">
|
||||
<field name="name">Customer Relationship Management</field>
|
||||
<field name="description">Helps you track and manage relations with customers such as leads, requests or issues. Can automatically send reminders, escalate requests or trigger business-specific actions based on standard events.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_sales_management">
|
||||
<field name="name">Sales Management</field>
|
||||
<field name="description">Helps you handle your quotations, sale orders and invoicing.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_project_management">
|
||||
<field name="name">Project Management</field>
|
||||
<field name="description">Helps you manage your projects and tasks by tracking them, generating plannings, etc...</field>
|
||||
</record>
|
||||
|
||||
|
||||
<record model="ir.module.category" id="module_category_knowledge_management">
|
||||
<field name="name">Knowledge Management</field>
|
||||
<field name="description">Lets you install addons geared towards sharing knowledge with and between your employees.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_warehouse_management">
|
||||
<field name="name">Warehouse Management</field>
|
||||
<field name="description">Helps you manage your inventory and main stock operations: delivery orders, receptions, etc.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_manufacturing">
|
||||
<field name="name">Manufacturing</field>
|
||||
<field name="description">Helps you manage your manufacturing processes and generate reports on those processes.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_account_voucher">
|
||||
<field name="name">Invoicing & Payments</field>
|
||||
<field name="description">Allows you to create your invoices and track the payments. It is an easier version of the accounting module for managers who are not accountants.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_accounting_and_finance">
|
||||
<field name="name">Accounting & Finance</field>
|
||||
<field name="description">Helps you handle your accounting needs, if you are not an accountant, we suggest you to install only the Invoicing.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_purchase_management">
|
||||
<field name="name">Purchase Management</field>
|
||||
<field name="description">Helps you manage your purchase-related processes such as requests for quotations, supplier invoices, etc...</field>
|
||||
</record>
|
||||
<record model="ir.module.category" id="module_category_human_resources">
|
||||
<field name="name">Human Resources</field>
|
||||
<field name="description">Helps you manage your human resources by encoding your employees structure, generating work sheets, tracking attendance and more.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_point_of_sale">
|
||||
<field name="name">Point of Sales</field>
|
||||
<field name="description">Helps you get the most out of your points of sales with fast sale encoding, simplified payment mode encoding, automatic picking lists generation and more.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_marketing">
|
||||
<field name="name">Marketing</field>
|
||||
<field name="description">Helps you manage your marketing campaigns step by step.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_tools">
|
||||
<field name="name">Extra Tools</field>
|
||||
<field name="description">Lets you install various interesting but non-essential tools like Survey, Lunch and Ideas box.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_report_designer">
|
||||
<field name="name">Advanced Reporting</field>
|
||||
<field name="description">Lets you install various tools to simplify and enhance OpenERP's report creation.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_localization">
|
||||
<field name="name">Localization</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.module.category" id="module_category_localization_account_charts">
|
||||
<field name="name">Account Charts</field>
|
||||
</record>
|
||||
|
||||
<!-- <record id="ir_ui_view_sc_modules0" model="ir.ui.view_sc">-->
|
||||
<!-- <field name="name">Modules</field>-->
|
||||
<!-- <field name="resource">ir.ui.menu</field>-->
|
||||
|
||||
@@ -102,7 +102,9 @@ def create_categories(cr, categories):
|
||||
|
||||
"""
|
||||
p_id = None
|
||||
category = []
|
||||
while categories:
|
||||
category.append(categories[0])
|
||||
if p_id is not None:
|
||||
cr.execute('SELECT id \
|
||||
FROM ir_module_category \
|
||||
@@ -117,6 +119,9 @@ def create_categories(cr, categories):
|
||||
(name, parent_id) \
|
||||
VALUES (%s, %s) RETURNING id', (categories[0], p_id))
|
||||
c_id = cr.fetchone()[0]
|
||||
xml_id = 'module_category_' + ('_'.join(map(lambda x: x.lower(), category))).replace('&', 'and').replace(' ', '_')
|
||||
cr.execute('INSERT INTO ir_model_data (module, name, res_id, model) \
|
||||
VALUES (%s, %s, %s, %s)', ('base', xml_id, c_id, 'ir.module.category'))
|
||||
else:
|
||||
c_id = c_id[0]
|
||||
p_id = c_id
|
||||
|
||||
Reference in New Issue
Block a user