customAlpha = function(start.date, end.date = Sys.Date(), username = "gabriel.oprescu", password = "Nob3l_0504") {
path = getwd()
########### Login
if(missing(start.date) & missing(end.date) & missing(username) & missing(password)){
stop("Please specify all the parameters in function's definition")
}else{
username <- as.character(username)
password <- as.character(password)
agent = "Firefox/23.0"
curl = getCurlHandle()
curlSetOpt(cookiejar = "cookies.txt", useragent = agent,
followlocation = TRUE, autoreferer = TRUE,
curl = curl)
params <- list(userAgent = agent, username = username,
password = password)
########### Login
q.param = list(search.report.param1 = c("filterOrderDateTo=",
"filterType=",
"filterOrderDateFrom="),
search.report.values1 = c("1"))
start.date = as.Date(as.POSIXct(start.date, tz = "EST"))
end.date = as.Date(as.POSIXct(end.date, tz = "EST"))
if(start.date > end.date)
stop("Maybe you want to reverse start and end date")
full_week = as.numeric(end.date - start.date)%/%7
full_day = as.numeric(end.date - start.date)%%7
day_seq = c(rep(c(6,1), full_week), full_day)
date_seq = start.date
for(i in 1:length(day_seq)){
date_seq[i+1] = date_seq[i] + day_seq[i]
}
date_from = date_seq[(1:(length(day_seq)-1))%%2 != 0]
date_to = date_seq[(1:(length(day_seq)+1))%%2 == 0]
date_trans = function(x) {
paste(month(x), day(x), year(x), sep = "%2F")
}
date_from_trans = unlist(map(date_from, date_trans))
date_to_trans = unlist(map(date_to, date_trans))
################# Preluare tabel initial
# length(date_from_to)
for (i in 1:length(date_from_trans)) {
####### Login
postForm("https://consumer.totalmanager.com/login.htm",
.params = params, curl = curl, style = "POST")
####### Login
search.report.param = q.param[[1]]
search.report.values = c(date_to_trans[i],
q.param[[2]], date_from_trans[i])
url = paste0("https://consumer.totalmanager.com/workplace/order/customReportAlpha.htm?action=exportCSV&pageNumber=&rowsPerPage=&goToPageNumber=&column=&scope=REQUEST&exportDecoratorName=retail.order.customReportAlphaExportDecorator&exportDecoratorScope=SPRING&tableModelName=retail.order.orderTableModel.new&",
paste0(search.report.param, search.report.values,
"&", collapse = ""), collapse = "")
filename = tempfile("temporar", tmpdir = path,
fileext = ".csv")
f = CFILE(filename, mode = "wb")
curlPerform(url = url, curl = curl, writedata = f@ref)
close(f)
fisier = read.csv(filename)
file.remove(filename)
fisier = mutate(fisier, Order.Date = as.Date(Order.Date, "%Y-%m-%d"))
write.csv(fisier, paste("alpha-", date_from[i],
"-", date_to[i], ".csv", sep = ""), row.names = FALSE)
write.table(fisier, "append.csv", append = TRUE,
row.names = FALSE, col.names = FALSE, sep = ",",
quote = FALSE)
########### Logout
postForm("https://consumer.totalmanager.com/logout.htm",
.params = params, curl = curl, style = "POST")
########### Logout
}
}
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.