跳至内容
菜单
此问题已终结
1 回复
4450 查看

Hello,

I'm using Odoo 13.0. I have added a field in a tree view with a progressbar widget. But I'm not able to edit this field.

Here is my view code :

<record id="view_task_tree2_inherited_inherited" model="ir.ui.view">
  <field name="name">project.task.tree.inherited.inherited</field>
  <field name="model">project.task</field>
  <field name="inherit_id" ref="hr_timesheet.view_task_tree2_inherited"/>
  <field eval="2" name="priority"/>
  <field name="arch" type="xml">
  <xpath expr="/tree" position="attributes">
  <attribute name="editable">top</attribute>
  </xpath>
  <field name="effective_hours" position="after">
  <field name="real_estimated_progress" widget="progressbar" readonly="0" optional="show"
groups="hr_timesheet.group_hr_timesheet_user"/>
  </field>
  </field>
</record>

Is it possible to edit a field having widget attributes defined to "progressbar" ?

Thank's a lot.

形象
丢弃
编写者

Same problem in form view for the field having widget "progressbar" defined.

编写者

if I remove the "widget="progressbar"" attribute, the field becomes editable. But it's not that I want. I want to edit the field from the progressbar. Is it possible ?

最佳答案

Hello Mathieu
When you have used widget progressbar you can edit field with help of passing options="{'editable': true}" in field.
EX:

<field name="real_estimated_progress" widget="progressbar" readonly="0" optional="show"
 groups="hr_timesheet.group_hr_timesheet_user" options="{'editable':true}" />

Note:If your field is compute then Make sure to write inverse function to make it editable.
Thanks
Edited:

形象
丢弃
编写者

Sorry but the field is still not editable even with the option defined. The field is still white (not grey like a readonly one) but not editable because of the progressbar display.

Make sure your filed is not compute and if not then clicking on field will allow to edit value when you will use above attribute.

编写者

@husain , the filed is not compute. Here is its definition :

class Task(models.Model):

_inherit = "project.task"

real_estimated_progress = fields.Integer("Real estimated progress", store=True, group_operator="avg", help="Display estimated real progression of current task; in terms of work instead of time spent.")

@Mathieu

Please refer image attached to answer.May be you are not clicking on field after applying option attribute.

You need to click the field in edit mode to change the value.

编写者

Yes, I made a new try after uninstalling my module and reinstalling it and it works perfectly now ! You were right.

I want to thank you for your help and above all your patience.

Thank's a lot

相关帖文 回复 查看 活动
2
9月 20
3353
1
1月 20
5503
2
12月 22
4873
1
12月 21
3825
0
11月 21
3058