Dictionary of attributes and values
I would do

supply_kpi = self.browse(cr, uid, ids, context=None)[0]
group_by = [col_map[key] for key in col_map if getattr(supply_kpi, key)]



Iterating with list comprehension is much more efficient.
You don't build iteritems list of tuples.