#' Generate Requests for SSURGO Portal Data Loader
#'
#' Generate commands for or JSON output from the SSURGO Portal Data Loader command-line interface.
#'
#' @param request One of the available request types, see Details.
#' @param pyz_path Path to "SSURGO Portal" .pyz file. Default `"SSURGOPortal.pyz"`
#' @param ... Additional parameters for `request`
#' @param schema Return request and response schemas? Default: `FALSE`
#' @param command_only Return command string rather than executing it? Default: `FALSE`
#'
#' @details
#' |Request Name |Description |
#' |:-----------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
#' |getstatus |Quick check for application responsiveness |
#' |getusage |Return usage information in payload. |
#' |getwindowsdriveletters |Return all drive letters (only valid for Microsoft Windows) |
#' |getfoldertree |Returns a file system tree. |
#' |gettemplatecatalog |Returns JSON containing information about all available empty SSURGO SQLite templates. |
#' |copytemplatefile |Copies a template file to a specified folder path and name. |
#' |opentemplate |Opens a SQLite file to confirm that it meets certain minimal criteria. |
#' |getdatabaseinventory |List survey areas and related data within a SQLite database. |
#' |deleteareasymbols |Delete the specified areasymbols from the database. |
#' |pretestimportcandidates |Perform a 'pre-test' on subfolders under a root folder. |
#' |importcandidates |Import SSURGO data from subfolders under a root folder. The import terminates if any folder fails. |
#' |importspatialdata |For internal use only. Import SSURGO spatial data from shapefiles under a specified path. Note that this activity is isolated to support its use in a child process. |
#'
#' @return A `list` object corresponding to the JSON response. `NULL` (invisibly) on error along with any other standard output from the tool printed to the console.
#' @export
#'
#' @examples
#' \dontrun{
#' # assumes the .pyz file is in current working directory when pyz_path not specified
#' ssurgo_portal("getstatus")
#' ssurgo_portal("getstatus", schema = TRUE)
#' ssurgo_portal("getfoldertree", path = "C:/SSURGO Portal/WV", folderpattern = "WV", filepattern = "txt", ignorefoldercase = TRUE, ignorefilecase = TRUE, showfiles = FALSE, maxdepth = 2)
#' ssurgo_portal("gettemplatecatalog")
#' ssurgo_portal("copytemplate", templatename = "GeoPackage", folder = "test", filename = "test.gpkg", overwrite = TRUE)
#' ssurgo_portal("opentemplate", database = "C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg")
#' ssurgo_portal("pretestimportcandidates", database = "C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg", root = "C:/SSURGO Portal/WV", istabularonly = FALSE)
#' ssurgo_portal("importcandidates", database = "C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg", , root = "C:/SSURGO Portal/WV", istabularonly = FALSE, skippretest = TRUE, subfolders = list("WV603"), loadinspatialorder = FALSE, loadspatialdatawithinsubprocess = TRUE, dissolvemupolygon = TRUE)
#' ssurgo_portal("getdatabaseinventory", database = "C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg")
#' ssurgo_portal("deleteareasymbols", database = "C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg", areasymbols = list("WV603"))
#' }
ssurgo_portal <- function(request,
pyz_path = "SSURGOPortal.pyz",
...,
schema = FALSE,
command_only = FALSE) {
request <- match.arg(request, c("getstatus",
"getusage",
"getwindowsdriveletters",
"getfoldertree",
"gettemplatecatalog",
"copytemplatefile",
"opentemplate",
"getdatabaseinventory",
"deleteareasymbols",
"pretestimportcandidates",
"importcandidates",
"importspatialdata"))
# find python
py_path <- Sys.which("python")
if (nchar(py_path) == 0) {
py_path <- Sys.which("python3")
}
# additional arguments (...) are passed in JSON w/ request type
if (schema) {
args <- paste0("?", request)
cmd <- paste0(shQuote(py_path), " ", shQuote(pyz_path), " ", args)
} else {
args <- jsonlite::toJSON(list(request = request, ...), auto_unbox = TRUE)
cmd <- paste0("cmd /c ", "echo ", args, " | ", shQuote(py_path), " ", shQuote(pyz_path), " @")
}
# short-circuit
if (command_only) {
return(cmd)
}
# execute and capture output
res <- system(
cmd,
intern = TRUE,
ignore.stdout = FALSE,
ignore.stderr = FALSE,
show.output.on.console = TRUE
)
# for PYZ ? requests (schema=TRUE)
i <- grep("^(Request|Response) schema for", res)
# process error message
.procerr <- function(x) {
e <- strsplit(x, "\n")[[1]]
# fix booleans
e <- gsub("True", "true", gsub("False", "false", e))
# find multiline strings
m0 <- grep('\"$', e)
m <- unique(sort(c(m0, m0 + 1)))
g0 <- c(2, diff(m)) > 1
g <- cumsum(g0)
# combine multiline strings
h <- gsub('\"\"', '', sapply(split(e[m], g), function(y) paste0(trimws(y), collapse = "")))
# replace first element from original error string
e[m0[c(2, diff(m0)) > 1]] <- h
# remove subsequent elements
e <- e[-m[c(2, diff(m)) == 1]]
# parse out schema and instance json blocks
i <- grep("in schema:$", e)
j <- grep("^On instance:$", e)
# return as list
list(
message = e[1],
schema = jsonlite::fromJSON(paste0(e[(i + 1):(j - 1)], collapse = "\n"), simplifyVector = FALSE),
instance = jsonlite::fromJSON(paste0(e[(j + 1):length(e)], collapse = "\n"), simplifyVector = FALSE)
)
}
if (length(res) > 0 && startsWith(res[1], "{") && length(i) < 2) {
tmp1 <- gsub("\\r", "\\\\n", res)
tmp2 <- gsub("'", '\\\\"', paste0(tmp1[nchar(trimws(tmp1)) > 0], collapse = ""))
resjson <- jsonlite::fromJSON(tmp2, simplifyVector = FALSE)
if (!is.null(resjson$errormessage)) {
pe <- .procerr(resjson$errormessage)
cat(paste0(resjson$message, ": ", pe$message, sep = "\n"))
return(invisible(pe))
}
return(resjson)
} else if (schema && length(i) == 2) {
# get request and response schemas
return(list(
request = jsonlite::fromJSON(res[(i[1] + 1):(i[2] - 1)], simplifyVector = FALSE),
response = jsonlite::fromJSON(res[(i[2] + 1):length(res)], simplifyVector = FALSE)
)
)
} else {
cat(res, sep = "\n")
return(invisible(NULL))
}
}
ssurgo_portal("getstatus")
#> $status
#> [1] TRUE
#>
#> $message
#> [1] "It\"s alive! runmode=RunMode.DATA_LOADER, isPyz=True, __file__=D:\\SSURGOPortal.pyz\\dlcore\\dlutilities.py, currentPath=."
#>
#> $elapsedseconds
#> [1] 0
ssurgo_portal("getstatus", schema = TRUE)
#> $request
#> $request$`$schema`
#> [1] "http://json-schema.org/draft-04/schema#"
#>
#> $request$title
#> [1] "request: getstatus"
#>
#> $request$comment
#> [1] "Quick check for application responsiveness."
#>
#> $request$description
#> [1] "Schema for a getstatus request"
#>
#> $request$type
#> [1] "object"
#>
#> $request$properties
#> $request$properties$request
#> $request$properties$request$description
#> [1] "The type of request"
#>
#> $request$properties$request$type
#> [1] "string"
#>
#>
#> $request$properties$comment
#> $request$properties$comment$description
#> [1] "Optional comment."
#>
#> $request$properties$comment$type
#> [1] "string"
#>
#>
#> $request$properties$verbose
#> $request$properties$verbose$description
#> [1] "Should the request be echoed in the response and response schema checked? Optional, defaults to false."
#>
#> $request$properties$verbose$type
#> [1] "boolean"
#>
#>
#>
#> $request$required
#> $request$required[[1]]
#> [1] "request"
#>
#>
#>
#> $response
#> $response$`$schema`
#> [1] "http://json-schema.org/draft-04/schema#"
#>
#> $response$title
#> [1] "request: getstatus"
#>
#> $response$description
#> [1] "Schema for a getstatus response"
#>
#> $response$type
#> [1] "object"
#>
#> $response$properties
#> $response$properties$request
#> $response$properties$request$request
#> $response$properties$request$request$description
#> [1] "The type of request"
#>
#> $response$properties$request$request$type
#> [1] "string"
#>
#>
#> $response$properties$request$comment
#> $response$properties$request$comment$description
#> [1] "Optional comment."
#>
#> $response$properties$request$comment$type
#> [1] "string"
#>
#>
#> $response$properties$request$verbose
#> $response$properties$request$verbose$description
#> [1] "Should the request be echoed in the response and response schema checked? Optional, defaults to false."
#>
#> $response$properties$request$verbose$type
#> [1] "boolean"
#>
#>
#>
#> $response$properties$comment
#> $response$properties$comment$description
#> [1] "Optional comment."
#>
#> $response$properties$comment$type
#> [1] "string"
#>
#>
#> $response$properties$status
#> $response$properties$status$description
#> [1] "Successful?"
#>
#> $response$properties$status$type
#> [1] "boolean"
#>
#>
#> $response$properties$message
#> $response$properties$message$description
#> [1] "Optional message"
#>
#> $response$properties$message$type
#> [1] "string"
#>
#>
#> $response$properties$errormessage
#> $response$properties$errormessage$description
#> [1] "Optional error message"
#>
#> $response$properties$errormessage$type
#> [1] "string"
#>
#>
#> $response$properties$elapsedseconds
#> $response$properties$elapsedseconds$description
#> [1] "Number of seconds elapsed while servicing the request. Rounded to the nearest second, automatically generated."
#>
#> $response$properties$elapsedseconds$type
#> [1] "integer"
#>
#>
#>
#> $response$required
#> $response$required[[1]]
#> [1] "status"
ssurgo_portal("getfoldertree", path = "C:/SSURGO Portal/WV", folderpattern = "WV", filepattern = "txt", ignorefoldercase = TRUE, ignorefilecase = TRUE, showfiles = FALSE, maxdepth = 2)
#> $status
#> [1] TRUE
#>
#> $nodes
#> $nodes[[1]]
#> $nodes[[1]]$name
#> [1] "WV001"
#>
#> $nodes[[1]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[2]]
#> $nodes[[2]]$name
#> [1] "WV003"
#>
#> $nodes[[2]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[3]]
#> $nodes[[3]]$name
#> [1] "WV005"
#>
#> $nodes[[3]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[4]]
#> $nodes[[4]]$name
#> [1] "WV007"
#>
#> $nodes[[4]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[5]]
#> $nodes[[5]]$name
#> [1] "WV011"
#>
#> $nodes[[5]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[6]]
#> $nodes[[6]]$name
#> [1] "WV015"
#>
#> $nodes[[6]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[7]]
#> $nodes[[7]]$name
#> [1] "WV017"
#>
#> $nodes[[7]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[8]]
#> $nodes[[8]]$name
#> [1] "WV021"
#>
#> $nodes[[8]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[9]]
#> $nodes[[9]]$name
#> [1] "WV025"
#>
#> $nodes[[9]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[10]]
#> $nodes[[10]]$name
#> [1] "WV037"
#>
#> $nodes[[10]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[11]]
#> $nodes[[11]]$name
#> [1] "WV039"
#>
#> $nodes[[11]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[12]]
#> $nodes[[12]]$name
#> [1] "WV041"
#>
#> $nodes[[12]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[13]]
#> $nodes[[13]]$name
#> [1] "WV043"
#>
#> $nodes[[13]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[14]]
#> $nodes[[14]]$name
#> [1] "WV047"
#>
#> $nodes[[14]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[15]]
#> $nodes[[15]]$name
#> [1] "WV051"
#>
#> $nodes[[15]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[16]]
#> $nodes[[16]]$name
#> [1] "WV063"
#>
#> $nodes[[16]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[17]]
#> $nodes[[17]]$name
#> [1] "WV065"
#>
#> $nodes[[17]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[18]]
#> $nodes[[18]]$name
#> [1] "WV071"
#>
#> $nodes[[18]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[19]]
#> $nodes[[19]]$name
#> [1] "WV075"
#>
#> $nodes[[19]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[20]]
#> $nodes[[20]]$name
#> [1] "WV077"
#>
#> $nodes[[20]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[21]]
#> $nodes[[21]]$name
#> [1] "WV079"
#>
#> $nodes[[21]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[22]]
#> $nodes[[22]]$name
#> [1] "WV085"
#>
#> $nodes[[22]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[23]]
#> $nodes[[23]]$name
#> [1] "WV097"
#>
#> $nodes[[23]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[24]]
#> $nodes[[24]]$name
#> [1] "WV099"
#>
#> $nodes[[24]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[25]]
#> $nodes[[25]]$name
#> [1] "WV101"
#>
#> $nodes[[25]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[26]]
#> $nodes[[26]]$name
#> [1] "WV103"
#>
#> $nodes[[26]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[27]]
#> $nodes[[27]]$name
#> [1] "WV109"
#>
#> $nodes[[27]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[28]]
#> $nodes[[28]]$name
#> [1] "WV600"
#>
#> $nodes[[28]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[29]]
#> $nodes[[29]]$name
#> [1] "WV601"
#>
#> $nodes[[29]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[30]]
#> $nodes[[30]]$name
#> [1] "WV602"
#>
#> $nodes[[30]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[31]]
#> $nodes[[31]]$name
#> [1] "WV603"
#>
#> $nodes[[31]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[32]]
#> $nodes[[32]]$name
#> [1] "WV604"
#>
#> $nodes[[32]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[33]]
#> $nodes[[33]]$name
#> [1] "WV608"
#>
#> $nodes[[33]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[34]]
#> $nodes[[34]]$name
#> [1] "WV610"
#>
#> $nodes[[34]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[35]]
#> $nodes[[35]]$name
#> [1] "WV611"
#>
#> $nodes[[35]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[36]]
#> $nodes[[36]]$name
#> [1] "WV612"
#>
#> $nodes[[36]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[37]]
#> $nodes[[37]]$name
#> [1] "WV620"
#>
#> $nodes[[37]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[38]]
#> $nodes[[38]]$name
#> [1] "WV621"
#>
#> $nodes[[38]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[39]]
#> $nodes[[39]]$name
#> [1] "WV622"
#>
#> $nodes[[39]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[40]]
#> $nodes[[40]]$name
#> [1] "WV623"
#>
#> $nodes[[40]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[41]]
#> $nodes[[41]]$name
#> [1] "WV624"
#>
#> $nodes[[41]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[42]]
#> $nodes[[42]]$name
#> [1] "WV628"
#>
#> $nodes[[42]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[43]]
#> $nodes[[43]]$name
#> [1] "WV705"
#>
#> $nodes[[43]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[44]]
#> $nodes[[44]]$name
#> [1] "WV713"
#>
#> $nodes[[44]]$isfolder
#> [1] TRUE
#>
#>
#> $nodes[[45]]
#> $nodes[[45]]$name
#> [1] "WV767"
#>
#> $nodes[[45]]$isfolder
#> [1] TRUE
#>
#>
#>
#> $elapsedseconds
#> [1] 0
ssurgo_portal("gettemplatecatalog")
#> $status
#> [1] TRUE
#>
#> $emptytemplates
#> $emptytemplates$GeoPackage
#> $emptytemplates$GeoPackage$path
#> [1] "templates\\geopackage.gpkg"
#>
#> $emptytemplates$GeoPackage$suffix
#> [1] ".gpkg"
#>
#>
#> $emptytemplates$`GeoPackage (without rowid)`
#> $emptytemplates$`GeoPackage (without rowid)`$path
#> [1] "templates\\geopackage_without_rowid.gpkg"
#>
#> $emptytemplates$`GeoPackage (without rowid)`$suffix
#> [1] ".gpkg"
#>
#>
#> $emptytemplates$SpatiaLite
#> $emptytemplates$SpatiaLite$path
#> [1] "templates\\spatialite.sqlite"
#>
#> $emptytemplates$SpatiaLite$suffix
#> [1] ".sqlite"
#>
#>
#>
#> $elapsedseconds
#> [1] 0
ssurgo_portal("copytemplate", templatename = "GeoPackage", folder = "test", filename = "test.gpkg", overwrite = TRUE)
#> $status
#> [1] TRUE
#>
#> $message
#> [1] "Copied templates/geopackage.gpkg to test\\test.gpkg.gpkg"
#>
#> $elapsedseconds
#> [1] 0
ssurgo_portal("opentemplate", database = "C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg")
#> $status
#> [1] TRUE
#>
#> $message
#> [1] "Database C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg accessed, type=GeoPackage, #sacatalog records=\"2"
#>
#> $elapsedseconds
#> [1] 0
ssurgo_portal("pretestimportcandidates", database = "C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg", root = "C:/SSURGO Portal/WV", istabularonly = FALSE)
#> $allpassed
#> [1] TRUE
#>
#> $status
#> [1] TRUE
#>
#> $subfolders
#> $subfolders[[1]]
#> $subfolders[[1]]$childfoldername
#> [1] "WV001"
#>
#> $subfolders[[1]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[1]]$errormessage
#> [1] ""
#>
#> $subfolders[[1]]$areasymbols
#> $subfolders[[1]]$areasymbols$WV001
#> $subfolders[[1]]$areasymbols$WV001$areaname
#> [1] "Barbour County, West Virginia"
#>
#> $subfolders[[1]]$areasymbols$WV001$fileversion
#> [1] "09/14/2022 16:34:13"
#>
#> $subfolders[[1]]$areasymbols$WV001$dbversion
#> [1] "09/14/2022 16:34:13"
#>
#>
#>
#>
#> $subfolders[[2]]
#> $subfolders[[2]]$childfoldername
#> [1] "WV003"
#>
#> $subfolders[[2]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[2]]$errormessage
#> [1] ""
#>
#> $subfolders[[2]]$areasymbols
#> $subfolders[[2]]$areasymbols$WV003
#> $subfolders[[2]]$areasymbols$WV003$areaname
#> [1] "Berkeley County, West Virginia"
#>
#> $subfolders[[2]]$areasymbols$WV003$fileversion
#> [1] "09/08/2022 18:29:18"
#>
#> $subfolders[[2]]$areasymbols$WV003$dbversion
#> [1] "09/08/2022 18:29:18"
#>
#>
#>
#>
#> $subfolders[[3]]
#> $subfolders[[3]]$childfoldername
#> [1] "WV005"
#>
#> $subfolders[[3]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[3]]$errormessage
#> [1] ""
#>
#> $subfolders[[3]]$areasymbols
#> $subfolders[[3]]$areasymbols$WV005
#> $subfolders[[3]]$areasymbols$WV005$areaname
#> [1] "Boone County, West Virginia"
#>
#> $subfolders[[3]]$areasymbols$WV005$fileversion
#> [1] "09/08/2022 18:32:04"
#>
#> $subfolders[[3]]$areasymbols$WV005$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[4]]
#> $subfolders[[4]]$childfoldername
#> [1] "WV007"
#>
#> $subfolders[[4]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[4]]$errormessage
#> [1] ""
#>
#> $subfolders[[4]]$areasymbols
#> $subfolders[[4]]$areasymbols$WV007
#> $subfolders[[4]]$areasymbols$WV007$areaname
#> [1] "Braxton County, West Virginia"
#>
#> $subfolders[[4]]$areasymbols$WV007$fileversion
#> [1] "09/08/2022 18:32:04"
#>
#> $subfolders[[4]]$areasymbols$WV007$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[5]]
#> $subfolders[[5]]$childfoldername
#> [1] "WV011"
#>
#> $subfolders[[5]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[5]]$errormessage
#> [1] ""
#>
#> $subfolders[[5]]$areasymbols
#> $subfolders[[5]]$areasymbols$WV011
#> $subfolders[[5]]$areasymbols$WV011$areaname
#> [1] "Cabell County, West Virginia"
#>
#> $subfolders[[5]]$areasymbols$WV011$fileversion
#> [1] "09/08/2022 18:32:04"
#>
#> $subfolders[[5]]$areasymbols$WV011$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[6]]
#> $subfolders[[6]]$childfoldername
#> [1] "WV015"
#>
#> $subfolders[[6]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[6]]$errormessage
#> [1] ""
#>
#> $subfolders[[6]]$areasymbols
#> $subfolders[[6]]$areasymbols$WV015
#> $subfolders[[6]]$areasymbols$WV015$areaname
#> [1] "Clay County, West Virginia"
#>
#> $subfolders[[6]]$areasymbols$WV015$fileversion
#> [1] "09/09/2022 10:25:56"
#>
#> $subfolders[[6]]$areasymbols$WV015$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[7]]
#> $subfolders[[7]]$childfoldername
#> [1] "WV017"
#>
#> $subfolders[[7]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[7]]$errormessage
#> [1] ""
#>
#> $subfolders[[7]]$areasymbols
#> $subfolders[[7]]$areasymbols$WV017
#> $subfolders[[7]]$areasymbols$WV017$areaname
#> [1] "Doddridge County, West Virginia"
#>
#> $subfolders[[7]]$areasymbols$WV017$fileversion
#> [1] "09/09/2022 10:25:56"
#>
#> $subfolders[[7]]$areasymbols$WV017$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[8]]
#> $subfolders[[8]]$childfoldername
#> [1] "WV021"
#>
#> $subfolders[[8]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[8]]$errormessage
#> [1] ""
#>
#> $subfolders[[8]]$areasymbols
#> $subfolders[[8]]$areasymbols$WV021
#> $subfolders[[8]]$areasymbols$WV021$areaname
#> [1] "Gilmer County, West Virginia"
#>
#> $subfolders[[8]]$areasymbols$WV021$fileversion
#> [1] "09/09/2022 10:25:56"
#>
#> $subfolders[[8]]$areasymbols$WV021$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[9]]
#> $subfolders[[9]]$childfoldername
#> [1] "WV025"
#>
#> $subfolders[[9]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[9]]$errormessage
#> [1] ""
#>
#> $subfolders[[9]]$areasymbols
#> $subfolders[[9]]$areasymbols$WV025
#> $subfolders[[9]]$areasymbols$WV025$areaname
#> [1] "Greenbrier County, West Virginia"
#>
#> $subfolders[[9]]$areasymbols$WV025$fileversion
#> [1] "09/09/2022 10:26:41"
#>
#> $subfolders[[9]]$areasymbols$WV025$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[10]]
#> $subfolders[[10]]$childfoldername
#> [1] "WV037"
#>
#> $subfolders[[10]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[10]]$errormessage
#> [1] ""
#>
#> $subfolders[[10]]$areasymbols
#> $subfolders[[10]]$areasymbols$WV037
#> $subfolders[[10]]$areasymbols$WV037$areaname
#> [1] "Jefferson County, West Virginia"
#>
#> $subfolders[[10]]$areasymbols$WV037$fileversion
#> [1] "09/09/2022 10:26:41"
#>
#> $subfolders[[10]]$areasymbols$WV037$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[11]]
#> $subfolders[[11]]$childfoldername
#> [1] "WV039"
#>
#> $subfolders[[11]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[11]]$errormessage
#> [1] ""
#>
#> $subfolders[[11]]$areasymbols
#> $subfolders[[11]]$areasymbols$WV039
#> $subfolders[[11]]$areasymbols$WV039$areaname
#> [1] "Kanawha County, West Virginia"
#>
#> $subfolders[[11]]$areasymbols$WV039$fileversion
#> [1] "09/09/2022 10:16:25"
#>
#> $subfolders[[11]]$areasymbols$WV039$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[12]]
#> $subfolders[[12]]$childfoldername
#> [1] "WV041"
#>
#> $subfolders[[12]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[12]]$errormessage
#> [1] ""
#>
#> $subfolders[[12]]$areasymbols
#> $subfolders[[12]]$areasymbols$WV041
#> $subfolders[[12]]$areasymbols$WV041$areaname
#> [1] "Lewis County, West Virginia"
#>
#> $subfolders[[12]]$areasymbols$WV041$fileversion
#> [1] "09/09/2022 10:16:25"
#>
#> $subfolders[[12]]$areasymbols$WV041$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[13]]
#> $subfolders[[13]]$childfoldername
#> [1] "WV043"
#>
#> $subfolders[[13]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[13]]$errormessage
#> [1] ""
#>
#> $subfolders[[13]]$areasymbols
#> $subfolders[[13]]$areasymbols$WV043
#> $subfolders[[13]]$areasymbols$WV043$areaname
#> [1] "Lincoln County, West Virginia"
#>
#> $subfolders[[13]]$areasymbols$WV043$fileversion
#> [1] "09/09/2022 10:17:25"
#>
#> $subfolders[[13]]$areasymbols$WV043$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[14]]
#> $subfolders[[14]]$childfoldername
#> [1] "WV047"
#>
#> $subfolders[[14]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[14]]$errormessage
#> [1] ""
#>
#> $subfolders[[14]]$areasymbols
#> $subfolders[[14]]$areasymbols$WV047
#> $subfolders[[14]]$areasymbols$WV047$areaname
#> [1] "McDowell County, West Virginia"
#>
#> $subfolders[[14]]$areasymbols$WV047$fileversion
#> [1] "09/09/2022 10:17:25"
#>
#> $subfolders[[14]]$areasymbols$WV047$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[15]]
#> $subfolders[[15]]$childfoldername
#> [1] "WV051"
#>
#> $subfolders[[15]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[15]]$errormessage
#> [1] ""
#>
#> $subfolders[[15]]$areasymbols
#> $subfolders[[15]]$areasymbols$WV051
#> $subfolders[[15]]$areasymbols$WV051$areaname
#> [1] "Marshall County, West Virginia"
#>
#> $subfolders[[15]]$areasymbols$WV051$fileversion
#> [1] "09/09/2022 10:17:25"
#>
#> $subfolders[[15]]$areasymbols$WV051$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[16]]
#> $subfolders[[16]]$childfoldername
#> [1] "WV063"
#>
#> $subfolders[[16]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[16]]$errormessage
#> [1] ""
#>
#> $subfolders[[16]]$areasymbols
#> $subfolders[[16]]$areasymbols$WV063
#> $subfolders[[16]]$areasymbols$WV063$areaname
#> [1] "Monroe County, West Virginia"
#>
#> $subfolders[[16]]$areasymbols$WV063$fileversion
#> [1] "09/09/2022 10:18:40"
#>
#> $subfolders[[16]]$areasymbols$WV063$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[17]]
#> $subfolders[[17]]$childfoldername
#> [1] "WV065"
#>
#> $subfolders[[17]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[17]]$errormessage
#> [1] ""
#>
#> $subfolders[[17]]$areasymbols
#> $subfolders[[17]]$areasymbols$WV065
#> $subfolders[[17]]$areasymbols$WV065$areaname
#> [1] "Morgan County, West Virginia"
#>
#> $subfolders[[17]]$areasymbols$WV065$fileversion
#> [1] "09/09/2022 10:18:40"
#>
#> $subfolders[[17]]$areasymbols$WV065$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[18]]
#> $subfolders[[18]]$childfoldername
#> [1] "WV071"
#>
#> $subfolders[[18]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[18]]$errormessage
#> [1] ""
#>
#> $subfolders[[18]]$areasymbols
#> $subfolders[[18]]$areasymbols$WV071
#> $subfolders[[18]]$areasymbols$WV071$areaname
#> [1] "Pendleton County, West Virginia"
#>
#> $subfolders[[18]]$areasymbols$WV071$fileversion
#> [1] "09/09/2022 10:18:40"
#>
#> $subfolders[[18]]$areasymbols$WV071$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[19]]
#> $subfolders[[19]]$childfoldername
#> [1] "WV075"
#>
#> $subfolders[[19]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[19]]$errormessage
#> [1] ""
#>
#> $subfolders[[19]]$areasymbols
#> $subfolders[[19]]$areasymbols$WV075
#> $subfolders[[19]]$areasymbols$WV075$areaname
#> [1] "Pocahontas County, West Virginia"
#>
#> $subfolders[[19]]$areasymbols$WV075$fileversion
#> [1] "09/09/2022 10:19:41"
#>
#> $subfolders[[19]]$areasymbols$WV075$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[20]]
#> $subfolders[[20]]$childfoldername
#> [1] "WV077"
#>
#> $subfolders[[20]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[20]]$errormessage
#> [1] ""
#>
#> $subfolders[[20]]$areasymbols
#> $subfolders[[20]]$areasymbols$WV077
#> $subfolders[[20]]$areasymbols$WV077$areaname
#> [1] "Preston County, West Virginia"
#>
#> $subfolders[[20]]$areasymbols$WV077$fileversion
#> [1] "09/09/2022 10:19:41"
#>
#> $subfolders[[20]]$areasymbols$WV077$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[21]]
#> $subfolders[[21]]$childfoldername
#> [1] "WV079"
#>
#> $subfolders[[21]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[21]]$errormessage
#> [1] ""
#>
#> $subfolders[[21]]$areasymbols
#> $subfolders[[21]]$areasymbols$WV079
#> $subfolders[[21]]$areasymbols$WV079$areaname
#> [1] "Putnam County, West Virginia"
#>
#> $subfolders[[21]]$areasymbols$WV079$fileversion
#> [1] "09/09/2022 10:19:41"
#>
#> $subfolders[[21]]$areasymbols$WV079$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[22]]
#> $subfolders[[22]]$childfoldername
#> [1] "WV085"
#>
#> $subfolders[[22]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[22]]$errormessage
#> [1] ""
#>
#> $subfolders[[22]]$areasymbols
#> $subfolders[[22]]$areasymbols$WV085
#> $subfolders[[22]]$areasymbols$WV085$areaname
#> [1] "Ritchie County, West Virginia"
#>
#> $subfolders[[22]]$areasymbols$WV085$fileversion
#> [1] "09/09/2022 10:19:41"
#>
#> $subfolders[[22]]$areasymbols$WV085$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[23]]
#> $subfolders[[23]]$childfoldername
#> [1] "WV097"
#>
#> $subfolders[[23]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[23]]$errormessage
#> [1] ""
#>
#> $subfolders[[23]]$areasymbols
#> $subfolders[[23]]$areasymbols$WV097
#> $subfolders[[23]]$areasymbols$WV097$areaname
#> [1] "Upshur County, West Virginia"
#>
#> $subfolders[[23]]$areasymbols$WV097$fileversion
#> [1] "09/09/2022 10:20:56"
#>
#> $subfolders[[23]]$areasymbols$WV097$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[24]]
#> $subfolders[[24]]$childfoldername
#> [1] "WV099"
#>
#> $subfolders[[24]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[24]]$errormessage
#> [1] ""
#>
#> $subfolders[[24]]$areasymbols
#> $subfolders[[24]]$areasymbols$WV099
#> $subfolders[[24]]$areasymbols$WV099$areaname
#> [1] "Wayne County, West Virginia"
#>
#> $subfolders[[24]]$areasymbols$WV099$fileversion
#> [1] "09/09/2022 10:20:56"
#>
#> $subfolders[[24]]$areasymbols$WV099$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[25]]
#> $subfolders[[25]]$childfoldername
#> [1] "WV101"
#>
#> $subfolders[[25]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[25]]$errormessage
#> [1] ""
#>
#> $subfolders[[25]]$areasymbols
#> $subfolders[[25]]$areasymbols$WV101
#> $subfolders[[25]]$areasymbols$WV101$areaname
#> [1] "Webster County, West Virginia"
#>
#> $subfolders[[25]]$areasymbols$WV101$fileversion
#> [1] "09/09/2022 10:20:56"
#>
#> $subfolders[[25]]$areasymbols$WV101$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[26]]
#> $subfolders[[26]]$childfoldername
#> [1] "WV103"
#>
#> $subfolders[[26]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[26]]$errormessage
#> [1] ""
#>
#> $subfolders[[26]]$areasymbols
#> $subfolders[[26]]$areasymbols$WV103
#> $subfolders[[26]]$areasymbols$WV103$areaname
#> [1] "Wetzel County, West Virginia"
#>
#> $subfolders[[26]]$areasymbols$WV103$fileversion
#> [1] "09/09/2022 10:21:56"
#>
#> $subfolders[[26]]$areasymbols$WV103$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[27]]
#> $subfolders[[27]]$childfoldername
#> [1] "WV109"
#>
#> $subfolders[[27]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[27]]$errormessage
#> [1] ""
#>
#> $subfolders[[27]]$areasymbols
#> $subfolders[[27]]$areasymbols$WV109
#> $subfolders[[27]]$areasymbols$WV109$areaname
#> [1] "Wyoming County, West Virginia"
#>
#> $subfolders[[27]]$areasymbols$WV109$fileversion
#> [1] "09/09/2022 10:57:58"
#>
#> $subfolders[[27]]$areasymbols$WV109$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[28]]
#> $subfolders[[28]]$childfoldername
#> [1] "WV600"
#>
#> $subfolders[[28]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[28]]$errormessage
#> [1] ""
#>
#> $subfolders[[28]]$areasymbols
#> $subfolders[[28]]$areasymbols$WV600
#> $subfolders[[28]]$areasymbols$WV600$areaname
#> [1] "Jackson and Mason Counties, West Virginia"
#>
#> $subfolders[[28]]$areasymbols$WV600$fileversion
#> [1] "09/09/2022 10:21:56"
#>
#> $subfolders[[28]]$areasymbols$WV600$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[29]]
#> $subfolders[[29]]$childfoldername
#> [1] "WV601"
#>
#> $subfolders[[29]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[29]]$errormessage
#> [1] ""
#>
#> $subfolders[[29]]$areasymbols
#> $subfolders[[29]]$areasymbols$WV601
#> $subfolders[[29]]$areasymbols$WV601$areaname
#> [1] "Wood and Wirt Counties, West Virginia"
#>
#> $subfolders[[29]]$areasymbols$WV601$fileversion
#> [1] "09/09/2022 10:21:56"
#>
#> $subfolders[[29]]$areasymbols$WV601$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[30]]
#> $subfolders[[30]]$childfoldername
#> [1] "WV602"
#>
#> $subfolders[[30]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[30]]$errormessage
#> [1] ""
#>
#> $subfolders[[30]]$areasymbols
#> $subfolders[[30]]$areasymbols$WV602
#> $subfolders[[30]]$areasymbols$WV602$areaname
#> [1] "Tucker County and Northern Randolph County, West Virginia"
#>
#> $subfolders[[30]]$areasymbols$WV602$fileversion
#> [1] "09/09/2022 10:23:41"
#>
#> $subfolders[[30]]$areasymbols$WV602$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[31]]
#> $subfolders[[31]]$childfoldername
#> [1] "WV603"
#>
#> $subfolders[[31]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[31]]$errormessage
#> [1] ""
#>
#> $subfolders[[31]]$areasymbols
#> $subfolders[[31]]$areasymbols$WV603
#> $subfolders[[31]]$areasymbols$WV603$areaname
#> [1] "Randolph County Area, Main Part, West Virginia"
#>
#> $subfolders[[31]]$areasymbols$WV603$fileversion
#> [1] "09/09/2022 10:23:41"
#>
#> $subfolders[[31]]$areasymbols$WV603$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[32]]
#> $subfolders[[32]]$childfoldername
#> [1] "WV604"
#>
#> $subfolders[[32]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[32]]$errormessage
#> [1] ""
#>
#> $subfolders[[32]]$areasymbols
#> $subfolders[[32]]$areasymbols$WV604
#> $subfolders[[32]]$areasymbols$WV604$areaname
#> [1] "Brooke, Hancock, and Ohio Counties, West Virginia"
#>
#> $subfolders[[32]]$areasymbols$WV604$fileversion
#> [1] "09/09/2022 10:23:41"
#>
#> $subfolders[[32]]$areasymbols$WV604$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[33]]
#> $subfolders[[33]]$childfoldername
#> [1] "WV608"
#>
#> $subfolders[[33]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[33]]$errormessage
#> [1] ""
#>
#> $subfolders[[33]]$areasymbols
#> $subfolders[[33]]$areasymbols$WV608
#> $subfolders[[33]]$areasymbols$WV608$areaname
#> [1] "Hampshire and Mineral Counties, West Virginia"
#>
#> $subfolders[[33]]$areasymbols$WV608$fileversion
#> [1] "09/09/2022 10:26:41"
#>
#> $subfolders[[33]]$areasymbols$WV608$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[34]]
#> $subfolders[[34]]$childfoldername
#> [1] "WV610"
#>
#> $subfolders[[34]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[34]]$errormessage
#> [1] ""
#>
#> $subfolders[[34]]$areasymbols
#> $subfolders[[34]]$areasymbols$WV610
#> $subfolders[[34]]$areasymbols$WV610$areaname
#> [1] "Harrison and Taylor Counties, West Virginia"
#>
#> $subfolders[[34]]$areasymbols$WV610$fileversion
#> [1] "09/09/2022 10:27:41"
#>
#> $subfolders[[34]]$areasymbols$WV610$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[35]]
#> $subfolders[[35]]$childfoldername
#> [1] "WV611"
#>
#> $subfolders[[35]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[35]]$errormessage
#> [1] ""
#>
#> $subfolders[[35]]$areasymbols
#> $subfolders[[35]]$areasymbols$WV611
#> $subfolders[[35]]$areasymbols$WV611$areaname
#> [1] "Marion and Monongalia Counties, West Virginia"
#>
#> $subfolders[[35]]$areasymbols$WV611$fileversion
#> [1] "09/09/2022 10:27:41"
#>
#> $subfolders[[35]]$areasymbols$WV611$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[36]]
#> $subfolders[[36]]$childfoldername
#> [1] "WV612"
#>
#> $subfolders[[36]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[36]]$errormessage
#> [1] ""
#>
#> $subfolders[[36]]$areasymbols
#> $subfolders[[36]]$areasymbols$WV612
#> $subfolders[[36]]$areasymbols$WV612$areaname
#> [1] "Pleasants and Tyler Counties, West Virginia"
#>
#> $subfolders[[36]]$areasymbols$WV612$fileversion
#> [1] "09/09/2022 10:27:41"
#>
#> $subfolders[[36]]$areasymbols$WV612$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[37]]
#> $subfolders[[37]]$childfoldername
#> [1] "WV620"
#>
#> $subfolders[[37]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[37]]$errormessage
#> [1] ""
#>
#> $subfolders[[37]]$areasymbols
#> $subfolders[[37]]$areasymbols$WV620
#> $subfolders[[37]]$areasymbols$WV620$areaname
#> [1] "Logan and Mingo Counties, West Virginia"
#>
#> $subfolders[[37]]$areasymbols$WV620$fileversion
#> [1] "09/09/2022 10:28:41"
#>
#> $subfolders[[37]]$areasymbols$WV620$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[38]]
#> $subfolders[[38]]$childfoldername
#> [1] "WV621"
#>
#> $subfolders[[38]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[38]]$errormessage
#> [1] ""
#>
#> $subfolders[[38]]$areasymbols
#> $subfolders[[38]]$areasymbols$WV621
#> $subfolders[[38]]$areasymbols$WV621$areaname
#> [1] "Gauley River National Recreation Area, West Virginia"
#>
#> $subfolders[[38]]$areasymbols$WV621$fileversion
#> [1] "09/09/2022 10:28:41"
#>
#> $subfolders[[38]]$areasymbols$WV621$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[39]]
#> $subfolders[[39]]$childfoldername
#> [1] "WV622"
#>
#> $subfolders[[39]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[39]]$errormessage
#> [1] ""
#>
#> $subfolders[[39]]$areasymbols
#> $subfolders[[39]]$areasymbols$WV622
#> $subfolders[[39]]$areasymbols$WV622$areaname
#> [1] "New River Gorge National River, West Virginia"
#>
#> $subfolders[[39]]$areasymbols$WV622$fileversion
#> [1] "09/09/2022 10:28:41"
#>
#> $subfolders[[39]]$areasymbols$WV622$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[40]]
#> $subfolders[[40]]$childfoldername
#> [1] "WV623"
#>
#> $subfolders[[40]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[40]]$errormessage
#> [1] ""
#>
#> $subfolders[[40]]$areasymbols
#> $subfolders[[40]]$areasymbols$WV623
#> $subfolders[[40]]$areasymbols$WV623$areaname
#> [1] "Bluestone National Scenic River, West Virginia"
#>
#> $subfolders[[40]]$areasymbols$WV623$fileversion
#> [1] "09/09/2022 10:30:41"
#>
#> $subfolders[[40]]$areasymbols$WV623$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[41]]
#> $subfolders[[41]]$childfoldername
#> [1] "WV624"
#>
#> $subfolders[[41]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[41]]$errormessage
#> [1] ""
#>
#> $subfolders[[41]]$areasymbols
#> $subfolders[[41]]$areasymbols$WV624
#> $subfolders[[41]]$areasymbols$WV624$areaname
#> [1] "Calhoun and Roane Counties, West Virginia"
#>
#> $subfolders[[41]]$areasymbols$WV624$fileversion
#> [1] "09/09/2022 10:30:41"
#>
#> $subfolders[[41]]$areasymbols$WV624$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[42]]
#> $subfolders[[42]]$childfoldername
#> [1] "WV628"
#>
#> $subfolders[[42]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[42]]$errormessage
#> [1] ""
#>
#> $subfolders[[42]]$areasymbols
#> $subfolders[[42]]$areasymbols$WV628
#> $subfolders[[42]]$areasymbols$WV628$areaname
#> [1] "Grant and Hardy Counties, West Virginia"
#>
#> $subfolders[[42]]$areasymbols$WV628$fileversion
#> [1] "09/09/2022 10:30:41"
#>
#> $subfolders[[42]]$areasymbols$WV628$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[43]]
#> $subfolders[[43]]$childfoldername
#> [1] "WV705"
#>
#> $subfolders[[43]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[43]]$errormessage
#> [1] ""
#>
#> $subfolders[[43]]$areasymbols
#> $subfolders[[43]]$areasymbols$WV705
#> $subfolders[[43]]$areasymbols$WV705$areaname
#> [1] "Fayette and Raleigh Counties Area, West Virginia"
#>
#> $subfolders[[43]]$areasymbols$WV705$fileversion
#> [1] "09/09/2022 10:35:27"
#>
#> $subfolders[[43]]$areasymbols$WV705$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[44]]
#> $subfolders[[44]]$childfoldername
#> [1] "WV713"
#>
#> $subfolders[[44]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[44]]$errormessage
#> [1] ""
#>
#> $subfolders[[44]]$areasymbols
#> $subfolders[[44]]$areasymbols$WV713
#> $subfolders[[44]]$areasymbols$WV713$areaname
#> [1] "Mercer and Summers Counties Area, West Virginia"
#>
#> $subfolders[[44]]$areasymbols$WV713$fileversion
#> [1] "09/09/2022 10:36:12"
#>
#> $subfolders[[44]]$areasymbols$WV713$dbversion
#> [1] ""
#>
#>
#>
#>
#> $subfolders[[45]]
#> $subfolders[[45]]$childfoldername
#> [1] "WV767"
#>
#> $subfolders[[45]]$preteststatus
#> [1] TRUE
#>
#> $subfolders[[45]]$errormessage
#> [1] ""
#>
#> $subfolders[[45]]$areasymbols
#> $subfolders[[45]]$areasymbols$WV767
#> $subfolders[[45]]$areasymbols$WV767$areaname
#> [1] "Nicholas County Area, West Virginia"
#>
#> $subfolders[[45]]$areasymbols$WV767$fileversion
#> [1] "09/09/2022 10:36:12"
#>
#> $subfolders[[45]]$areasymbols$WV767$dbversion
#> [1] ""
#>
#>
#>
#>
#>
#> $elapsedseconds
#> [1] 4
ssurgo_portal("importcandidates", database = "C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg", , root = "C:/SSURGO Portal/WV", istabularonly = FALSE, skippretest = TRUE, subfolders = list("WV603"), loadinspatialorder = FALSE, loadspatialdatawithinsubprocess = TRUE, dissolvemupolygon = TRUE)
#> $allimported
#> [1] TRUE
#>
#> $status
#> [1] TRUE
#>
#> $message
#> [1] "SSURGO data import succeeded"
#>
#> $subfolders
#> $subfolders[[1]]
#> $subfolders[[1]]$childfoldername
#> [1] "WV603"
#>
#> $subfolders[[1]]$elapsedsecondstabularimport
#> [1] 8
#>
#> $subfolders[[1]]$elapsedsecondsspatialimport
#> [1] 7
#>
#> $subfolders[[1]]$errormessage
#> [1] ""
#>
#> $subfolders[[1]]$areasymbols
#> $subfolders[[1]]$areasymbols$WV603
#> $subfolders[[1]]$areasymbols$WV603$areaname
#> [1] "Randolph County Area, Main Part, West Virginia"
#>
#> $subfolders[[1]]$areasymbols$WV603$fileversion
#> [1] "09/09/2022 10:23:41"
#>
#>
#>
#>
#>
#> $elapsedseconds
#> [1] 15
ssurgo_portal("getdatabaseinventory", database = "C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg")
#> $status
#> [1] TRUE
#>
#> $message
#> [1] "Data read from database C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg"
#>
#> $records
#> $records$WV001
#> $records$WV001$areaname
#> [1] "Barbour County, West Virginia"
#>
#> $records$WV001$saverest
#> [1] "09/14/2022 16:34:13"
#>
#> $records$WV001$istabularonly
#> [1] FALSE
#>
#>
#> $records$WV003
#> $records$WV003$areaname
#> [1] "Berkeley County, West Virginia"
#>
#> $records$WV003$saverest
#> [1] "09/08/2022 18:29:18"
#>
#> $records$WV003$istabularonly
#> [1] FALSE
#>
#>
#> $records$WV603
#> $records$WV603$areaname
#> [1] "Randolph County Area, Main Part, West Virginia"
#>
#> $records$WV603$saverest
#> [1] "09/09/2022 10:23:41"
#>
#> $records$WV603$istabularonly
#> [1] FALSE
#>
#>
#>
#> $elapsedseconds
#> [1] 0
ssurgo_portal("deleteareasymbols", database = "C:/SSURGO Portal/Databases/West_Virginia_Geopackage.gpkg", areasymbols = list("WV603"))
#> $status
#> [1] TRUE
#>
#> $message
#> [1] "Removed areasymbols"
#>
#> $elapsedseconds
#> [1] 5