2016-11-03 4 views
1

私はodooプロジェクトに取り組んでおり、毎日午前10時に自動的に電子メールを送信する必要があります。スケジュールされたアクションを作成しましたが、問題があります。これは私が、私は@のapi.oneまたは@apiでの@ api.modelを交換する場合は、このトレースバックにスケジュール通りにメールを送信

 

    2016-11-03 17:35:15,158 4912 ERROR sintramdb openerp.addons.base.ir.ir_cron: Call of self.pool.get('production.ouvrages').send_mails(cr, uid, *()) failed in Job 9 
    Traceback (most recent call last): 
     File "C:\Program Files (x86)\Odoo 8.0-20160929\server\openerp\addons\base\ir\ir_cron.py", line 138, in _callback 
     File "C:\Program Files (x86)\Odoo 8.0-20160929\server\.\openerp\api.py", line 268, in wrapper 
     File "C:\Program Files (x86)\Odoo 8.0-20160929\server\.\openerp\api.py", line 372, in old_api 
     File "C:\Users\3D SKILLS\AppData\Local\OpenERP S.A.\Odoo\addons\8.0\production\models.py", line 347, in send_mails 
     File "C:\Program Files (x86)\Odoo 8.0-20160929\server\.\openerp\api.py", line 266, in wrapper 
     File "C:\Program Files (x86)\Odoo 8.0-20160929\server\.\openerp\api.py", line 549, in new_api 
     File "C:\Program Files (x86)\Odoo 8.0-20160929\server\openerp\addons\email_template\email_template.py", line 558, in send_mail 
     File "C:\Program Files (x86)\Odoo 8.0-20160929\server\.\openerp\api.py", line 268, in wrapper 
     File "C:\Program Files (x86)\Odoo 8.0-20160929\server\openerp\addons\email_template\email_template.py", line 595, in generate_email 
     File "C:\Program Files (x86)\Odoo 8.0-20160929\server\.\openerp\api.py", line 268, in wrapper 
     File "C:\Program Files (x86)\Odoo 8.0-20160929\server\openerp\addons\email_template\email_template.py", line 484, in generate_email_batch 
    AttributeError: 'bool' object has no attribute 'lang' 

を与える方法を実行した後のアクション

@api.model 
def send_mails(self): 
    domain = [['name', 'like', 'Production Report']] 
    template = self.env['email.template'].search(domain)[0] 
    template.send_mail(self.id, True) 

を送信実行するために使用する方法であり、 @のapi.oneまたは私はメソッドを呼び出すためのボタンクリックを使用している場合、それは完全にwokrs api.multi注釈@:.multi私は、次のエラー

 

    TypeError: old_api() takes at least 4 arguments (3 given) 

注意を取得します。

+0

デフsend_mails(CR、UID、コンテキスト=なし)を助けることを願っています(もちろん、古いAPIスタイルで)

 def send_mails(self, cr, uid, *args, **kwargs): domain = [['name', 'like', 'Production Report']] template_id = self.pool.get('email.template').search(cr, uid,domain,offset=0, limit=None, order=None, context=None, count=False)[0] template_obj = self.pool.get('email.template').browse(cr, uid, template_id) template_obj.send_mail(3, True, None) 

私の解決策でありますテンプレート、テンプレート、テンプレート、テンプレート、テンプレート、テンプレート、テンプレート、テンプレート、テンプレート、テンプレート、名前、 、True、context = None) –

+1

古いAPIを使ってみてください。最速の解決策かもしれません。しかし、迷惑です。 –

+0

email_template.pyというファイルを見ても、上記のエラーで真偽であると思うテンプレートのlang属性を探します。私はFalseと仮定します。テンプレートがメソッドに渡されていない可能性があります。 –

答えて

0

ことは、このソリューションを試して動作しない場合は、この

@api.v8 
@api.model 
def send_mails(self): 
    domain = [['name', 'like', 'Production Report']] 
    template = self.env['email.template'].search(domain)[0] 
    template.send_mail(self.id, True) 

を試してみてください。

@api.model  
def send_mails(self): 
    domain = [['name', 'like', 'Production Report']] 
    template = self.env['email.template'].search(domain)[0] 
    template.send_mail(self._cr,self._uid,self.id, True) 
0

まずはお返事いただきありがとうございます。

私はあなたの修正を試みた後、私はまだ問題を解決することができませんでした。だから、私は深くemail_template addonのemail_template.pyファイルを見て、いくつかのエラーが発生した後、私は最終的に何かを得た。 ドメイン= [[」:ベローは、私はそれが他の誰か

関連する問題