Odoo Help

Welcome!

This community 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.

0

TypeError: Invalid attribute dictionary: str

By
oumaima
on 6/3/13, 11:37 AM 1,541 views

Hi everyone,i try to update the module calendar.event and to link it with another class but when i try to open the calendar view relating to emploi.temps i have this error : TypeError: Invalid attribute dictionary: str and when i try to add a new meeting in the class professeur.entity i have a disorganized calendar view??any idea please

emploi.py

class professeur_entity(osv.osv):

_name = 'professeur.entity'
_columns = {
    'name': fields.char('Nom', required=True, size=32),
    'prenom': fields.char('Prenom', required=True, size=32),
    'emp_ids': fields.one2many('emploi.temps','professeur_id', 'Emploi'),
}

professeur_entity()

class emploi_temps(osv.osv):

_name = 'emploi.temps'
_inherit = 'calendar.event'
_columns = {
  'professeur_id': fields.many2one('professeur.entity','Professeur', required=True),
}

emploi_temps()

emploi_view.xml

enter code here<?xml version="1.0" encoding="utf-8"?>

<openerp> <data>

<!-- <menuitem name="Gestion Emploi" id="menu_principal"/>-->


<!--  ce menu est celui existant dans la barre en haut -->
<menuitem name="Gestion professeur" id="menu_prof"/>

<menuitem name="Enseignant" id="menu_prof1" parent="menu_prof"/>

<record model="ir.ui.view" id="view_school_prof_form">
    <field name="name">prof.form</field>
    <field name="model">professeur.entity</field>
    <field name="type">form</field>
    <field name="arch" type="xml">
       <form string="Enseignant"  version="7.0">
           <group col="4" colspan="6">       
               <field name="name"/>
               <field name="prenom"/>
               <field name="emp_ids" colspan="4" nolabel="1" />
            </group>

       </form>
    </field>
</record>   

    <record model="ir.ui.view" id="view_school_prof_tree">
    <field name="name">prof.tree</field>
    <field name="model">professeur.entity</field>
    <field name="type">tree</field>
    <field name="arch" type="xml">
        <tree string="Enseignants"  version="7.0">
               <field name="name"/>
               <field name="prenom"/>

       </tree>
    </field>
</record>

<record model="ir.actions.act_window" id="action_school_prof_form">
    <field name="name">Liste des enseignants</field>
    <field name="res_model">professeur.entity</field>
    <field name="view_type">form</field>
    <field name="view_mode">tree,form</field>
</record>

    <!--  Et finalement il y a le menu qui contient l'action pour ouvrir la vue tree de ton module -->

<menuitem action="action_school_prof_form" id="menu_prof2" parent="menu_prof1" />

<menuitem name="Emploi" parent="menu_prof" id="menu"/>

 <record model="ir.ui.view" id="event_form_view_inherit">
        <field name="name">emploi.temps.form</field>
        <field name="model">emploi.temps</field>
        <field name="inherit_id" ref="base_calendar.event_form_view"/>
        <field name="type">form</field>
        <field name="arch" type="xml">
            <field name="name" position="after">
      <field name="professeur_id" />

    </field>
        <field name="state" position="replace"/>
        </field>
    </record>


 <record model="ir.ui.view" id="event_tree_view_inherit">
        <field name="name">emploi.temps.tree</field>
        <field name="model">emploi.temps</field>
        <field name="inherit_id" ref="base_calendar.event_tree_view"/>
        <field name="type">tree</field>
        <field name="arch" type="xml">
            <field name="name" position="after">
      <field name="professeur_id" />
    </field>
        <field name="state" position="replace"/>
        </field>
    </record>


 <record model="ir.ui.view" id="event_calendar_view_inherit">
        <field name="name">emploi.temps.calendar</field>
        <field name="model">emploi.temps</field>
        <field name="inherit_id" ref="base_calendar.event_calendar_view"/>
        <field name="type">calendar</field>
        <field name="arch" type="xml">
          <calendar string="Events" date_start="date" color="show_as" date_delay="duration">
                <field name="name"/>
                <field name="class"/>
                <field name="show_as"/>
            </calendar>
        </field>
    </record>




     <record model="ir.actions.act_window" id="action_school_emploi_form">
    <field name="name">Emploi du temps</field>
    <field name="res_model">emploi.temps</field>
    <field name="view_type">form</field>
    <field name="view_mode">tree,form,calendar</field>
</record>

<menuitem name="Gestion d'emploi du temps" action="action_school_emploi_form" id="emploi" parent="menu" />

</data> </openerp>

#Traceback

OpenERP Server Error Client Traceback (most recent call last):
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\http.py", line 203, in dispatch
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\controllers\main.py", line 1129, in call_kw
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\controllers\main.py", line 1121, in _call_kw
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\session.py", line 43, in proxy
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\session.py", line 31, in proxy_method
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\session.py", line 104, in send

Server Traceback (most recent call last):
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\session.py", line 90, in send
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\netsvc.py", line 293, in dispatch_rpc
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\service\web_services.py", line 626, in dispatch
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\osv.py", line 188, in execute_kw
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\osv.py", line 131, in wrapper
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\osv.py", line 197, in execute
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\osv.py", line 185, in execute_cr
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\orm.py", line 2244, in fields_view_get
  File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\orm.py", line 2010, in _get_default_calendar_view
  File "lxml.etree.pyx", line 2443, in lxml.etree.SubElement (src/lxml/lxml.etree.c:47341)
  File "apihelpers.pxi", line 204, in lxml.etree._makeSubElement (src/lxml/lxml.etree.c:11274)
  File "apihelpers.pxi", line 265, in lxml.etree._initNodeAttributes (src/lxml/lxml.etree.c:11823)
  TypeError: Invalid attribute dictionary: str

