Openerp 自动操作不起作用-odoo 8

Openerp 自动操作不起作用-odoo 8,openerp,odoo-8,Openerp,Odoo 8,我已经创建了一个自动操作,如果在创建时将何时运行设置为,它就可以正常工作。如果我根据定时条件将其更改为,将不会触发 自动操作 服务器操作 预定行动 我如何才能做到这一点?您必须通过python代码来做到这一点。你试过了吗 我有一个例子:对于合作伙伴通知电子邮件发送:通过操作: <record id="action_send_mail_on_partner_creation" model="ir.actions.server"> <field nam

我已经创建了一个自动操作,如果在创建时将
何时运行
设置为
,它就可以正常工作。如果我根据定时条件将其更改为
将不会触发

自动操作

服务器操作

预定行动


我如何才能做到这一点?

您必须通过python代码来做到这一点。你试过了吗

我有一个例子:对于合作伙伴通知电子邮件发送:通过操作:

<record id="action_send_mail_on_partner_creation" model="ir.actions.server">
            <field name="name">Partner Creation action</field>
            <field name="model_id" ref="base.model_res_partner"/>
            <field name="type">ir.actions.server</field>
            <field name="state">code</field>
            <field name="code">self.parnter_create_notification(cr, uid, object, context=context)</field>
        </record>

        <record id="rule_sent_mail_partner_creation" model="base.action.rule">
            <field name="name">Partner Creation Action Rule</field>
            <field name="kind">on_create_or_write</field>
            <field name="model_id" ref="base.model_res_partner"/>
            <field name="sequence">1</field>
            <field name="filter_id" ref="filter_customer"/>
            <field name="active">True</field>
            <field name="server_action_ids" eval="[(6, 0, [ref('action_send_mail_on_partner_creation')])]"/>
        </record>
在res.partner的继承类中

你可以拿这个例子来说明你的问题

希望这对你有帮助

谢谢,
Chandni

您确定运行操作的条件已满足吗?触发日期值是今天的日期。示例:30-12-2016
 def parnter_create_notification(self, cr, uid, obj,  context=None):
    if context.get('from_create',False):
        group_obj = self.pool.get('res.groups')
        user_obj = self.pool.get('res.users')
        if obj.customer or obj.supplier:
            manager_ids = group_obj.search(cr, uid, [('name','=', 'Financial Manager')])
            user_ids = group_obj.browse(cr, uid, manager_ids, context=context)[0].users
            email = []
            for id in user_ids:
                email.append(id.email)
            email_to = ','.join(str(e) for e in email)
            tmpl_obj = self.pool.get('email.template')
            tmpl_ids = tmpl_obj.search(cr, uid, [('name','=','Partner E-mail Template')])
            if tmpl_ids:
                tmpl_obj.write(cr, uid, tmpl_ids[0], {'email_to':email_to}, context=context)
                self.pool.get('email.template').send_mail(cr, uid, tmpl_ids[0], obj.id)
    return {}