diff --git a/bin/addons/base/ir/ir.xml b/bin/addons/base/ir/ir.xml
index 7b9b6f4ba135e13b32407b9db3f8c19274e3a174..6f55a5cdb6ede49894cbbc86277a85a10e4e94c2 100644
--- a/bin/addons/base/ir/ir.xml
+++ b/bin/addons/base/ir/ir.xml
@@ -172,7 +172,7 @@
             <field name="arch" type="xml">
                 <form string="Sequence Type">
                     <field name="name" select="1"/>
-                    <field name="code" readonly="1"/>
+                    <field name="code"/>
                 </form>
             </field>
         </record>
diff --git a/bin/osv/orm.py b/bin/osv/orm.py
index 47036787211753303f86db94914a5e7564428e61..bd1fc41f2a548ee951df9280005bbbb60b8b82f9 100644
--- a/bin/osv/orm.py
+++ b/bin/osv/orm.py
@@ -2286,7 +2286,7 @@ class orm(orm_template):
             else:
                 for id in ids:
                     if vals[self._parent_name]:
-                        cr.execute('select parent_left,parent_right,id from '+self._table+' where parent_id=%s order by '+(self._parent_order or self._order), (vals[self._parent_name],))
+                        cr.execute('select parent_left,parent_right,id from '+self._table+' where '+self._parent_name+'=%s order by '+(self._parent_order or self._order), (vals[self._parent_name],))
                         pleft_old = pright_old = None
                         result_p = cr.fetchall()
                         for (pleft,pright,pid) in result_p:
@@ -2456,7 +2456,7 @@ class orm(orm_template):
             else:
                 parent = vals.get(self._parent_name, False)
                 if parent:
-                    cr.execute('select parent_right from '+self._table+' where parent_id=%s order by '+(self._parent_order or self._order), (parent,))
+                    cr.execute('select parent_right from '+self._table+' where '+self._parent_name+'=%s order by '+(self._parent_order or self._order), (parent,))
                     pleft_old = None
                     result_p = cr.fetchall()
                     for (pleft,) in result_p: