Odoo Help

5

1
6 Answers
4
Avatar

Sudhir Arya (ERP Harbor Consulting Services) India

--Sudhir Arya (ERP Harbor Consulting Services)--
26747
| 8 9 10
Ahmedabad, India
--Sudhir Arya (ERP Harbor Consulting Services)--

• Co-Founder & Co-Owner at ERP Harbor Consulting Services

• ERP Consultant / ERP Customization / TechnoFunctional Expert

• Sound knowledge in Python, Odoo (Open ERP), XML, PostgreSQL

• Domain knowledge of Sale Management, Purchase Management, Warehouse Management, Manufacturing, Multi Company Configuration & Management, HR Management, Medical Management, Construction Management, Education Management, Point of Sale, Third Party Integrations

• Positive attitude and quick Learner

• Good analytical skill, quick bug and issue tracing and find the solution

• Good knowledge and experience in payment gateway integration with Odoo

• Ready to accept new challenges

• Active Memeber On Stackoverflow 

LinkedIn

Blog

Stackoverflow

ERP Harbor Consulting Services

Skype:sudhir@erpharbor.com
Website: http://www.erpharbor.com
Sudhir Arya (ERP Harbor Consulting Services) India
4/10/13, 6:47 AM

This could resolve your issue. ImportError: No module named wizard

You can see difference between Interface Wizard and Memory Wizard.

You can follow the given conversion steps for conversion:


Convert wizard.interface class into osv.osv_memeory class:

class wizard_class(wizard.interface):

Convert it like this:

class wizard_class(osv.osv_memeory):

and write _columns and methods inside this class.


Convert views from py to xml:

my_form = <?xml version="1.0"?>
<form string="Category Summary">
    <group colspan="4">
        <button name="check" type="object"/>
    </group>
</form>

Convert fields into osv.fields inside _columns:

my_fields = { 'partner_id': {'string': 'Partner', 'type': 'many2one', 'relation':'res.partner',}, }

Convert it like this:

_columns = {
    'partner_id': fields.many2one('res.partner', 'Partner'),
}

If there is any methods, put them inside the class.


Understand the flow first then remove following code from interface py:

states = {
    'init': {
        'actions': [],
        'result': {'type':'form', 'arch':my_form, 'fields':my_fields, 'state':[
            ('end','Cancel'), ('check','Print')]}
    },
    'check': {
        'actions': [],
        'result': {'type':'print', 'report': 'report_name',  'state':'end'}
    },
}

Here ('check','Print') is called from <button="check" which then call given report.

This are the rough steps, not standard steps. I follow this steps for conversion.

Hope this will help you.

Thank you.

5 Comments
Micha Wagner
4/10/13, 7:14 AM

I've seen this post, but I don't understand, how I should convert it to "osv.TransientModel". And why TransientModel.. I don't get it..

Sudhir Arya (ERP Harbor Consulting Services) India
4/10/13, 9:12 AM

In short you have to convert it into osv.osv_memeory wizard.

Micha Wagner
4/10/13, 9:22 AM

I hope you mean I should just replace the occurence "wizard.instance" within the code with "osv.osv_memory" - but I think, you mean something more complicated... I'll try

Sudhir Arya (ERP Harbor Consulting Services) India
4/10/13, 9:39 AM

In v7 osv.osv_memory is deprecated and you should use osv.TransientModel instead.

charlesraj India
6/19/13, 7:59 AM

hi . i will make changes that mentioned above. But the same error "wizard_cheque_state_process.py", line 21, in <module> ImportError: No module named wizard" is appeared while trying to install the loan module.

0
Laoyumi China
4/10/13, 11:12 PM

I managed to install "product_variant_multi" on V7!

Found that there is another "addons" directory under server, in my case "/opt/openerp/server/openerp/addons". Copied the "product_variant_multi.zip" in there and then logged in as "admin" went to "Settings - Update Modules List".

After this it listed under "Installed Modules" with filter removed.

PS: This method worked also with "product_variant_configurator.zip" but failed so far with "sale_product_multistep_configurator.zip". Do not know why!

1 Comment
Micha Wagner
4/11/13, 9:35 AM

Strange... I only find a directory called psa/ - there is no openerp. But if I read the comments about product_variant_configurator in http://apps.openerp.com it is normal that it works on v7. Although, there are some error appearing (look at the errors), but thx.

0
Cyrus Waithaka Kenya
9/17/14, 10:13 AM

Check your addons folder to see if you have wizard.zip. Or you could remove any .zip folders that you have added to the addons folder lately.

0
Avatar

Francesco OpenCode Italy

--Francesco OpenCode--

3949
| 7 8 11
Grottaglie, Italy
--Francesco OpenCode--

Italian Odoo Developer. Python lover. Beer addicted.

LINKEDIN: http://www.linkedin.com/in/francescoapruzzese

Francesco OpenCode Italy
4/10/13, 6:25 AM

Are you passing the web/addons path to your OpenERP installation? If you run OpenERP by command line, you can do something like this:

python server/openerp-server --log-level=debug --addons-path=/home/user/openerp/addons/,/home/user/openerp/web/addons/, -r openerp_user -w openerp_password

note: /home/user/openerp/web/addons/

1 Comment
Micha Wagner
4/10/13, 7:13 AM

Well, I've put the module inside /usr/lib/pymodules/python2.7/openerp/addons like I've read on several posts inside the forum. Is it important to use /home/user/openerp/addons/ ? So I'm not explicitly passing the path. There is no need to because /usr/lib/pymodules/python2.7/openerp/addons is default.

0
Avatar

Med Said BARA Algeria

--Med Said BARA--

2879
| 6 5 10
Guelma, Algeria
--Med Said BARA--


Med Said BARA Algeria
9/18/14, 11:13 AM

The error you get is because you are using account_banking from V6.1 or V6.0.

The solution is to use the right module version for V7.0

0
Micha Wagner
4/10/13, 7:24 AM

Sudhir Arya: In your linked thread you explained, it could be fixed like following:

I guess there might be a wizard.interface somewhere in your module.

OpenERP v5, v6 and v6.1 supports wizard.interface but v7 does not support it anymore.

You have convert those interface wizards into osv.TransientModel, after that your module will be installed in version-7.

But how do I convert it to osv.TransientModel? Inside my account banking module I've found one occurence of wizard.interface:

import wizard import pooler

class payment_manual(wizard.interface): def _action_set_state_sent(self, cursor, uid, data, context):

How do I convert it to the transien model thing?

Thanks!

Ask a Question
Writer
Keep Informed
3 follower(s)
About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.

Register
Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now