Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn

原论坛用户的基本信息和发帖这里都予以保留,请注意:原论坛用户无需重新注册新用户,但是您的密码需要重置

开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

如果您登录系统碰到问题,请在微信公众号留言:

[SOLVED] 登录用户id



  • 情况是这样的:<br />  我想在timesheet 的workflow 加一个Transitions 的条件,让创建这张表的人不能够自己去confirm 自己的表。 <br />如draft 到confirm的Condition 就可以设置为 user_id.name!=LOGIN.name。现在的问题就是获取不到当前登录用户的name, 也就是LOGIN.name。<br /><br />有办法么?



  • 哪一个timesheet?<br /><br />你指的是 hr_timesheet_sheet 模块么?<br /> 这样试试:<br />[('user_id', 'not in', [uid])]<br /><br />或者 <br /><br />[('user_id.id', 'not in', [uid])]<br />



  • 多谢回复.<br /><br />其实是想在hr.expense模块使用的, openERP V5.0.10 .<br /><br />查看坛子里另一条http://shine-it.net/index.php/topic,2082.0.html<br /><br />通过attrs来控制按钮可见,只读。。<br /><br /><button attrs="{'invisible':[('user_id', 'not in', [uid])]}" name="validate" states="confirm" string="Accept" type="workflow"/><br /><br />却没有效果。



  • 新建一个 action 然后 在action 里设置 domain <br /><br />然后添加个菜单, 指向这个 action ... 这个似乎是通常的OE的做法. <br /><br />参见 人力资源 费用单 的"我的费用"列表. 以及 项目管理 中很我多的 "我的XXX", 然后 估计修改一下 domain 就可以变成 "非我的XXX"了...<br /><br />这一块儿没有怎么玩过...



  • 修改 hr_expense.py<br /><br />

    <br />def expense_accept(self, cr, uid, ids, *args):<br />&nbsp; &nbsp; &nbsp; &nbsp; # 任何人都不能 accept 自己创建的 expense<br />&nbsp; &nbsp; &nbsp; &nbsp; userID = self.browse(cr, uid, ids)[0].user_id.id<br />&nbsp; &nbsp; &nbsp; &nbsp; if userID == uid:<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; raise osv.except_osv(_(&#039;Error !&#039;), _(&#039;You can not accept your expense by yourself!&#039;))<br />