diff --git a/src/parser/parser.py b/src/parser/parser.py
index 278aa5534ffc9b9af4a6523c27bd236e9fdf7513..68dced26b7c518005318ad7cc7f704a05f5774aa 100755
--- a/src/parser/parser.py
+++ b/src/parser/parser.py
@@ -179,13 +179,19 @@ def fill_db(server_uri, db_name, user, passwd, replicon_db, system_db, force_upd
     secreton_db = server.get_or_create_db(db_name)
     system_codes = system_db.keys()
     system_codes.sort()
+    print("number of documents:", len(system_codes), file=sys.stderr)
     for syst_code in system_codes:
         system = system_db[syst_code]
-        replicon = replicon_db[system.replicon]
+        try:
+            replicon = replicon_db[system.replicon]
+        except KeyError:
+            print("ERROR Replicon {0} referenced in system annotation file is not present in replicon information file: replicon skipped")
+            continue
         secretion_system = SecretionSystem()
         secretion_system._id = system.code
         secretion_system.code = system.code
         secretion_system.predicted_system = system.predicted_system
+        secretion_system.system_status = system.system_status
         secretion_system.replicon = {'name': replicon.name,
                                      'ncbi_id': replicon.ncbi_id,
                                      'taxid': replicon.taxid,