diff --git a/~dev_rating/application/classes/Model/Helper/CourseWorkBuilder.php b/~dev_rating/application/classes/Model/Helper/CourseWorkBuilder.php
index ecb120e971710998e30c3a9e5553c5fd29384a11..c4cf43cd972ec0d90814f98d2c6f50d91d5c67e8 100644
--- a/~dev_rating/application/classes/Model/Helper/CourseWorkBuilder.php
+++ b/~dev_rating/application/classes/Model/Helper/CourseWorkBuilder.php
@@ -2,7 +2,7 @@
 
 class Model_Helper_CourseWorkBuilder extends Model_Helper_Builder
 {
-    const COURSEWORK_DISCIPLINE_ID = 346;
+    const COURSEWORK_DISCIPLINE_ID = 346;  # todo: move to config
 
     public function create() {
         $this->data += [
@@ -46,7 +46,6 @@ class Model_Helper_CourseWorkBuilder extends Model_Helper_Builder
         return $this;
     }
 
-    /** Must be called after subtype() */
     function & subject($id) {
         if ($this->data['Subtype'] === Model_CourseWork::SCIENTIFIC)
             $id = self::COURSEWORK_DISCIPLINE_ID;
@@ -63,9 +62,13 @@ class Model_Helper_CourseWorkBuilder extends Model_Helper_Builder
             throw new InvalidArgumentException('Type is incorrect');
 
         switch ($name) {
-            case Model_CourseWork::DISCIPLINARY:
             case Model_CourseWork::SCIENTIFIC:
+                $this->data['SubjectID'] = self::COURSEWORK_DISCIPLINE_ID;
                 break;
+
+            case Model_CourseWork::DISCIPLINARY:
+                break;
+
             default:
                 throw new InvalidArgumentException('Subtype is incorrect');
         }