Below code is asset inherited class . Here i will add **'place'** field with **'Karn/Bang/Kengeri'** and **'karn/bang/malleshwaram'** for 'Karn/Bang/Kengeri' will add 'asset_catg_id' with A and B. then for 'karn/bang/malleshwaram' with Y and Z.
Now at calander inherited class . if i select **'place'** with **'Karn/Bang/Kengeri'** then next field **'asset_catg_id'** i have to get only **A and B** drop down list. if again **'karn/bang/malleshwaram'** then i have to get only **Y,Z** options . and previous selected **'asset_catg_id'** values should get deleted . i have tried with domain filter option got **keyvalue error**
class asset_asset(osv.osv):
_inherit = "asset.asset"
#_name = "asset_asset"
_rec_name= "folio_num"
_columns = {
'name': fields.char('Asset Name', size=64),
'place': fields.many2one('asset.parentlocation', 'Location'),
'asset_catg_id' : fields.many2one('asset.catg', 'Asset Catg Selection', select=True, required=True),}
class asset_catg(osv.Model):
_name="asset.catg"
_rec_name='name1'
_description="Define Asset Catgs"
_columns={ 'name1':fields.char('Asset Catg Names',size=64,required=True),}
asset_catg()
class asset_parentlocation(osv.osv):
_name="asset.parentlocation"
_rec_name="location_name"
_columns = {
'location_name' : fields.char('Asset Location', required=True),
'parent_location' : fields.many2one('asset.parentlocation','Parent Location'),
'nameee':fields.many2one('ir.attachment','Attachments'),}
def name_get(self, cr, uid, ids, context=None):
if context is None:
context = {}
if not ids:
return []
reads = self.read(cr, uid, ids, ['location_name','parent_location'], context=context)
res = []
for record in reads:
name = record['location_name']
if record['parent_location']:
name = record['parent_location'][1]+' / '+name
res.append((record['id'], name))
return res
**Following code is calendar inherited class**
class calendar_event(osv.osv):
_inherit = "calendar.event"
_rec_name = 'number'
_columns = {
'number' : fields.char('Meeting ID',readonly=1),
#'place' : fields.many2one('stock.location','Substation Location',),
'place' : fields.many2one('asset.parentlocation','Substation Location',),
#'location' : fields.selection(STATUS_SELECTION,'Location', default='Board A'),
'asset_catg_id' : fields.many2one('asset.catg','Asset Catg Selection', domain="[('asset_catg_id', '=',place)]"),}
Where do youwant to apply filter? On view or field definition ?
Where do youwant to apply filter? On view or field definition ?
--Serpent Consulting Services Pvt. Ltd.
Sent by Odoo S.A. using Odoo about Forum Post how to do for many2one domain filter?
You must add 'place': fields.many2one('asset.parentlocation', 'Location'), into asset.catg model. Then it will be a simple domain : [('place','=',place)] !
You must add 'place': fields.many2one('asset.parentlocation', 'Location'), into asset.catg model. Then it will be a simple domain : [('place','=',place)] !
--Serpent Consulting Services Pvt. Ltd.
Sent by Odoo S.A. using Odoo about Forum Post how to do for many2one domain filter?
Hope you are looking this: https://learnopenerp.blogspot.com/2020/09/domain-filter-many2one-field-odoo13.html