# GL - CHECK.r


#          date music_vs_video         V1
# 1: 2014-05-01          Music 16,569,944
# 2: 2014-05-01          Video    502,000
# 3: 2014-06-01          Music 16,935,412
# 4: 2014-06-01          Video    692,454
# 5: 2014-07-01          Music 16,997,293
# 6: 2014-07-01          Video    663,713

formnumb(DT.mgmtr_summary[date >= "2014-05-01", sum(GL_netOfSC_forDS), by=list(date, music_vs_video)][!is.na(music_vs_video)], round=0)
formnumb(DT.mgmtr_summary_manual[date >= "2014-05-01", sumn(GL_netOfSC_forDS), by=list(date, music_vs_video)][!is.na(music_vs_video)], round=0)
formnumb(  temp_DT.sums[date >= "2014-05-01", lapply(.SD, sumn), .SDcols=c("GL_netOfSC_forDS", "reported_gross"), by=list(date, music_vs_video)][!is.na(music_vs_video)], round=0)
formnumb(DT.rev_in_summary_not_in_GL[date >= "2014-05-01", sumn(GL_netOfSC_forDS), by=list(date, music_vs_video)][!is.na(music_vs_video)], round=0)

formnumb(  temp_DT.sums[date >= "2014-05-01", lapply(.SD, sumn), .SDcols=c("GL_netOfSC_forDS", "reported_gross", "rev_in_summary_not_in_GL"), by=list(date, music_vs_video,store_musicbucket)][!is.na(music_vs_video)], round=0)
formnumb(  temp_DT.sums[date >= "2014-04-01", lapply(.SD, sumn), .SDcols=c("GL_netOfSC_forDS", "reported_gross", "rev_in_summary_not_in_GL"), by=list(date)], round=0)




---------------







minDate <- as.Date("2014-01-01"); maxDate <- as.Date("2014-04-01")
dates <- seq(minDate, maxDate, by="month")
dates.char <- as.character(dates)

CORRECT <- structure(list(music_vs_video = c("Music", "Video", "TOTAL"), "2014-01-01" = c(18298.5, 1850, 20148.5), "2014-02-01" = c(15833.8, 1903.8, 17737.6), "2014-03-01" = c(16522.3, 1926.1, 18448.4 ), "2014-04-01" = c(17523.6, 1923.4, 19447)), .Names = c("music_vs_video", "2014-01-01", "2014-02-01", "2014-03-01", "2014-04-01"), row.names = c(NA, -3L), class = c("data.table", "data.frame"))

filter <- quote(date >= "2014-01-01" & date < "2014-05-01" & !(store_name == "zzz_Mainline_Revenue" &  store_musicbucket == "Other Services"))
tmp_DT.check_totals <- as.data.table(reshape2::dcast(DT.mgmtr_summary_manual[eval(filter), sum(GL_netOfSC_forDS), keyby=list(date,music_vs_video)], music_vs_video~date, value.var="V1"))
tmp_DT.check_totals <- rbind(tmp_DT.check_totals, tmp_DT.check_totals[, c(music_vs_video="TOTAL", lapply(.SD, sum)), .SDcols=c(setdiff(names(tmp_DT.check_totals), c("music_vs_video", "store_musicbucket")))])
formnumb(tmp_DT.check_totals[, lapply(.SD, function(x) round(x/1000, 1)), by=music_vs_video][,!"music_vs_video", with=FALSE])


---------


### CONFIRM totals:
filter <- quote(date >= "2014-01-01" & date < "2014-05-01" & !(store_name == "zzz_Mainline_Revenue" &  store_musicbucket == "Other Services"))
tmp_DT.check_totals <- as.data.table(reshape2::dcast(DT.mgmtr_summary_manual[eval(filter), sum(GL_netOfSC_forDS), keyby=list(date,music_vs_video,store_musicbucket)], music_vs_video+store_musicbucket~date, value.var="V1"))
# tmp_DT.check_totals <- rbind(tmp_DT.check_totals, tmp_DT.check_totals[, c(music_vs_video="TOTAL", lapply(.SD, sum)), .SDcols=c(setdiff(names(tmp_DT.check_totals), c("music_vs_video", "store_musicbucket")))])
tmp_DT.check_totals <- tmp_DT.check_totals[music_vs_video == "Music"]
setkeyIfNot(tmp_DT.check_totals, music_vs_video, store_musicbucket)

formnumb(CORRECT[,!"music_vs_video", with=FALSE])
formnumb(tmp_DT.check_totals[, lapply(.SD, function(x) round(x/1000, 1)), by=music_vs_video][,!"music_vs_video", with=FALSE])

formnumb(tmp_DT.check_totals[, lapply(.SD, function(x) round(x/1000, 1) ), keyby=key(tmp_DT.check_totals)])
formnumb(tmp_DT.check_totals[, lapply(.SD, function(x) round(sum(x)/1000, 1) ), .SDcols=dates.char])

CORRECT[,!"music_vs_video", with=FALSE] - tmp_DT.check_totals[, lapply(.SD, function(x) round(x/1000, 1)), by=music_vs_video][,!"music_vs_video", with=FALSE]

formnumb(tmp_DT.check_totals[, lapply(.SD, function(x) round(x/1000, 1)), by=music_vs_video])




--------------------
minDate <- as.Date("2014-06-01"); maxDate <- as.Date("2014-07-01")
dates <- seq(minDate, maxDate, by="month")
dates.char <- as.character(dates)


DT.mgmtr_summary_manual[date >= minDate & date <= maxDate, list(GL_netOfSC_forDS=sum(GL_netOfSC_forDS)), keyby=list(date, music_vs_video)]

filter <- quote(date >= minDate & date <= maxDate)
tmp_DT.check_totals <- as.data.table(reshape2::dcast(DT.mgmtr_summary_manual[eval(filter), sum(GL_netOfSC_forDS), keyby=list(date,music_vs_video)], music_vs_video~date, value.var="V1"))
tmp_DT.check_totals <- rbind(tmp_DT.check_totals, tmp_DT.check_totals[, c(music_vs_video="TOTAL", lapply(.SD, sum)), .SDcols=c(setdiff(names(tmp_DT.check_totals), c("music_vs_video", "store_musicbucket")))])
formnumb(tmp_DT.check_totals[, lapply(.SD, function(x) round(x/1000, 1)), by=music_vs_video][,!"music_vs_video", with=FALSE])
