报告 qweb 未显示

report qweb not displayed

我是报告 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 文件,没有错误但为空,甚至没有页眉或页脚

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

编辑:

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

希望对您有所帮助!

您可以在 Qweb Report 上参考我们的博客。

我们已经详细描述了一切。

<?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>

如您所说,报告正在生成,但您看不到任何页面。 在这里,您定义了两个模板。

要获取 qweb-pdf 中的页面,我们必须使用这些标签

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

在您的代码中,您定义了两个模板,在模板 1 中您使用了

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

在template-2中,您没有包含以上两个标签,您为template-2配置了report动作

<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" />

这就是它不打印的原因。

所以,要么在模板 2 中包含上述 div 标签,要么为模板 1 配置报告操作