diff --git a/R/shiny-state.R b/R/shiny-state.R
index 6a245851eb3a9e07bc8b157c50ebb726e3ad0975..c70cafd05d388829819ea965ed0fdf7a83cd895e 100644
--- a/R/shiny-state.R
+++ b/R/shiny-state.R
@@ -29,6 +29,17 @@ GUI_ALL_INPUTS <- c(GUI_SELECT_INPUTS,
                       GUI_RADIO_INPUTS)
 
 
+add_new_def_tag <- function(old_tags,how_many) {
+    ind <- which(grepl(r"(^F\d+$)",old_tags))
+    st_num <- if (length(ind)>0L) {
+                    old_def_tags <- old_tags[ind]
+                    tag_nums <- gsub(r"(^F(\d+)$)",r"(\1)",old_def_tags)
+                    max(as.integer(tag_nums))
+                   
+        
+    } else 0L
+    c(old_tags,paste0('F',(st_num + 1L):(st_num + how_many)))
+}
 
 #' @export
 create_stub_gui <- function() {
@@ -253,7 +264,8 @@ gen_dfiles_tab <- function(gui) {
     curr_tag <- gui$datatab$tag
     
     res <- data.table(file=curr_file,tag=curr_tag)
-    res[,tag:=as.factor(tag)]
+    ## res[,tag:=as.factor(tag)]
+    res
     
 }
 
diff --git a/R/shiny-ui-base.R b/R/shiny-ui-base.R
index 36d645d314f27ce931076c0fe1d7d9ee153115ca..f0d5655dc7f2ab8901e9f02cda841b35d43f8d4f 100644
--- a/R/shiny-ui-base.R
+++ b/R/shiny-ui-base.R
@@ -1028,12 +1028,11 @@ mk_shinyscreen_server <- function(projects,init) {
                 nb <- length(curr_file)
                 nd <- length(new_file)
                 res_file <- c(curr_file,new_file)
-                res_tag <- c(curr_tag,paste0('F',(nb + 1):(nb + nd)))
                 res_adduct <- c(curr_adduct,rep(NA_character_,nd))
                 res_set <- c(curr_set,rep(NA_character_,nd))
 
                 rvs$gui$datatab$file <- res_file
-                rvs$gui$datatab$tag <- res_tag
+                rvs$gui$datatab$tag <- add_new_def_tag(as.character(rvs$gui$datatab$tag),nd)
                 rvs$gui$datatab$adduct <- res_adduct
                 rvs$gui$datatab$set <- res_set
             }
@@ -1060,8 +1059,8 @@ mk_shinyscreen_server <- function(projects,init) {
             df <- DT::editData(df,
                                input$datafiles_cell_edit,
                                rownames = F)
-            rvs$gui$datatab$file <- df$file
-            rvs$gui$datatab$tag <- df$tag
+            rvs$gui$datatab$file <- as.character(df$file)
+            rvs$gui$datatab$tag <- as.character(df$tag)
             
         }, label = "datafiles-edit")