Can you give us the stacktrace, or the relevant lines from openerp-server.log? That will definitely help finding the error.

patrick
on 6/3/13, 4:38 PM

Hi thank you for youre reply i made the whole error
below

oumaima
on 6/3/13, 4:43 PM

added the error to your question.

patrick
on 6/3/13, 4:48 PM

Hi,i added the whole error to my question;any idea please??

oumaima
on 6/4/13, 6:59 AM
0
oumaima
On 6/6/13, 8:20 AM

Hi everyone, finally it work's;i'll share the right code;

from osv import fields,osv

import time from datetime import datetime from tools.translate import _

class professeur_entity(osv.osv):

_name = 'professeur.entity'
_inherit=['crm.meeting','calendar.event']
_columns = {
    'name': fields.char('Nom', required=True, size=32),
    'prenom': fields.char('Prenom', required=True, size=32),
    'emp_ids':fields.many2one('crm.meeting','Emploi', required=True),
}

professeur_entity()

enter code here<openerp>

<data>

<menuitem name="Gestion professeur" id="menu_prof"/>

<menuitem name="Enseignant" id="menu_prof1" parent="menu_prof"/>

<record model="ir.ui.view" id="view_school_prof_form"> <field name="name">prof.form</field> <field name="model">professeur.entity</field> <field name="type">form</field> <field name="arch" type="xml"> <form string="Enseignant" version="7.0"> <group col="4" colspan="6">
<field name="name"/> <field name="prenom"/> <field name="emp_ids" context="{'form_view_ref':'base_calendar.view_crm_meeting_calendar'}"/> </group>

   </form>
</field>

</record>

<record model="ir.ui.view" id="view_school_prof_tree">
<field name="name">prof.tree</field>
<field name="model">professeur.entity</field>
<field name="type">tree</field>
<field name="arch" type="xml">
    <tree string="Enseignants"  version="7.0">
           <field name="name"/>
           <field name="prenom"/>

   </tree>
</field>

</record>

<record model="ir.actions.act_window" id="action_school_prof_form"> <field name="name">Liste des enseignants</field> <field name="res_model">professeur.entity</field> <field name="view_type">form</field>
<field name="view_id" ref="base_calendar.view_crm_meeting_calendar"/> <field name="view_mode">tree,form,calendar</field> </record>

<!--  Et finalement il y a le menu qui contient l'action pour ouvrir la vue tree de ton module -->

<menuitem action="action_school_prof_form" id="menu_prof2" parent="menu_prof1"/>

0
Ranjith Kurungadam
On 6/4/13, 1:30 PM

Hi, Im new here. Just try removing the inherited calender view if you don't want to modify it. If you want to add your fields to calender do it just as you did it for tree and form.

Check "_name" of you class. Its inheriting by prototype. There are bug reports on that.

Hope this helps

Hi thank u for ure answer,i try it but i still have the same error any other idea please

oumaima
on 6/5/13, 2:40 PM

If you are trying to add the field to calender.event you have to give ' _name=calender.event '

Ranjith Kurungadam
on 6/6/13, 7:21 AM

Or else add _table=calender_event for emploi.temp.

Ranjith Kurungadam
on 6/6/13, 7:26 AM

https://doc.openerp.com/trunk/server/03_module_dev_02/#object-inheritance-inherit

Ranjith Kurungadam
on 6/6/13, 7:28 AM

Check the links to find the ways in which you can inherit

Ranjith Kurungadam
on 6/6/13, 7:29 AM

thank you a lot for your replay,i will see it.Now i can show the calendar event view;the problem is that i inherited the bad view i had to inherit for crm.meeting view;i update my question

oumaima
on 6/8/13, 8:36 AM
0
oumaima
On 6/3/13, 4:42 PM

Hi,thank you for you're reply: the whole error is: OpenERP Server Error Client Traceback (most recent call last): File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\http.py", line 203, in dispatch File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\controllers\main.py", line 1129, in call_kw File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\controllers\main.py", line 1121, in _call_kw File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\session.py", line 43, in proxy File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\session.py", line 31, in proxy_method File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\session.py", line 104, in send

Server Traceback (most recent call last): File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server\openerp\addons\web\session.py", line 90, in send File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\netsvc.py", line 293, in dispatch_rpc File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\service\web_services.py", line 626, in dispatch File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\osv.py", line 188, in execute_kw File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\osv.py", line 131, in wrapper File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\osv.py", line 197, in execute File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\osv.py", line 185, in execute_cr File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\orm.py", line 2244, in fields_view_get File "C:\Program Files (x86)\OpenERP 7.0-20130409-232349\Server\server.\openerp\osv\orm.py", line 2010, in _get_default_calendar_view File "lxml.etree.pyx", line 2443, in lxml.etree.SubElement (src/lxml/lxml.etree.c:47341) File "apihelpers.pxi", line 204, in lxml.etree._makeSubElement (src/lxml/lxml.etree.c:11274) File "apihelpers.pxi", line 265, in lxml.etree._initNodeAttributes (src/lxml/lxml.etree.c:11823) TypeError: Invalid attribute dictionary: str

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!

About This Community

This community is for professionals and enthusiasts of our products and services. Read Guidelines

Question tools

1 follower(s)

Stats

Asked: 6/3/13, 11:37 AM
Seen: 1541 times
Last updated: 3/16/15, 8:10 AM