Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
18 Trả lời
48418 Lượt xem

Hi Forum.

the module most add some fields to product.product normal view. i coped the dir to /usr/lib/pymodules/python2.7/openerp/addons/sol_products

are the modules dos not shown in the module list. (installed Modules, apps)

__init__.py

   import sol_product_fields

__openerp__.py

{
    'name': 'Sol Product Fields',
    'version': '1.0',
    'category': 'Product',
    'description': "This module will added some spacial fields to Products View Form, and remove the EAN13 Barcode",
    'author': 'xxxx',
    'website': '',
    'depends': ['base'],
     'demo': [],
    'update_xml':['update.xml'],
    'installable': True,
    'auto_install': False,
    'web': True,
    'js': [],
    'qweb' : [],
    'images': [],
    'css': [],
}

sol_product_fields.py

  from openerp.osv import fields, osv

class product_product(osv.osv):

   _inherit = "product.product"
  _columns = {

            'product_category' : fields.selection([('MCB','MCB'),('Switches','Switches'),('Recepticals','Recepticals')],'Pruduct Category'),
            'corve_ka_rating' : fields.selection([('3kA','3kA'),('6kA','6kA')],'Corve kA Rating'),
            'corve_Pole' : fields.selection([("Pole 1","P1"),("Pole 1+N","P1+N"),("Pole 2","P2"),("Pole 3","P3"),("Pole 4","P4")],'Pole'),
            'corve_current' : fields.selection([('10A','10A'),('16A','16A'),('20A','20A'),('32A','32A'),('40A','40A'),('50A','50A'),('63A','63A')],'Current'),
            'corve_hugh_code': fields.char('Corve Hugh Code ',size=32,required=True, help='Imput Hugh Code'),
    }



product_product()

update.xml

    <?xml version="1.0" encoding="utf-8"?>
<openerp>
  <data>
        <record id="sol_product_normal_form_view" model="ir.ui.view">
          <field name="name">product.normal.form</field>
            <field name="model">product.product</field>
             <field name="inherit_id" ref="product.product_normal_form_view"/>
               <field name="arch" type="xml">
                  <field name="list_price" position="after">
                    <field name="product_category"/>
                    <field name="corve_Pole" attrs="{'invisible': [('product_category', '!=', 'MCB') ] }"/>
                    <field name="corve_current" attrs="{'invisible': [('product_category', '!=', 'MCB') ] }"/>
                    <field name="corve_ka_rating" attrs="{'invisible': [('product_category', '!=', 'MCB') ] }"/>
                    <field name="corve_hugh_code" attrs="{'invisible': [('product_category', '!=', 'MCB') ] }"/>
                  </field>
               </field>
          </record>
        </data>
</openerp>
Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

First correct your code:

file __openerp__.py:

# needs quotes.
'data': [], # remove this
'demo': [],
'update_xml':['update.xml', 'sol_product_fields_view.xml'], # update this

Click on Settings > Modules > Update Modules List

Once the update is done, go to Settings > Modules > Installed Modules and remove the Installed filter in the search box, after that just search for your module name and it should show up.

Note: In Settings > Users > Users, make sure you have checked the Technical Features access right for your current user.

Ảnh đại diện
Huỷ bỏ

Dont forget to restart openerp

It isn't necessary in the case of a newly added module.

Tác giả

Hi Karim. already doit before i make this post. do it agen takes no effect. Mybe mi module is wrong ?

Please check my cod.

I updated my answer, please check it. if that doesn't work, please paste the last errors that you can find in OpenERP's log file.

Tác giả

Hi Karim. Ok now is visible in the modules. are installation failed:

ValidateError

Error occurred while validating the field(s) arch: Invalid XML for View Architecture!

I updated my answer, check it. Just remove data and put its content in update_xml, don't forget to restart the server before trying to install the module.

Tác giả

Ok i updatet my Code in first Post now i get the errors The file is UTF8 coded an edited by Kate

Error: File "/usr/lib/pymodules/python2.7/openerp/addons/sol_products/sol_product_fields.py", line 7 _columns = {' ^ IndentationError: unindent does not match any outer indentation level

Please make sure your code indentations are correct, look in line 7

Tác giả

i updated code see first post. now i removed all taps with 4 x space. Created in eclipse.

now i get error Error occurred while validating the field(s) arch: Invalid XML for View Architecture!

Other Tested code gif the same error <xpath expr="/form/sheet/notebook/information/group/group[1]/field[@name='list_price']" position="after"> <field name="product_category"/> .. .. </xpath> </field>

In __openerp__.py move the value from data to update_xml

Tác giả

ok Now i found the error. i removed the record to remove ean13 and do a separate module for ean13

Just on question to you. How to remove div, groups, labels, buttons... via custom module ??

I think you can use xpath to achieve those changes, but sometimes it won't work because other forms depend on some elements that you are trying to remove.

Tác giả

ok find Dank you very much for your help

You are welcome :-)

Câu trả lời hay nhất

You have to press Update Module List first, and then go to Installed modules and remove the Installed filter

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Put your name of the module in double quotes. 

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

If you are running V9 then you need to enable Developer Mode first by Small_Help_Icon(top right corner) -> About -> Activate Developer Mode.

This is required for most of the menus that are mentioned in the other answers to show up.

Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
4
thg 6 24
7744
1
thg 4 21
5981
2
thg 4 15
4781
3
thg 1 24
12328
1
thg 3 15
4166