Many thanks Andre
I have tried the following with ReactivePoll:
# libraries ----
library(shiny)
library(arules)
#> Loading required package: Matrix
#>
#> Attaching package: 'arules'
#> The following objects are masked from 'package:base':
#>
#> abbreviate, write
library(arulesViz)
#> Loading required package: grid
#> Registered S3 methods overwritten by 'ggplot2':
#> method from
#> [.quosures rlang
#> c.quosures rlang
#> print.quosures rlang
#> Registered S3 method overwritten by 'seriation':
#> method from
#> reorder.hclust gclus
library(tidyverse)
#> Registered S3 method overwritten by 'rvest':
#> method from
#> read_xml.response xml2
library(knitr)
library(gridExtra)
#>
#> Attaching package: 'gridExtra'
#> The following object is masked from 'package:dplyr':
#>
#> combine
library(lubridate)
#>
#> Attaching package: 'lubridate'
#> The following object is masked from 'package:base':
#>
#> date
library(colorspace)
library(RColorBrewer)
library(DT)
#>
#> Attaching package: 'DT'
#> The following objects are masked from 'package:shiny':
#>
#> dataTableOutput, renderDataTable
library(RMySQL)
#> Loading required package: DBI
library(DBI)
library(ggplot2)
library(plyr)
#> -------------------------------------------------------------------------
#> You have loaded plyr after dplyr - this is likely to cause problems.
#> If you need functions from both plyr and dplyr, please load plyr first, then dplyr:
#> library(plyr); library(dplyr)
#> -------------------------------------------------------------------------
#>
#> Attaching package: 'plyr'
#> The following object is masked from 'package:lubridate':
#>
#> here
#> The following objects are masked from 'package:dplyr':
#>
#> arrange, count, desc, failwith, id, mutate, rename, summarise,
#> summarize
#> The following object is masked from 'package:purrr':
#>
#> compact
library(pool)
library(shinyjs)
#>
#> Attaching package: 'shinyjs'
#> The following object is masked from 'package:pool':
#>
#> show
#> The following object is masked from 'package:RMySQL':
#>
#> show
#> The following object is masked from 'package:DBI':
#>
#> show
#> The following object is masked from 'package:colorspace':
#>
#> show
#> The following object is masked from 'package:lubridate':
#>
#> show
#> The following objects are masked from 'package:arules':
#>
#> info, show
#> The following object is masked from 'package:Matrix':
#>
#> show
#> The following object is masked from 'package:shiny':
#>
#> runExample
#> The following objects are masked from 'package:methods':
#>
#> removeClass, show
library(gridExtra)
library(glue)
#>
#> Attaching package: 'glue'
#> The following object is masked from 'package:dplyr':
#>
#> collapse
library(cowplot)
#>
#> Attaching package: 'cowplot'
#> The following object is masked from 'package:ggplot2':
#>
#> ggsave
library(viridis)
#> Loading required package: viridisLite
library(ggridges)
#>
#> Attaching package: 'ggridges'
#> The following object is masked from 'package:ggplot2':
#>
#> scale_discrete_manual
library(ggthemes)
#>
#> Attaching package: 'ggthemes'
#> The following object is masked from 'package:cowplot':
#>
#> theme_map
library(tibble)
library(Rcpp)
library(shinycssloaders)
library(scales)
#>
#> Attaching package: 'scales'
#> The following object is masked from 'package:viridis':
#>
#> viridis_pal
#> The following object is masked from 'package:purrr':
#>
#> discard
#> The following object is masked from 'package:readr':
#>
#> col_factor
library(visNetwork)
library(htmlwidgets)
library(plotly)
#>
#> Attaching package: 'plotly'
#> The following objects are masked from 'package:plyr':
#>
#> arrange, mutate, rename, summarise
#> The following object is masked from 'package:ggplot2':
#>
#> last_plot
#> The following object is masked from 'package:stats':
#>
#> filter
#> The following object is masked from 'package:graphics':
#>
#> layout
jscode <- "shinyjs.closeWindow = function() { window.close(); }"
# Define UI for application
ui <- navbarPage(title = "Online Retail Transactions Insights & Market Basket Analysis",
# uncomment below line for adding logo:
# list(HTML('<div><img src="logo.jpg" height = 50px style=""></div>')),
tabPanel("Results",
icon = icon("chart-bar"),
sidebarLayout(
sidebarPanel(
condition = "input.mytab %in%' c('graph',Table ,'datatable', 'itemFreq','monthTrans','weekTrans','hourTrans','itemComb',
'itemSingle','itemsPerhr', itemsPerday','itemsPerWeekday','transDensity','salesSum','salesWeek','hourlyCustomer','dailyCustomer', 'monthlyCustomer','ItemTransHr','ItemTransWk','ItemTransMonth','bubbleChart',salesTable')",
# conditionalPanel(
# condition = "input.mytab %in%' c('monthTrans','weekTrans', 'hourTans')",
# htmlOutput("rangeDate_selector"),
# ),
htmlOutput("rangeDate_selector"),
htmlOutput("productName_selector"),
# htmlOutput("branchName_selector"),
radioButtons('samp', label='Sample', choices=c('All Rules', 'Sample'), inline=T), br(),
conditionalPanel(
condition = "input.samp=='Sample'",
numericInput("nrule", 'Number of Rules', 10), br()),
conditionalPanel(
condition = "input.mytab=='graph'",
radioButtons('graphType', label='Graph Type', choices=c('itemsets','items'), inline=T), br()),
#
conditionalPanel(
condition = "input.mytab=='itemFreq'",
numericInput("topN", 'Number of Top Frequent Items', 10), br()),
#
conditionalPanel(
condition = "input.mytab=='grouped'",
sliderInput('k', label='Choose # of rule clusters', min=1, max=150, step=1, value=15), br()),
conditionalPanel(
condition = "input.mytab=='table'",
sliderInput("supp", "Support", min = 0,max = 1, value = 0.002, step = 1/10000), br(),
sliderInput("conf", "Confidence", min = 0, max = 1, value = 0.8, step = 1/10000), br(),
selectInput("sort", "Sorting Criteria:", choices = c('lift','confidence', 'support')), br(),
numericInput("minL","Min items per set",2), br(),
numericInput("maxL", "Max items per set", 4), br()),
# Action button
actionButton("goPlot", "Go Plot!",width = NULL),
# Close shop:
# column(5,
# div(title='Exit this Shiny plotting app? (The plots will NOT be automatically saved!)',
# actionButton(inputId="close_shop", label=strong("Exit..."), icon=icon("remove-circle", lib="glyphicon"), style="color: #C70039 ; border-color: #C70039"))
# ),
#
extendShinyjs(text = jscode, functions = c("closeWindow")),
actionButton("close", "Close window"),
#
# HTML("<button type='button'>Toggle Fullscreen</button>"),
onclick = "shinyjs.toggleFullScreen();"
),
# Show all plots
mainPanel(
tabsetPanel(id='mytab',
# tabPanel('Grouped', value='grouped', plotOutput("groupedPlot", width='100%', height='100%')),
tabPanel('Graph', value='graph', plotOutput("graphPlot", width='100%', height='100%')),
# tabPanel('Scatter', value='scatter', plotOutput("scatterPlot", width='100%', height='100%')),
# tabPanel('Parallel Coordinates', value='paracoord', plotOutput("paracoordPlot", width='100%', height='100%')),
# tabPanel('Matrix', value='matrix', plotOutput("matrixPlot", width='100%', height='100%')),
# tabPanel('ItemFreq', value='itemFreq', plotOutput("itemFreqPlot", width='100%', height='100%')),
tabPanel('Table', value='table', verbatimTextOutput("rulesTable")),
tabPanel('Data Table', value='datatable', dataTableOutput("rulesDataTable")),
tabPanel('Monthly Transacts',value = 'monthTrans', plotOutput("TransMonthPlot", width = '100%', height = '100%')),
tabPanel('Hourly Transacts',value = 'hourTrans', plotOutput("TransHourPlot", width = '100%', height = '100%')),
tabPanel('Daily Transacts',value = 'weekTrans', plotOutput("TransWeekPlot", width = '100%', height = '100%')),
# tabPanel('Combination Items',value = 'itemComb', plotOutput("ItemCombPlot", width = '100%', height = '100%')),
# tabPanel('Single Items',value = 'itemSingle', plotOutput("ItemSinglelot", width = '100%', height = '100%')),
tabPanel('Line items Summary',value = 'itemsPerday', plotOutput("ItemsPerDay", width = '100%', height = '100%')),
# tabPanel('Line items sold/hr',value = 'itemsPerhr', plotOutput("ItemsPerHour", width = '100%', height = '100%')),
# tabPanel('Total line items sold/day',value = 'itemsPerWeekday', plotOutput("ItemsPerWeekday", width = '100%', height = '100%')),
tabPanel('Transacts Density/hr by day',value = 'transDensity', plotOutput("TransDensityPerHour", width = '100%', height = '100%')),
tabPanel('$Sales Summary',value = 'salesSum', plotOutput("salesvaluePlot", width = '100%', height = '100%')),
# tabPanel('Daily $Sales Summary',value = 'salesWeek', plotOutput("salesPerWeekday", width = '100%', height = '100%')),
# tabPanel('Hourly Customer Summary',value = 'hourlyCustomer', plotOutput("hourlyCustomerPlot", width = '100%', height = '100%')),
tabPanel('Customer Summary',value = 'monthlyCustomer', plotOutput("monthlyCustomerPlot", width = '100%', height = '100%')),
# tabPanel('Bubble Chart',value = 'bubbleChart', plotlyOutput("bubbleChart", width = '100%', height = '100%')),
# tabPanel('Daily Customer Summary',value = 'dailyCustomer', plotOutput("dailyCustomerPlot", width = '100%', height = '100%')),
# tabPanel('Items/transact/hr',value = 'ItemTransHr', plotOutput("transItemHour", width = '100%', height = '100%')),
# tabPanel('Items/transact/day',value = 'ItemTransWk', plotOutput("transItemWeekday", width = '100%', height = '100%')),
# tabPanel('Items/transact/month',value = 'ItemTransMonth', plotOutput("transItemMonth", width = '100%', height = '100%')),
tabPanel('Item Sales Summary',value = 'salesTable', dataTableOutput("salesDataTable"))
)
)
))
)
# Define server logic required for the application
server <- function(input, output, session) {
# Reactive data base
MBA_Online <- reactivePoll(3000, session,
checkFunc = function() {
con <- dbConnect(MySQL(),
user = "root",
password = "ruvimboML55AMG",
host = "localhost",
dbname = "healthcare_mining")
# get max date from database view to determine if data has been updated
max_date <- dbGetQuery(con, "SELECT MAX(cu_date) AS max_cu_date
FROM viewMaxCreatedUpdatedDates")
# disconnet from RDS
dbDisconnect(con)
return(max_date)
},
valueFunc = function() {
con <- dbConnect(MySQL(),
user = "root",
password = "ruvimboML55AMG",
host = "localhost",
dbname = "healthcare_mining")
# construct the SQL statement
sql <- "SELECT Transaction,Item, Date, Quantity, CustomerID, Amount FROM onlineRetail;"
MBA_Online <- dbGetQuery(con, sql)
# disconnect
dbDisconnect(con)
return(MBA_Online)
#Remove negative amount values
MBA_Online <- MBA_Online %>%
filter(Amount > 0)
# create a directory called data, if not exists
if(!dir.exists("data")){dir.create("data")}
# write data frame as CSV
write.csv(MBA_Online, "data/MBA_Online.csv")
##
# write.csv(MBA_Online, paste0("data/MBA_OnlineTime",gsub("[^0-9]","",Sys.time()),".csv"))
# convert Transaction into numeric, and then arrange by Transaction ID
MBA_Online <- MBA_Online %>% mutate(Transaction = as.double(Transaction)) %>% arrange(Transaction)
# The next step is to actually convert the dataframe into basket format, based on the Transaction and Date of transaction
MBA_Online_itemList <- ddply(MBA_Online, c("Transaction","Date"),
function(df1)paste(df1$Item,
collapse = ","))
# Once we have the transactions, we no longer need the date and member numbers in our analysis. De-select Transaction and Date
# then rename thee imported column
# then write as CSV
MBA_Online_itemList <- MBA_Online_itemList %>%
select(-Transaction, -Date)
MBA_Online_itemList$Quantity <- NULL
MBA_Online_itemList$CustomerID <- NULL
MBA_Online_itemList$Amount <- NULL
colnames(MBA_Online_itemList) <- c("itemList")
MBA_Online_itemList %>% write.csv("data/MBA_OnlineItemList.csv", quote = FALSE,row.names = FALSE)
})
}
# Run the application
shinyApp(ui = ui, server = server)
Shiny applications not supported in static R Markdown documents
Created on 2019-06-20 by the reprex package (v0.2.1)
I have the two tables below. I am expecting two files to be written to csv file format but i cannot not see anything. The checkFunc
is a function that checks if a value has changed (e.g. checks a time stamp to see if a database has been updated) and the valueFunc
is used to get the new data if the value returned by checkFunc
has indeed changed. This is checked in a table view in the database which keeps tracks of changes in the table date_created and date_updated
The viewMaxCreatedUpdatedDates is as follows:
cu_date
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
2019-06-19 22:25:09.0
The above is a table view created from the onlineRetail table and is updated as new data comes into the main table.
The onlineRetail data is as follows:
536365 |
85123A |
WHITE HANGING HEART T-LIGHT HOLDER |
6 |
1/12/2010 08:26 |
2.550 |
17850 |
United Kingdom |
15.3 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536365 |
71053 |
WHITE METAL LANTERN |
6 |
1/12/2010 08:26 |
3.390 |
17850 |
United Kingdom |
20.34 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536365 |
84406B |
CREAM CUPID HEARTS COAT HANGER |
8 |
1/12/2010 08:26 |
2.750 |
17850 |
United Kingdom |
22 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536365 |
84029G |
KNITTED UNION FLAG HOT WATER BOTTLE |
6 |
1/12/2010 08:26 |
3.390 |
17850 |
United Kingdom |
20.34 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536365 |
84029E |
RED WOOLLY HOTTIE WHITE HEART. |
6 |
1/12/2010 08:26 |
3.390 |
17850 |
United Kingdom |
20.34 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536365 |
22752 |
SET 7 BABUSHKA NESTING BOXES |
2 |
1/12/2010 08:26 |
7.650 |
17850 |
United Kingdom |
15.3 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536365 |
21730 |
GLASS STAR FROSTED T-LIGHT HOLDER |
6 |
1/12/2010 08:26 |
4.250 |
17850 |
United Kingdom |
25.5 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536366 |
22633 |
HAND WARMER UNION JACK |
6 |
1/12/2010 08:28 |
1.850 |
17850 |
United Kingdom |
11.1 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536366 |
22632 |
HAND WARMER RED POLKA DOT |
6 |
1/12/2010 08:28 |
1.850 |
17850 |
United Kingdom |
11.1 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
84879 |
ASSORTED COLOUR BIRD ORNAMENT |
32 |
1/12/2010 08:34 |
1.690 |
13047 |
United Kingdom |
54.08 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
22745 |
POPPY'S PLAYHOUSE BEDROOM |
6 |
1/12/2010 08:34 |
2.100 |
13047 |
United Kingdom |
12.6 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
22748 |
POPPY'S PLAYHOUSE KITCHEN |
6 |
1/12/2010 08:34 |
2.100 |
13047 |
United Kingdom |
12.6 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
22749 |
FELTCRAFT PRINCESS CHARLOTTE DOLL |
8 |
1/12/2010 08:34 |
3.750 |
13047 |
United Kingdom |
30 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
22310 |
IVORY KNITTED MUG COSY |
6 |
1/12/2010 08:34 |
1.650 |
13047 |
United Kingdom |
9.9 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
84969 |
BOX OF 6 ASSORTED COLOUR TEASPOONS |
6 |
1/12/2010 08:34 |
4.250 |
13047 |
United Kingdom |
25.5 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
22623 |
BOX OF VINTAGE JIGSAW BLOCKS |
3 |
1/12/2010 08:34 |
4.950 |
13047 |
United Kingdom |
14.85 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
22622 |
BOX OF VINTAGE ALPHABET BLOCKS |
2 |
1/12/2010 08:34 |
9.950 |
13047 |
United Kingdom |
19.9 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
21754 |
HOME BUILDING BLOCK WORD |
3 |
1/12/2010 08:34 |
5.950 |
13047 |
United Kingdom |
17.85 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
21755 |
LOVE BUILDING BLOCK WORD |
3 |
1/12/2010 08:34 |
5.950 |
13047 |
United Kingdom |
17.85 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
21777 |
RECIPE BOX WITH METAL HEART |
4 |
1/12/2010 08:34 |
7.950 |
13047 |
United Kingdom |
31.8 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536367 |
48187 |
DOORMAT NEW ENGLAND |
4 |
1/12/2010 08:34 |
7.950 |
13047 |
United Kingdom |
31.8 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536368 |
22960 |
JAM MAKING SET WITH JARS |
6 |
1/12/2010 08:34 |
4.250 |
13047 |
United Kingdom |
25.5 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536368 |
22913 |
RED COAT RACK PARIS FASHION |
3 |
1/12/2010 08:34 |
4.950 |
13047 |
United Kingdom |
14.85 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536368 |
22912 |
YELLOW COAT RACK PARIS FASHION |
3 |
1/12/2010 08:34 |
4.950 |
13047 |
United Kingdom |
14.85 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536368 |
22914 |
BLUE COAT RACK PARIS FASHION |
3 |
1/12/2010 08:34 |
4.950 |
13047 |
United Kingdom |
14.85 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536369 |
21756 |
BATH BUILDING BLOCK WORD |
3 |
1/12/2010 08:35 |
5.950 |
13047 |
United Kingdom |
17.85 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22728 |
ALARM CLOCK BAKELIKE PINK |
24 |
1/12/2010 08:45 |
3.750 |
12583 |
France |
90 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22727 |
ALARM CLOCK BAKELIKE RED |
24 |
1/12/2010 08:45 |
3.750 |
12583 |
France |
90 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22726 |
ALARM CLOCK BAKELIKE GREEN |
12 |
1/12/2010 08:45 |
3.750 |
12583 |
France |
45 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
21724 |
PANDA AND BUNNIES STICKER SHEET |
12 |
1/12/2010 08:45 |
0.850 |
12583 |
France |
10.2 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
21883 |
STARS GIFT TAPE |
24 |
1/12/2010 08:45 |
0.650 |
12583 |
France |
15.6 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
10002 |
INFLATABLE POLITICAL GLOBE |
48 |
1/12/2010 08:45 |
0.850 |
12583 |
France |
40.8 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
21791 |
VINTAGE HEADS AND TAILS CARD GAME |
24 |
1/12/2010 08:45 |
1.250 |
12583 |
France |
30 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
21035 |
SET/2 RED RETROSPOT TEA TOWELS |
18 |
1/12/2010 08:45 |
2.950 |
12583 |
France |
53.1 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22326 |
ROUND SNACK BOXES SET OF4 WOODLAND |
24 |
1/12/2010 08:45 |
2.950 |
12583 |
France |
70.8 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22629 |
SPACEBOY LUNCH BOX |
24 |
1/12/2010 08:45 |
1.950 |
12583 |
France |
46.8 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22659 |
LUNCH BOX I LOVE LONDON |
24 |
1/12/2010 08:45 |
1.950 |
12583 |
France |
46.8 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22631 |
CIRCUS PARADE LUNCH BOX |
24 |
1/12/2010 08:45 |
1.950 |
12583 |
France |
46.8 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22661 |
CHARLOTTE BAG DOLLY GIRL DESIGN |
20 |
1/12/2010 08:45 |
0.850 |
12583 |
France |
17 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
21731 |
RED TOADSTOOL LED NIGHT LIGHT |
24 |
1/12/2010 08:45 |
1.650 |
12583 |
France |
39.6 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22900 |
SET 2 TEA TOWELS I LOVE LONDON |
24 |
1/12/2010 08:45 |
2.950 |
12583 |
France |
70.8 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
21913 |
VINTAGE SEASIDE JIGSAW PUZZLES |
12 |
1/12/2010 08:45 |
3.750 |
12583 |
France |
45 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22540 |
MINI JIGSAW CIRCUS PARADE |
24 |
1/12/2010 08:45 |
0.420 |
12583 |
France |
10.08 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22544 |
MINI JIGSAW SPACEBOY |
24 |
1/12/2010 08:45 |
0.420 |
12583 |
France |
10.08 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
22492 |
MINI PAINT SET VINTAGE |
36 |
1/12/2010 08:45 |
0.650 |
12583 |
France |
23.4 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536370 |
POST |
POSTAGE |
3 |
1/12/2010 08:45 |
18.000 |
12583 |
France |
54 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536371 |
22086 |
PAPER CHAIN KIT 50'S CHRISTMAS |
80 |
1/12/2010 09:00 |
2.550 |
13748 |
United Kingdom |
204 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536372 |
22632 |
HAND WARMER RED POLKA DOT |
6 |
1/12/2010 09:01 |
1.850 |
17850 |
United Kingdom |
11.1 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536372 |
22633 |
HAND WARMER UNION JACK |
6 |
1/12/2010 09:01 |
1.850 |
17850 |
United Kingdom |
11.1 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
536373 |
85123A |
WHITE HANGING HEART T-LIGHT HOLDER |
6 |
1/12/2010 09:02 |
2.550 |
17850 |
United Kingdom |
15.3 |
2019-06-19 22:24:11.0 |
2019-06-19 22:25:09.0 |
The columns are Transation, StockCode Item, UnitPrice, CustomerID, Country, Amount, date_created, date_updated