自己做了個例子
倉庫-儀表板-分揀型別 使用者倉庫1只能看到即墨庫的 使用者2只能看到青島的
設定-使用者組
仿照「倉庫-使用者」組新建乙個使用者組 在模組倉庫下 名稱叫即墨庫管
在繼承選項卡中選中「倉庫-使用者」
然後建立兩個使用者 倉庫1隸屬於即墨庫管 倉庫2隸屬於青島庫管
設定-安全設定-記錄規則
新建乙個規則 名稱「doom倉庫1只能看即墨庫的分揀」
物件stock.picking.type 也就是模型 相當於資料表
規則定義公式寫入[('warehouse_id', '=', 1)]
其中warehouse_id 是表(模型)裡的字段
1是資料 代表即墨庫
完事了1) domain條件表示式規則
最簡單的格式:[('字段', '操作符', 值)]
例:[('shenqr.user_id', '=', uid)]
說明:domain中的單個條件是乙個三個元素組成的元組,所以務必加上()。
元組中第乙個是物件的乙個column,也就是欄位名;
元組中第二個是比較運算子 「=, !=, >, >=, <, <=, like, ilike, in, not in,
child_of, parent_left, parent_right「 ;(注意:在xml檔案中使用時,'>='要
用'>='表示 ,'<='要用 '<='表示,'!='最好用'><'表示,'>'最好
用'>'表示,'<'最好用 '<' 表示)
元組中第三個就是用來比較的值了。
多個條件用「|」(or),「&」(and),「!」(no)邏輯運算子鏈結。
邏輯運算子作為字首放置於條件前面。「|」與「&」必須兩個條件鏈結,「!」對乙個條件取反。
預設邏輯運算子為「&」。(注意:在xml檔案中使用時,'&'要用'&'表示)
2) 不帶邏輯運算子的簡單表示式
過濾狀態為待批: [('state', '=', 'wait_prove')]
過濾狀態為草稿、待批:
[('state', 'in', ('draft', 'wait_prove'))] 或者 [('state', 'in', ['draft', 'wait_prove'])]
過濾請假天數大於3天: [('tians', '>', 3)]
3) 帶邏輯運算子的簡單表示式
假設a , b分別是不帶邏輯運算子的簡單表示式
a = ('state','><','draft')
b = ('tians', '<=', 1)
a and b: [ a, b ] 或 [ '&' , a , b ]
a or b: [ '|', a,b ]
eg:請假模組,副經理登入時待審批的請假單(狀態是待批,並且請假天數在一天以內)選單過濾條件:
[('state','=','wait_prove'),('tians', '<=', 1)]
4) 帶邏輯運算子的稍複雜的表示式
同上,假設a , b, c分別是不帶邏輯運算子的簡單表示式
a and b and c : [a, b, c] 或則 [ '&', '&', a, b, c]
a or b or c: ['|', '|', a , b , c]
a and b or c: ['|', '&', a, b, c]
a and (b or c): ['&', a, '|', b, c]
eg:經理待審批的請假單(狀態是待批,並且請假天數大於一天,並且是本部門的職員請假單,並且還不包含自己的請假單)選單過濾條件
[('state', '=', 'wait_prove'), ('tians', '>', 1), ('shenqr.user_id','<>',uid),('shenqr.department_id','=',department_id),('shenqr.user_id.groups_id', '=', 59)]
5) 帶邏輯運算子的更複雜的表示式
同上,假設a , b, c, e, f, g分別是不帶邏輯運算子的簡單表示式
(a or b and c) or ( d and e ) :
['|', '&','|', a, b, c, '&', d, e, 3)]
eg:總經理待審批的請假單(所有部門副經理或經理狀態為待批的請假單,或3天以上部門經理批准過的請假單)選單過濾條件:
['|', '&','|', ('shenqr.user_id.groups_id', '=', 60), ('shenqr.user_id.groups_id', '=', 61), ('state', '=', 'wait_prove'), '&', ('state','=','depmanager_proved'),('tians', '>', 3)]
(a or b and c) or (d and e) or (f and g)
['|','|', '&','|', a, b, c, '&', d,e,'&', f,g]
eg:總經理全部的請假單(所有部門副經理或經理狀態為待批的請假單,或3天以上部門經理批准過的請假單,或3天以上狀態為同意或駁回的請假單據)選單過濾條件:
['|','|', '&','|', ('shenqr.user_id.groups_id', '=', 60), ('shenqr.user_id.groups_id', '=', 61), ('state', '=', 'wait_prove'), '&', ('state','=','depmanager_proved'),('ti
odoo 12 域表示式(domain)
格式 欄位名 操作符 值 例 shenqr.user id uid 1 操作符 操作符說明 比較運算,等於,不等於,大於,大於等於,小於,小於等於 like 模糊匹配,通過 value 匹配 like 可以使用模式匹配,下劃線 匹配乙個字元,百分號 匹配零或者多個字元 ilike 類似like,但是...
odoo開發domain的使用
odoo開發中,domain的使用可以在view中,可以在model中,因此說說自己用到的一些地方。首先domain得使用方法就不說了,可以參考寫的還是挺詳細的,說說在view中的使用。1 view中欄位關聯的過濾 在view檢視中,字段之間的關聯使用,比如說在位址資訊中,有省 市 縣資訊,因此在選...
Odoo動態修改欄位domain
序言 時間是我們最寶貴的財富,珍惜手上的每個時分 經常遇到此需求 現有字段 a,b,當a改變時,b的過濾條件隨之改變.例項 在銷售訂單行中維護了產品 商欄位,希望改變產品之後,採購 商只顯示所選產品對應的 商。略 inherit sale.order.line api.onchange produc...