public static function doCountJoinAllExceptScheduleDetail(Criteria $criteria, $distinct = false, $con = null) { $criteria = clone $criteria; $criteria->clearSelectColumns()->clearOrderByColumns(); if ($distinct || in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) { $criteria->addSelectColumn(StudentRaportPeer::COUNT_DISTINCT); } else { $criteria->addSelectColumn(StudentRaportPeer::COUNT); } foreach ($criteria->getGroupByColumns() as $column) { $criteria->addSelectColumn($column); } $criteria->addJoin(StudentRaportPeer::STUDENT_ID, StudentPeer::ID); $criteria->addJoin(StudentRaportPeer::STUDENT_COURSE_ID, StudentCoursePeer::ID); $criteria->addJoin(StudentRaportPeer::GRADE_COMPONENT_ID, GradeComponentPeer::ID); $criteria->addJoin(StudentRaportPeer::GRADE_SPEC_ID, GradeSpecPeer::ID); $criteria->addJoin(StudentRaportPeer::CITATION_ID, CitationPeer::ID); $criteria->addJoin(StudentRaportPeer::SUBJECT_CURR_ID, SubjectCurrPeer::ID); $criteria->addJoin(StudentRaportPeer::CLASS_GROUP_ID, ClassGroupPeer::ID); $criteria->addJoin(StudentRaportPeer::ACADEMIC_CALENDAR_ID, AcademicCalendarPeer::ID); $criteria->addJoin(StudentRaportPeer::SCHEDULE_ID, SchedulePeer::ID); $rs = StudentRaportPeer::doSelectRS($criteria, $con); if ($rs->next()) { return $rs->getInt(1); } else { return 0; } }