diff --git a/entity/Leadimport_entity/Leadimport_entity.aod b/entity/Leadimport_entity/Leadimport_entity.aod
index d9ae5a1b44f82ade0e29f3192550ae345eabf463..74bce464c53c67f55ac1d64ca2edd1bcc84d3874 100644
--- a/entity/Leadimport_entity/Leadimport_entity.aod
+++ b/entity/Leadimport_entity/Leadimport_entity.aod
@@ -279,10 +279,6 @@
       <onActionProcess>%aditoprj%/entity/Leadimport_entity/entityfields/uploadnewfile/onActionProcess.js</onActionProcess>
       <iconId>VAADIN:UPLOAD_ALT</iconId>
     </entityActionField>
-    <entityParameter>
-      <name>LeadimportNewFile_param</name>
-      <expose v="true" />
-    </entityParameter>
     <entityField>
       <name>information</name>
       <title>Warning</title>
diff --git a/entity/Leadimport_entity/entityfields/bindata/valueProcess.js b/entity/Leadimport_entity/entityfields/bindata/valueProcess.js
index 0deacd7374127a76c96831258de85ada86a45c5e..b26be7ad4df799fc7479293b26d3c25c628b6efe 100644
--- a/entity/Leadimport_entity/entityfields/bindata/valueProcess.js
+++ b/entity/Leadimport_entity/entityfields/bindata/valueProcess.js
@@ -5,17 +5,15 @@ import("system.vars");
 import("system.db");
 import("Document_lib");
 
-if (vars.get("$sys.recordstate") && vars.get("$sys.recordstate") != neon.OPERATINGSTATE_NEW && vars.get("$sys.recordstate") != neon.OPERATINGSTATE_EDIT)
+if (vars.get("$sys.recordstate") && vars.get("$sys.recordstate") != neon.OPERATINGSTATE_NEW && vars.get("$this.value") == null)
 {
     var binMetadatas = db.getBinaryMetadata("LEADIMPORT", "IMPORTFILE", vars.get("$field.LEADIMPORTID"), false, SqlUtils.getBinariesAlias(), "");
     if (binMetadatas.length > 0)
     {
-        // preset with data from db. This is mostly to allow just editing the other fields without uploading a file (because this field is mandatory)
-        var resultValue = binMetadatas[0].filename;
-        resultValue += ";" + db.getBinaryContent(binMetadatas[0].id, SqlUtils.getBinariesAlias());
-        resultValue += ";" + binMetadatas[0].mimetype;
-
-        result.string(resultValue);
+        // preset the field. This is to allow just editing the other fields without uploading a file (because this field is mandatory)
+        // if the user did not upload a file "FILE NOT CHANGED" will be still in the field in onDBUpdate and nothing has to be done there
+        // --> this is a marking that the field didn't change
+        result.string("FILE NOT CHANGED");
     } else {
         result.string("FILE MISSING");
     }
diff --git a/entity/Leadimport_entity/entityfields/uploadnewfile/onActionProcess.js b/entity/Leadimport_entity/entityfields/uploadnewfile/onActionProcess.js
index 61c8adfb82ce1028f9484a4f1b715dd8a491e42b..e62547450131766e5bbb2a24282d84a1e4c6ad74 100644
--- a/entity/Leadimport_entity/entityfields/uploadnewfile/onActionProcess.js
+++ b/entity/Leadimport_entity/entityfields/uploadnewfile/onActionProcess.js
@@ -1,7 +1,4 @@
 import("system.neon");
 import("system.vars");
 
-var prompts = new Array();
-prompts["LeadimportNewFile_param"] = true;
-
-neon.openContext("Leadimport", "LeadimportDocEdit_view", [vars.getString("$field.LEADIMPORTID")], neon.OPERATINGSTATE_EDIT, prompts);
\ No newline at end of file
+neon.openContext("Leadimport", "LeadimportDocEdit_view", [vars.getString("$field.LEADIMPORTID")], neon.OPERATINGSTATE_EDIT, []);
\ No newline at end of file
diff --git a/entity/Leadimport_entity/recordcontainers/db/onDBInsert.js b/entity/Leadimport_entity/recordcontainers/db/onDBInsert.js
index 5d54b3a0c52da043c0c5b4e44c32184ad2794aa0..c64451acb8eb094e4fbbac23fdc4b2265c65b13f 100644
--- a/entity/Leadimport_entity/recordcontainers/db/onDBInsert.js
+++ b/entity/Leadimport_entity/recordcontainers/db/onDBInsert.js
@@ -23,5 +23,4 @@ if(bindata != '' && filename != '')
         var documentId = SingleBinaryUtils.insertMainDocument("LEADIMPORT", "IMPORTFILE", assignmentRowId, bindata, filename, "", SqlUtils.getBinariesAlias());
         LeadImportUtils.loadImportFile(documentId, fieldSep, fieldLimit, recordSep, assignmentRowId);
     }
