2012-04-30 22 views
1

我閱讀了關於processes,我認爲它們對用戶是一個很好的幫助。現在我想爲我的實驗模塊創建一個流程。我正在調查sale_process.xml,第一條記錄引用了銷售模塊。我在哪裏可以找到model_sale_orderOpenERP OpenObject進程

<record id="process_process_salesprocess0" model="process.process"> 
    <field eval="1" name="active"/> 
    <field name="model_id" ref="sale.model_sale_order"/> 
    <field eval="&quot;&quot;&quot;Sales&quot;&quot;&quot;" name="name"/> 
</record> 

回答

2

我相信這是指着ir_model_data記錄名爲「model_sale_order」和模塊「出售」。該記錄又指向具有每個字段的子記錄的sale_order表的ir_model記錄。所有這些記錄都是基於sale_order class中定義的詳細信息生成的。每種型號的關鍵特徵之一是_columns dictionary。開發者文檔在其關於Objects, Fields, and Methods的章節中有相當好的描述。

如果您將幾個字段添加到標準'sale.order'模型(繼承),那麼您的模塊將使用相同的'sale.model_sale_order'記錄,併爲您的新字段添加更多的子記錄。添加到流程定義時,您可以繼續引用'sale.model_sale_order'。

如果要創建單獨的模型而不繼承,請不要在模型類中使用'sale.order'名稱。使用像'mysale.order'這樣的名字。這將自動生成一個新的'mymodule.model_mysale_order'記錄,您可以在流程定義中引用該記錄。

+0

我在看sale_order類,但沒有找到任何東西。在_columns中,我找不到以「model」開頭的任何內容。如果類以某種方式生成列model_sale_order,我認爲它應該作爲列存在於數據庫中? –

+0

'model_sale_order'只是一個名字,@ MarioZupan,其他模塊可以用來引用'sale_order'表及其細節。這不是專欄。我試圖澄清我的答案。 –

+0

哪裏定義了那個名字?我想改變它,例如my_model。 –