2013-12-17 39 views
0

我有一個關於OpenERP的問題。如果其中一個字段爲空,如何發出警告?例如,在添加產品時,它應該在我們忘記添加Name屬性時發出警告。如何在OpenERP中的一個或兩個字段爲空時發出警告

在這種情況下,我想補充更多的必填字段,如產品代碼,等等。對不起,我還是新這個系統。

+0

爲什麼不測試SAValidation:https://pypi.python.org/pypi/SAValidation – NrNazifi

回答

2

一種方法是你可以添加約束。 _constraint是OpenERP中的預定義字段。它用於在對象上添加約束。這需要元組的列表作爲其argument.The元組內的列表包含三個參數

  1. 方法(檢查約束)
  2. 消息(約束的最終用戶)字段的
  3. 列表(場應用約束)在條件返回的記錄的創建和更新用假

    _constraint會觸發並顯示信息。

    用於_constraint的示例代碼顯示如下。

    def _check_length(self, cr, uid, ids, context=None): 
        record = self.browse(cr, uid, ids, context=context) 
        for data in record: 
         if data.length < 0: 
          return False 
        return True 
    
    
    _columns = {'length': fields.integer('Length'),} 
    
    _constraints = [(_check_length, 'Error: Length must be Positive', ['length'])] 
    

另一種方法是修改創建和寫入功能(這是OpenERP的基函數),並檢查所有必要的數據是否指定與否。

0

爲了檢查你可以使用_sql_constraints重複的值。

你只需要做下面的代碼。

這e.g是account_payment:

_sql_constraints = [ 
     ('name_uniq', 'UNIQUE(name)', 'The payment line name must be unique!'), 
    ] 

希望這會幫助你。

Regards,

相關問題