2017-10-03 23 views
3

私はodooで新しく私は私のモデルにレポートpdfを作りたいと思う、私は純粋なyoutube、googleで見つけたすべてのtutoを試みたが、私のための仕事は私に助言を与えなさい。私も、この2つのファイルのXML持っQWeb pdfレポートodoo 10

# modelx.py file 
from openerp import models, fields, api 

class omega(models.Model): 
    _name = 'omega.model' 
    _description = 'No Description for now !!' 

    @api.model 
    def render_html(self, docids, data=None): 
     report_obj = self.env['report'] 
     report = report_obj._get_report_from_name('report.external_layout') 
     docargs = { 
      'doc_ids': docids, 
      'doc_model': report.model, 
      'docs': self, 
     } 
     return report_obj.render('report.external_layout', docargs) 


    state = fields.Selection([ 
     ('Nouveau', 'Nouveau'), 
     ('valid', 'Validation Responsable'), 
     ('Termine', 'Termine'), 
    ],default='Nouveau') 

    @api.one 
    def confirmer(self): 
     self.write({ 
      'state': 'valid', 
     }) 

    employe = fields.Many2one(comodel_name="res.users", string="Employe", required=True, delegate=True) 
    date = fields.Datetime(string="Date", required=True) 
    date2 = fields.Date(string="Date2", required=True) 
    day_number = fields.Integer(string="Nombre de jour", required=True) 
    transport = fields.Selection(string="Transport", selection=[('1', 'Train'), ('2', 'Voiture de Service'), ('3', 'Avion')]) 
    sujet = fields.Char(string="Sujet", required=True) 
    lieu = fields.Char(string="Lieu", required=False) 

: 私のモデルがあり、私はネットとodooドキュメントで見つけるよう

<!-- report.xml --> 
<?xml version="1.0" encoding="UTF-8" ?> 
<openerp> 
    <data> 
     <report 
      id="action_report_omega" 
      model="omega.model" 
      string="Report" 
      report_type="qweb-pdf" 
      file="report.external_layout" 
      name="report.external_layout" 
     /> 
    </data> 
</openerp> 

とテンプレートビューのためにこのファイルを

<!-- report_template.xml --> 
<?xml version="1.0" encoding="UTF-8" ?> 
<openerp> 
    <data> 
     <template id="report_omega_document"> 
      <t t-call="report.html_container"> 
      <t t-call="report.external_layout"> 
       <div class="page"> 
       <div class="oe_structure"> 
       <div class="row"> 
        <H1>Hi there hello</H1> 
       </div> 
       </div> 
       </div> 
      </t> 
      </t> 
     </template> 
     <template id="report_omega"> 
      <t t-call="report.html_container"> 
      <t t-call="report.external_layout"> 
       <t t-foreach="doc_ids" t-as="doc_id"> 
        <div class="page"> 
        <div class="oe_structure"> 
        <div class="row"> 
         <H3>Hi hello </H3> 
        </div> 
        </div> 
        </div> 
       </t> 
      </t> 
      </t> 
     </template> 

    </data> 
</openerp> 

ときレポートを印刷するためのプログラムを実行します。空のファイルがありましたら、アドバイスをお願いします。

答えて

4

レポートタグのファイルおよび名前属性を変更する必要があります。それは、常にあなたのモジュールをアップグレードし、それを試して、その後module_name.report_template_name

<report 
    id="action_report_omega" 
    model="omega.model" 
    string="Report" 
    report_type="qweb-pdf" 
    file="your_module_name.report_omega" 
    name="your_module_name.report_omega" 
/> 

を表します。それは正常に動作するはずです。詳細については

、あなたは私を与えるQweb Reports - Odoo10 Document.

+0

参照できます。システムには見られない外部ID:omega.model.report_omega –

+0

フォルダ/モジュール名は何を?モデル名 –

+0

私のモデルフォルダ "model_x" –