diff --git a/install/exportDatabase.sh b/install/exportDatabase.sh
index 7e8b761a24ef1085c6bbfed932af24cde65d7226..83f3665e561413047b035033d07b27ec8e57f123 100755
--- a/install/exportDatabase.sh
+++ b/install/exportDatabase.sh
@@ -20,4 +20,4 @@
   if test -z $ok; then ok="n"; fi
   if test "$ok" != "y"; then exit 0; fi
 
-  /usr/bin/mysqldump -p --events --skip-extended-insert --skip-comments --databases $db > $PWD/$db.sql
+  /usr/bin/mysqldump -p --events --routines --skip-extended-insert --skip-comments --databases $db > $PWD/$db.sql
diff --git a/install/mpidb_mpg_licman.sql b/install/mpidb_mpg_licman.sql
index db09620541c496ac53d4b9732bef251fe6929703..a78d90446f36894ec6339b3ef50a843f48dbbb85 100644
--- a/install/mpidb_mpg_licman.sql
+++ b/install/mpidb_mpg_licman.sql
@@ -1830,6 +1830,68 @@ SET character_set_client = utf8;
   `anzVertrag` tinyint NOT NULL
 ) ENGINE=MyISAM */;
 SET character_set_client = @saved_cs_client;
+/*!50003 DROP PROCEDURE IF EXISTS `proc_version` */;
+/*!50003 SET @saved_cs_client      = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results     = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client  = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection  = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode       = @@sql_mode */ ;
+/*!50003 SET sql_mode              = 'NO_AUTO_VALUE_ON_ZERO' */ ;
+DELIMITER ;;
+CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_version`( IN iVerID SMALLINT(6) )
+proc_label:BEGIN
+  DECLARE Vt, Ot, Rt, Lt, It, St, Pt, Dt, Nt, Mt, Tt, Pg SMALLINT(6) DEFAULT '0';
+  DECLARE endRow TINYINT DEFAULT '0';
+  DECLARE forSoft1 CURSOR FOR
+    SELECT verID, orderID, IFNULL(anzLizenz,'0'), IFNULL(useLizenz,'0') FROM view_version WHERE softID = St ORDER BY orderID ASC;
+  DECLARE forSoft2 CURSOR FOR
+    SELECT ver.verID, diffVersion, IFNULL(shw.restVersion,'0') FROM show_version AS shw LEFT JOIN mpi_version AS ver ON ver.verID = shw.verID WHERE ver.softID = St ORDER BY ver.orderID DESC;
+  DECLARE CONTINUE HANDLER FOR NOT FOUND SET endRow = 1;
+  IF iVerID IS NULL THEN LEAVE proc_label; END IF;  
+  SELECT softID INTO St FROM mpi_version WHERE verID = iVerID;
+  IF St IS NULL THEN LEAVE proc_label; END IF;  
+  SELECT MAX(orderID) INTO Mt FROM mpi_version WHERE softID = St;
+
+  OPEN forSoft1;
+  getSoft: LOOP
+  FETCH forSoft1 INTO Vt, Ot, Lt, It;
+  IF endRow = 1 THEN LEAVE getSoft; END IF;
+  SET Dt = (Lt - It + Nt);
+  IF Dt < '0' AND Mt != Ot THEN  
+    SET Pt = '0';
+    SET Nt = Dt;
+  ELSE
+    SET Pt = Dt;
+    SET Nt = '0';
+  END IF;
+  IF Dt < '0' THEN SET Rt = Lt; ELSE SET Rt = Lt - Dt; END IF;
+  UPDATE show_version SET diffVersion = Dt, verbVersion = Rt, restVersion = Pt WHERE verID = Vt;
+  END LOOP getSoft;
+  CLOSE forSoft1;
+
+  SET endRow = '0';
+  OPEN forSoft2;
+  getSoft: LOOP
+  FETCH forSoft2 INTO Vt, Dt, Pt;
+  IF endRow = 1 THEN LEAVE getSoft; END IF;
+  IF Pg < 0 AND Dt < 0 THEN
+    SET Tt = Pg;
+  ELSE
+    SET Pg = (Pg + Pt);
+    SET Tt = Pg;
+  END IF;
+  UPDATE show_version SET freeVersion = Tt WHERE verID = Vt;
+  
+  END LOOP getSoft;
+  CLOSE forSoft2;
+END ;;
+DELIMITER ;
+/*!50003 SET sql_mode              = @saved_sql_mode */ ;
+/*!50003 SET character_set_client  = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection  = @saved_col_connection */ ;
 
 USE `mpidb_mpg_licman`;
 /*!50001 DROP TABLE IF EXISTS `sort_inventar`*/;