def get_comm_channels(self, comm_medium=None): args = {'pk': self.pk_obj, 'medium': comm_medium} if comm_medium is None: cmd = """ SELECT * FROM dem.v_org_unit_comms WHERE pk_org_unit = %(pk)s """ else: cmd = """ SELECT * FROM dem.v_org_unit_comms WHERE pk_org_unit = %(pk)s AND comm_type = %(medium)s """ rows, idx = gmPG2.run_ro_queries(queries = [{'cmd': cmd, 'args': args}], get_col_idx = True) return [ gmDemographicRecord.cOrgCommChannel(row = { 'pk_field': 'pk_lnk_org_unit2comm', 'data': r, 'idx': idx }) for r in rows ]