diff --git a/db/StoredProcedures.sql b/db/StoredProcedures.sql
index f0f2217d9656cff840a5c1c4158fe1b7395ed7ee..a2d93d3c4d3d11186a1b877b59b1703a32555d21 100644
--- a/db/StoredProcedures.sql
+++ b/db/StoredProcedures.sql
@@ -1779,6 +1779,48 @@ BEGIN
 			);
 
 
+END //
+
+DROP FUNCTION IF EXISTS AddModule//
+CREATE FUNCTION `AddModuleExam`	(	`TeacherID` 	INT, 
+									`DisciplineID` 	INT
+								) 	RETURNS int(11)
+    NO SQL
+BEGIN  
+    DECLARE checker INT;  					 
+	
+	SELECT disciplines.ID 
+	INTO checker 
+	FROM `disciplines`
+	INNER JOIN `disciplines_teachers` ON disciplines_teachers.TeacherID = TeacherID AND disciplines_teachers.DisciplineID = disciplines.ID
+	WHERE 	disciplines.ID = DisciplineID
+	LIMIT 1;
+    IF NOT (checker > 0) THEN
+    	RETURN -1;
+	END IF;
+
+	SET checker = -1;
+	SELECT modules.ID 
+	INTO checker
+	FROM `modules`
+	WHERE 	modules.DisciplineID = DisciplineID AND 
+			modules.isExam = 1;
+	IF checker > 0 THEN
+		RETURN -2;
+	END IF;
+
+
+	INSERT INTO `modules` 	( modules.Name, modules.OrderNum, modules.DisciplineID, modules.isExam )
+	VALUES 					( 'Экзамен' , 666 , DisciplineID, 1 );
+	
+
+	RETURN 	(	SELECT 	modules.ID
+				FROM `modules`
+				WHERE 	modules.DisciplineID = DisciplineID AND 
+						modules.isExam = 1
+			);
+
+
 END //
 
 -- Добавление нового подмодуля к данному модулю
@@ -1822,6 +1864,32 @@ BEGIN
 	RETURN 0;
 END //
 
+DROP FUNCTION IF EXISTS DeleteModule//
+CREATE FUNCTION `DeleteModuleExam`		(	`TeacherID` INT,
+											`DisciplineID` 	INT 
+										)  	RETURNS int(11)
+    NO SQL
+BEGIN  
+
+    DECLARE checker INT;
+
+	SELECT disciplines.ID 
+	INTO checker 
+	FROM `disciplines_teachers`
+	WHERE  	disciplines_teachers.TeacherID = TeacherID AND 
+			disciplines_teachers.DisciplineID = DisciplineID
+	LIMIT 1;
+    IF NOT (checker > 0) THEN
+    	RETURN -1;
+	END IF;
+
+
+	DELETE FROM `modules` 
+	WHERE modules.isExam = 1
+	LIMIT 1; 
+
+	RETURN 0;
+END //
 
 
 
diff --git a/db/Structure.sql b/db/Structure.sql
index 329f4449bc0249d53f09b3ab434c0fc96dd2c984..8b14fc77710a6878d5dcd56089ce33c7c8cfe9d0 100644
--- a/db/Structure.sql
+++ b/db/Structure.sql
@@ -191,10 +191,11 @@ CREATE TABLE IF NOT EXISTS `modules` (
   `Name` varchar(50) NOT NULL,
   `OrderNum` int(11) NOT NULL,
   `DisciplineID` int(11) NOT NULL,
+  `isExam` tinyint(1) NOT NULL DEFAULT '0',
   PRIMARY KEY (`ID`),
   UNIQUE KEY `OrderNum` (`OrderNum`,`DisciplineID`),
   KEY `DisciplineID` (`DisciplineID`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
 
 -- --------------------------------------------------------