-}
-
+}
\ No newline at end of file
diff --git a/entity/Leadimport_entity/recordcontainers/db/onDBUpdate.js b/entity/Leadimport_entity/recordcontainers/db/onDBUpdate.js
index 6eb7c12952c9d6ed461f03bc0345f52c34dd42b5..07d9801b3fda42f8bf2cf55245b8e466cfe2463a 100644
--- a/entity/Leadimport_entity/recordcontainers/db/onDBUpdate.js
+++ b/entity/Leadimport_entity/recordcontainers/db/onDBUpdate.js
@@ -6,28 +6,32 @@ import("Binary_lib");
 import("Leadimport_lib");
 import("system.db");
 import("system.vars");
+import("system.util");
 import("Document_lib");
 
-var assignmentRowId = vars.get("$field.LEADIMPORTID");
-var bindata = DocumentUtil.getBindataFromUpload(vars.get("$field.bindata"));
-var filename = DocumentUtil.getFilenameFromUpload(vars.get("$field.bindata"));
-
-var fieldSep = LeadImportUtils.getFieldSeparator(vars.get("$field.FIELDSEPARATOR"));
-var fieldLimit = LeadImportUtils.getFieldLimit(vars.get("$field.FIELDDELIMITERS"));
-var recordSep = LeadImportUtils.getRecordSeparator(vars.get("$field.SENTENCESEPARATOR"));
-
-if(bindata != '' && filename != '')
+// "FILE NOT CHANGED" is set in the value process of the field to indicate that the user didn't upload a new file
+if (vars.get("$field.bindata") != "FILE NOT CHANGED")
 {
-    var mimeType = DocumentUtil.getMimeTypeFromUpload(vars.get("$field.bindata"));
+    var assignmentRowId = vars.get("$field.LEADIMPORTID");
+    var bindata = DocumentUtil.getBindataFromUpload(vars.get("$field.bindata"));
+    var filename = DocumentUtil.getFilenameFromUpload(vars.get("$field.bindata"));
+
+    var fieldSep = LeadImportUtils.getFieldSeparator(vars.get("$field.FIELDSEPARATOR"));
+    var fieldLimit = LeadImportUtils.getFieldLimit(vars.get("$field.FIELDDELIMITERS"));
+    var recordSep = LeadImportUtils.getRecordSeparator(vars.get("$field.SENTENCESEPARATOR"));
 
-    if (mimeType == "application/vnd.ms-excel")
+    if(bindata != '' && filename != '')
     {
-        var binMetadata = db.getBinaryMetadata("LEADIMPORT", "IMPORTFILE", assignmentRowId, false, SqlUtils.getBinariesAlias(), "MAINDOCUMENT");
-        if (binMetadata.length > 0) {
-            db.updateBinary(binMetadata[0].id, "", bindata, filename, "", "MAINDOCUMENT", SqlUtils.getBinariesAlias());
-            LeadImportUtils.loadImportFile(binMetadata[0].id, fieldSep, fieldLimit, recordSep, assignmentRowId, true, vars.get("$param.LeadimportNewFile_param"));
+        var mimeType = DocumentUtil.getMimeTypeFromUpload(vars.get("$field.bindata"));
+        if (mimeType == "application/vnd.ms-excel")
+        {
+            var binMetadata = db.getBinaryMetadata("LEADIMPORT", "IMPORTFILE", assignmentRowId, false, SqlUtils.getBinariesAlias(), "");
+            if (binMetadata.length > 0) {
+                db.updateBinary(binMetadata[0].id, "", bindata, filename, "", "MAINDOCUMENT", SqlUtils.getBinariesAlias());
+                LeadImportUtils.loadImportFile(binMetadata[0].id, fieldSep, fieldLimit, recordSep, assignmentRowId, true, true);
+            }
         }
     }
-}
 
-neon.refreshAll();
\ No newline at end of file
+    neon.refreshAll();
+}
diff --git a/process/Leadimport_lib/process.js b/process/Leadimport_lib/process.js
index 5ab71fe83c8d233686f66a16d8932dbea69cc527..f5a26ce830c78020f83d6f49043620bcf76fbfc0 100644
--- a/process/Leadimport_lib/process.js
+++ b/process/Leadimport_lib/process.js
@@ -101,7 +101,7 @@ LeadImportUtils.loadImportFile = function(pBinId, pFieldSep, pFieldLimit, pRecor
             var data = db.getBinaryContent(pBinId, SqlUtils.getBinariesAlias());
             data = util.decodeBase64String(data, "UTF-8");
             var table = text.parseCSV(data.replace(/(^\s+)|(\s+$)/g,""), pRecordSep, pFieldSep, pFieldLimit.charAt(0));
-            if (pNewFile != "true")
+            if (pNewFile)
             {
                 if (pUpdate) {
                     db.deleteData("IMPORTFIELD", newWhere("IMPORTFIELD.LEADIMPORT_ID", pLeadImportId).build());
@@ -112,7 +112,7 @@ LeadImportUtils.loadImportFile = function(pBinId, pFieldSep, pFieldLimit, pRecor
                     insertVals =  [util.getNewUUID(), table[0][i], pLeadImportId, vars.getString("$sys.date"), vars.getString("$sys.user"), i.toString()];
                     toInsert.push([insertTable, insertCols, insertTypes, insertVals]);
                 }
-                db.inserts(toInsert);              
+                db.inserts(toInsert);
             }
             
             db.deleteData("LEADTEMP", newWhere("LEADTEMP.ROW_ID", pLeadImportId).build());//delete existing temp data