报告qweb没有显示

时间:2015-07-02 14:28:59

标签: python xml openerp odoo

我是报道qweb的新手,我想练习它,然后我尝试为我的模块gestion_des_etudiants创建一个报告,我知道我的代码中缺少一些东西,我需要你的帮助:

report_etudiant.xml

<?xml version="1.0" encoding="utf-8"?>
<!--Custom report.-->
<openerp>
    <data>
        <template id="report_etudiant_document">
            <t t-call="report.external_layout">
                <div class="page">
                <div class="row">
                    <h3>Teeeeeeeeeeeeest</h3>

                </div>
                </div>
            </t>
        </template>
        <template id="report_etudiant">
            <t t-call="report.html_container">
            <t t-foreach="doc_ids" t-as="doc_id">

               <h3>Tiiiiiiiiiiiiiiiiiiiiitle</h3>

        </t>
    </t>
</template>


    </data>
</openerp>

etudiant_report.xml:

<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data>
        <report
            id="action_report_etudiant"
            string="Attestation de scolarité"
            model="etudiant"
            report_type="qweb-pdf"
            name="gestion_des_etudiants.report_etudiant"
            file="gestion_des_etudiants.report_etudiant"
        />
    </data>
</openerp>

当我打印报告时,我得到一个空的pdf文件,没有错误但是空的,甚至没有页眉或页脚

4 个答案:

答案 0 :(得分:2)

您没有调用 report_etudiant_document 模板来显示您的需求,因此您需要在t-foreach内添加此行:

修改

<t t-raw="translate_doc(doc_id, doc_model, 'gestion_des_etudiants.report_etudiant_document')"/>

我希望这可以帮到你!

答案 1 :(得分:1)

您可以在Qweb Report上查看我们的博客。

我们已经详细描述了所有内容。

答案 2 :(得分:1)

正如您所说,报告正在生成,但您无法看到任何网页。 在这里,您已经定义了两个模板。

要以qweb-pdf格式获取页面,我们必须使用这些标记

<div class="page">
<div class="row">

在您的代码中,您已使用

中的模板1定义了两个模板
<div class="page">
<div class="row">

在模板2中,您没有包含上述两个标记,并且您为模板-2配置了报告操作

<report 
 id="action_report_etudiant" 
 string="Attestation de scolarité" 
 model="etudiant" 
 report_type="qweb-pdf" 
 name="gestion_des_etudiants.report_etudiant" 
 file="gestion_des_etudiants.report_etudiant" />

这就是它不打印的原因。

因此,要么在template-2中包含上述div标记,要么为template-1配置报告操作

答案 3 :(得分:0)

<?xml version="1.0" encoding="utf-8"?>
<!--Custom report.-->
<openerp>
    <data>
       <report
        id="action_report_etudiant"
        string="Attestation de scolarité"
        model="etudiant"
        report_type="qweb-pdf"
        name="gestion_des_etudiants.report_etudiant"
        file="gestion_des_etudiants.report_etudiant" />

        <template id="report_etudiant">
          <t t-call="report.external_layout">
          <t t-call="report.html_container">
          <div class="page">
             <t t-foreach="doc_ids" t-as="doc_id">
               <h3>Tiiiiiiiiiiiiiiiiiiiiitle</h3>
             </t>
          </div>
         </t>
        </t>
      </template>
    </data>
</openerp>