在 OpenERP 版本 6 中,在我的自定义模块中,我通过继承以下自定义视图来更改时间表表单视图:
<record id="oit_hr_timesheet_sheet_form" model="ir.ui.view">
<field name="name">oit.hr.timesheet.sheet.form</field>
<field name="model">hr_timesheet_sheet.sheet</field>
<field name="inherit_id" ref="hr_timesheet_sheet.hr_timesheet_sheet_form" />
<field name="type">form</field>
<field name="arch" type="xml">
<data>
<button name="sign_in" position="replace"/>
<button name="sign_out" position="replace"/>
<field name="state_attendance" position="after">
<field name="day_attendance"/>
</field>
<field name="total_attendance_day" position="replace"/>
<field name="total_difference_day" position="replace"/>
<field name="total_timesheet_day" position="replace"/>
<field name="timesheet_ids" position="after">
<field name="day_difference"/>
<field name="day_timesheet"/>
</field>
<page string="By Day" position="replace" />
<notebook position="inside">
<page string="Time balance">
<group colspan="4" col="2" width="600">
<field name="time_account_balance"/>
<field name="working_hour"/>
<field name="attendance_hour"/>
<separator string="Timesheet numbers until the viewed working period." colspan="4" />
<field name="total_time_account_balance"/>
<field name="total_working_hour"/>
<field name="total_attendance_hour"/>
</group>
</page>
</notebook>
</data>
</field>
</record>
然后人力资源/时间跟踪/我的时间表表格完全崩溃。但是当我转到管理/自定义/用户界面/菜单项时,我选择“我的时间表”菜单项以将其操作从“ir.actions.server”修复为“ir.actions.act_window”并选择对象“hr_timesheet_sheet. sheet”,然后为对象的表单视图选择我的视图“oit.hr.timesheet.sheet.form”,为对象的树视图选择我的视图“oit.hr.timesheet.sheet.tree.simplified”。
然后我正确显示了“我的时间表”表格。这是为什么?我认为我的视图代码中有一些东西不适用于文件 hr_timesheet_sheet/hr_timesheet_sheet_data.xml 中定义的“我的时间表”菜单和“ir.actions.server”,在这里我将 openerp6 代码粘贴到 hr_timesheet_sheet_data.xml 中:
<record id="ir_actions_server_timsheet_sheet" model="ir.actions.server">
<field eval="5" name="sequence"/>
<field eval=""""code"""" name="state"/>
<field eval=""""ir.actions.server"""" name="type"/>
<field name="model_id" ref="model_hr_timesheet_current_open"/>
<field eval="[(6,0,[])]" name="child_ids"/>
<field eval=""""action = self.pool.get('hr.timesheet.current.open').open_timesheet(cr, uid, object.id, context)"""" name="code"/>
<field eval=""""True"""" name="condition"/>
<field eval=""""My Timesheet"""" name="name"/>
</record>
<record id="menu_act_hr_timesheet_sheet_form_my_current" model="ir.ui.menu">
<field name="name">My Timesheet</field>
<field eval="1" name="sequence"/>
<field name="parent_id" ref="hr_attendance.menu_hr_time_tracking"/>
<field name="icon">STOCK_JUSTIFY_FILL</field>
<field name="action" ref="ir_actions_server_timsheet_sheet"/>
</record>
请帮助我获得正确的查看代码或解决方案,以便在升级自定义模块后我不需要更改菜单“我的时间表”的信息!多谢!