#Query: def compute(self): result = fssession.query(FSSubjectSem) #result = fssession.query(FSSubjectSemView) result = result.join('kullklassestudent') result = result.join('studprogstudent') result = result.filter(fs_subject_sem_view.c.institusjonsnr == 215) result = result.filter(fs_subject_sem_view.c.arstall_planlagt_eksamen >= datetime.date.today().year) result = result.filter(fs_kullklassestudent_table.c.status_aktiv == 'J') result = result.filter(or_(fs_studprogstudent_table.c.studentstatkode == 'AKTIV', fs_studprogstudent_table.c.studentstatkode == 'PERMISJON')) #result = result.order_by(fs_studprogstudent_table.c.fodselsdato) self.fs = dict([(enroll.getKey(), enroll) for enroll in result.all()]) #Mapper fs_subject_sem_mapper = mapper( FSSubjectSem, fs_subject_sem_table, properties = { 'kullklassestudent': relation(FSKullklasseStudent, uselist=False, backref='br_st_enrollment_kullklassestudent'), 'studprogstudent': relation(FSStudyProgramStudent, uselist=False, backref='br_st_enrollment_studprogstudent'), 'person': relation(FSPerson, uselist=False, backref='br_st_enrollment_person'), 'student': relation(FSStudent, uselist=False, backref='br_st_enrollment_student'), 'subject': relation(FSSubject, uselist=False, backref='br_st_enrollment_subject'), 'fnr': fs_subject_sem_table.c.fodselsdato, 'pnr': fs_subject_sem_table.c.personnr, 'code': fs_subject_sem_table.c.emnekode, 'version': fs_subject_sem_table.c.versjonskode, }, order_by=None, ) #Exception raise exceptions.DBAPIError.instance(statement, parameters, e, connection_invalidated=is_disconnect) sqlalchemy.exceptions.DatabaseError: (DatabaseError) ORA-01446: cannot select ROWID from, or sample, a view with DISTINCT, GROUP BY, etc. 'SELECT "FS"."VIEW_EMNE_DETTE_SEM".emnekode AS "FS_VIEW_EMNE_DETTE_SEM_e_1", "FS"."VIEW_EMNE_DETTE_SEM".fodselsdato AS "FS_VIEW_EMNE_DETTE_SEM_f_2", "FS"."VIEW_EMNE_DETTE_SEM".personnr AS "FS_VIEW_EMNE_DETTE_SEM_p_3", "FS"."VIEW_EMNE_DETTE_SEM".versjonskode AS "FS_VIEW_EMNE_DETTE_SEM_v_4", "FS"."VIEW_EMNE_DETTE_SEM".terminkode AS "FS_VIEW_EMNE_DETTE_SEM_t_5", "FS"."VIEW_EMNE_DETTE_SEM".arstall AS "FS_VIEW_EMNE_DETTE_SEM_arstall", "FS"."VIEW_EMNE_DETTE_SEM".institusjonsnr AS "FS_VIEW_EMNE_DETTE_SEM_i_6", "FS"."VIEW_EMNE_DETTE_SEM".terminkode_planlagt_eksamen AS "FS_VIEW_EMNE_DETTE_SEM_t_7", "FS"."VIEW_EMNE_DETTE_SEM".arstall_planlagt_eksamen AS "FS_VIEW_EMNE_DETTE_SEM_a_8", "FS"."VIEW_EMNE_DETTE_SEM".terminkode_eksmeld_foretatt AS "FS_VIEW_EMNE_DETTE_SEM_t_9", "FS"."VIEW_EMNE_DETTE_SEM".arstall_eksmeld_foretatt AS "FS_VIEW_EMNE_DETTE_SEM_a_a", "FS"."VIEW_EMNE_DETTE_SEM".tabell AS "FS_VIEW_EMNE_DETTE_SEM_tabell" \n FROM "FS"."VIEW_EMNE_DETTE_SEM" JOIN "FS"."KULLKLASSESTUDENT" ON "FS"."KULLKLASSESTUDENT".fodselsdato = "FS"."VIEW_EMNE_DETTE_SEM".fodselsdato AND "FS"."KULLKLASSESTUDENT".personnr = "FS"."VIEW_EMNE_DETTE_SEM".personnr JOIN "FS"."STUDIEPROGRAMSTUDENT" ON "FS"."STUDIEPROGRAMSTUDENT".fodselsdato = "FS"."VIEW_EMNE_DETTE_SEM".fodselsdato AND "FS"."STUDIEPROGRAMSTUDENT".personnr = "FS"."VIEW_EMNE_DETTE_SEM".personnr \n WHERE "FS"."VIEW_EMNE_DETTE_SEM".institusjonsnr = :FS_VIEW_EMNE_DETTE_SEM_i_1 AND "FS"."VIEW_EMNE_DETTE_SEM".arstall_planlagt_eksamen >= :FS_VIEW_EMNE_DETTE_SEM_a_2 AND "FS"."KULLKLASSESTUDENT".status_aktiv = :FS_KULLKLASSESTUDENT_sta_3 AND ("FS"."STUDIEPROGRAMSTUDENT".studentstatkode = :FS_STUDIEPROGRAMSTUDENT__4 OR "FS"."STUDIEPROGRAMSTUDENT".studentstatkode = :FS_STUDIEPROGRAMSTUDENT__5) ORDER BY "FS"."VIEW_EMNE_DETTE_SEM".rowid' {'FS_VIEW_EMNE_DETTE_SEM_a_2': 2008.0, 'FS_VIEW_EMNE_DETTE_SEM_i_1': 215.0, 'FS_KULLKLASSESTUDENT_sta_3': 'J', 'FS_STUDIEPROGRAMSTUDENT__5': 'PERMISJON', 'FS_STUDIEPROGRAMSTUDENT__4': 'AKTIV'}