diff --git a/db/StoredProcedures.sql b/db/StoredProcedures.sql
index f4ddcea600b4b31cac4091f210d4f05e5a85d0a9..319f87d9e3c7ad12a27988c51c7bc305aae9fc65 100644
--- a/db/StoredProcedures.sql
+++ b/db/StoredProcedures.sql
@@ -706,7 +706,23 @@ BEGIN
         LIMIT 1;
 
     IF !vChecker THEN
-        SELECT students.ID FROM `students` WHERE 0 = 1;
+        SELECT  students.ID,
+            students.LastName,
+            students.FirstName,
+            students.SecondName,
+            view_rating_result.RateRegular AS 'intermediate',
+            view_rating_result.RateBonus AS 'bonus',
+            view_rating_result.RateExam AS 'exam'
+        FROM `students`
+            LEFT JOIN `view_rating_result` ON view_rating_result.DisciplineID = pDisciplineID AND
+                                              view_rating_result.StudentID = students.ID
+            INNER JOIN `students_groups` ON students_groups.StudentID = students.ID AND
+                                            students_groups.SemesterID = @CurrentSemesterID
+        WHERE students_groups.GroupID = pGroupID AND
+              EXISTS(SELECT * FROM `disciplines_students`
+              WHERE  disciplines_students.DisciplineID = pDisciplineID AND
+                     disciplines_students.StudentID = students.ID)
+        ORDER BY students.LastName ASC;
     ELSE
         SELECT  students.ID,
                 students.LastName,
@@ -798,20 +814,30 @@ BEGIN
               rating_table.Date As 'Date',
               submodules.OrderNum As 'OrderNum',
               modules.Type As 'Type'
-    FROM `students`
-    INNER JOIN `students_groups` ON students_groups.StudentID = students.ID AND
-                                    students_groups.SemesterID = @CurrentSemesterID
-    LEFT JOIN `modules` ON  modules.DisciplineID = pDisciplineID AND
-                            (modules.Type = 'exam' OR modules.Type = 'extra')
-    LEFT JOIN `submodules` ON   submodules.ModuleID = modules.ID
-    LEFT JOIN `rating_table` ON     rating_table.SubmoduleID = submodules.ID AND
-                                    rating_table.StudentID = students.ID
-    WHERE   students_groups.GroupID = pGroupID AND
-            InternalIsStudentAttached(students.ID, DisciplineID)
-    ORDER BY    CONCAT(students.LastName, ' ', students.FirstName, ' ', students.SecondName) ASC,
-                students.ID ASC,
-                modules.Type = 'exam' ASC,
-                submodules.OrderNum ASC;
+        FROM `students`
+        INNER JOIN `students_groups` ON students_groups.StudentID = students.ID AND
+                                        students_groups.SemesterID = @CurrentSemesterID
+
+
+        LEFT JOIN `disciplines_groups` ON   disciplines_groups.DisciplineID = pDisciplineID AND
+                                            disciplines_groups.GroupID = students_groups.ID
+        LEFT JOIN `disciplines_students` ON disciplines_students.DisciplineID = pDisciplineID AND
+                                            disciplines_students.StudentID = students.ID
+
+
+        LEFT JOIN `modules` ON  modules.DisciplineID = pDisciplineID AND
+                                (modules.Type = 'exam' OR modules.Type = 'extra')
+        LEFT JOIN `submodules` ON   submodules.ModuleID = modules.ID
+        LEFT JOIN `rating_table` ON     rating_table.SubmoduleID = submodules.ID AND
+                                        rating_table.StudentID = students.ID
+        WHERE   students_groups.GroupID = pGroupID AND
+                ((disciplines_students.StudentID IS NOT NULL AND disciplines_students.Type = 'attach')
+                 OR (disciplines_groups.DisciplineID IS NOT NULL AND disciplines_students.Type IS NULL)
+                )
+        ORDER BY    CONCAT(students.LastName, ' ', students.FirstName, ' ', students.SecondName) ASC,
+                    students.ID ASC,
+                    modules.Type = 'exam' ASC,
+                    submodules.OrderNum ASC;
 END //
 
 
