my_products
should be a many2one field related to product.product
.
'my_products':fields.many2one('product.product',string="Product")
if you want a filtered product list by using on_change on category you have to return a new domain filter for my_products
like (pls use the orm methods instead of direct queries):
def Product_Category_OnChange(self,cr,uid,ids,categ1):
product_obj = self.pool.get('product.product')
product_ids = product_obj.search(cr, uid, [('cat_id','=',categ1)]) #maybe cat_id is wrong field name
return {'domain':{'my_products':[('id','in',product_ids)]}}
:-)