2015-11-04 36 views
0

要了解創建模塊,我做了odoo教程,該教程是創建示例模塊的指南 - 此報告適用。Odoo 8 qweb報告,不斷收到錯誤「QWebTemplateNotFound:系統中找不到外部ID」

我跟着完全相同的步驟來創建我的模塊中的報告,它不工作,通過報告URL訪問時,我不斷收到此錯誤:

「QWebTemplateNotFound:在系統中沒有發現外部標識:pprepair.report_idtest_name「。

我看到這個問題,它可能是我使用的版本中的一個錯誤,所以我更新到最近發佈的Odoo 9,但仍然得到相同的錯誤。不同的文字,但同樣的問題:ID找不到。

我檢查了設置和報告。所以它被創建正確,但不知何故,它無法訪問。

也許我錯過了一些。

附加是我的代碼,請幫忙。

<openerp> 
<data> 

<report 
    id="report_idtest" 
    model="pprepair.ppmain" 
    string="Ppreport" 
    report_type="qweb-pdf" 
    name="pprepair.report_idtest_name" 
/> 

<template id="report_idtest_name"> 
    <t t-call="report.html_container"> 
     <t t-foreach="docs" t-as="o"> 
      <t t-call="report.external_layout"> 
       <div class="page"> 
        <h2>Report title</h2> 
       </div> 
      </t> 
     </t> 
    </t> 
</template> 

</data> 
</openerp> 
+0

也許你沒有安裝python-passlib包----> sudo易於得到安裝python-passlib –

+0

passlib安裝 – aydunno

回答

0

當你創建一個報告採取行動這樣的:

<report 
    id="report_idtest" 
    model="pprepair.ppmain" 
    string="Ppreport" 
    report_type="qweb-pdf" 
    name="pprepair.report_idtest_name" 
/> 

在最後一行應該是name="modulename.report_id"

我希望它會有用。

+0

我嘗試了這麼多的變體,我錯過了這一個我猜。只使用了類名。 – aydunno

0
<openerp> 
<data> 


<template id="report_idtest_name"> 
<t t-call="report.html_container"> 
    <t t-foreach="docs" t-as="o"> 
     <t t-call="report.external_layout"> 
      <div class="page"> 
       <h2>Report title</h2> 
      </div> 
     </t> 
    </t> 
</t> 
</template> 


<report 
id="report_idtest" 
model="pprepair.ppmain" 
string="Ppreport" 
report_type="qweb-pdf" 
name="pprepair.report_idtest_name" 
/> 


</data> 
</openerp> 

稱其爲報告標籤之前定義模板。交換它們。

+0

試了一下,沒有差別 – aydunno

+0

你升級執行這些更改後的模塊?你可以通過命令行來升級你的模塊---> ./odoo.py -d db_name --db-filter db_name -u module_name或者你可以手動進入應用程序並從那裏升級。當你改變任何XML文件時,你必須升級。 –

+0

是的,我做了,我在模塊上工作了一段時間,而且大部分都完成了,所以我知道基本知識。報告是名單上的最後一件事... – aydunno

相關問題