@@ -836,14 +862,14 @@ BEGIN
             view_roadmap.SubmoduleName,
             view_roadmap.SubmoduleRate AS 'MaxRate',
             view_roadmap.SubmoduleType
-    FROM `view_roadmap`
-    INNER JOIN `view_disciplines` ON view_disciplines.DisciplineID = pDisciplineID
-    WHERE   view_roadmap.DisciplineID = pDisciplineID AND
-            (view_roadmap.ModuleType != 'exam' OR view_roadmap.SubmoduleOrderNum = 1)
-    ORDER BY    view_roadmap.ModuleType ^ 1 ASC,
-                # 1, 3, 2, 4 ASC
-                view_roadmap.ModuleOrderNum ASC,
-                view_roadmap.SubmoduleOrderNum ASC;
+        FROM `view_roadmap`
+        INNER JOIN `view_disciplines` ON view_disciplines.DisciplineID = pDisciplineID
+        WHERE   view_roadmap.DisciplineID = pDisciplineID AND
+                (view_roadmap.ModuleType != 'exam' OR view_roadmap.SubmoduleOrderNum = 1)
+        ORDER BY    view_roadmap.ModuleType ^ 1 ASC,
+                    # 1, 3, 2, 4 ASC
+                    view_roadmap.ModuleOrderNum ASC,
+                    view_roadmap.SubmoduleOrderNum ASC;
 END //
 
 
@@ -862,13 +888,13 @@ BEGIN
             view_roadmap.SubmoduleName,
             view_roadmap.SubmoduleRate AS 'MaxRate',
             view_roadmap.SubmoduleType
-    FROM `view_roadmap`
-    INNER JOIN `view_disciplines` ON view_disciplines.DisciplineID = pDisciplineID
-    WHERE   view_roadmap.DisciplineID = pDisciplineID AND
-            (view_roadmap.ModuleType = 'exam' OR view_roadmap.ModuleType = 'extra')
-    ORDER BY    InternalOrderModuleTypesForSession(view_roadmap.ModuleType) ASC,
-                view_roadmap.ModuleOrderNum ASC,
-                view_roadmap.SubmoduleOrderNum ASC;
+        FROM `view_roadmap`
+        INNER JOIN `view_disciplines` ON view_disciplines.DisciplineID = pDisciplineID
+        WHERE   view_roadmap.DisciplineID = pDisciplineID AND
+                (view_roadmap.ModuleType = 'exam' OR view_roadmap.ModuleType = 'extra')
+        ORDER BY    InternalOrderModuleTypesForSession(view_roadmap.ModuleType) ASC,
+                    view_roadmap.ModuleOrderNum ASC,
+                    view_roadmap.SubmoduleOrderNum ASC;
 END //
 
 
diff --git a/~dev_rating/application/classes/Controller/Handler/FileCreator.php b/~dev_rating/application/classes/Controller/Handler/FileCreator.php
index d0a06e5e017e850af7263f04a1a8fe6c19c4878b..8984cd7972dfe4cbb8350d777daea47f3b0c3c94 100644
--- a/~dev_rating/application/classes/Controller/Handler/FileCreator.php
+++ b/~dev_rating/application/classes/Controller/Handler/FileCreator.php
@@ -141,8 +141,8 @@ class Controller_Handler_FileCreator extends Controller_Handler
         $this->printDisciplineToExcelFile($objPHPExcel, $disciplineID, $groupID, $info[0]);
         $grade = $info[0]["GradeNum"];
         $group = $info[0]["GroupNum"];
-        //$this->GetHeaders("FinalForm".$disciplineID."_".$groupID);
-        //$this->GetHeaders("FinalForm_".$grade."_".$group);
+        $this->GetHeaders("FinalForm".$disciplineID."_".$groupID);
+        $this->GetHeaders("FinalForm_".$grade."_".$group);
         $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
         $objWriter->save('php://output');
     }