lsos() DT.nms <- c("DB.raw", "DT.releaseDates", "SomLivre") ## SHOULD BE ALL CHARACTER stopifnot(sapply(DT.nms, function(x) get(x)[, inherits(upc, "character")])) setkeyIfNot(DB.raw, upc) setkeyIfNot(DT.releaseDates, upc) setkeyIfNot(SomLivre, upc) DB.raw[SomLivre, c("startDate", "endDate") := list(i.date, i.date + 7)] DB.raw[DT.releaseDates, c("releaseDate", "releaseName") := list(i.releaseDate, i.releaseName)] DB.raw[, fullName := pasteC(center(paste0(title, "\n[", artist, " - ", releaseName, "]"), pad=0, header=FALSE, all.same=FALSE), C="\n") , by=list(title, artist, releaseName)]