@@ -50,7 +50,7 @@ tcplLoadChem <- function(field = NULL, val = NULL, exact = TRUE,
5050 include.spid = TRUE ) {
5151
5252 if (getOption(" TCPL_DRVR" ) == " API" ) {
53- if (tolower(field ) != " spid" ) stop(" When drvr option is set to 'API', only 'spid' is a valid 'field' value." )
53+ if (is.null( field ) || tolower(field ) != " spid" ) stop(" When drvr option is set to 'API', only 'spid' is a valid 'field' value." )
5454 if (! exact ) exact <- TRUE
5555 dat <- tcplQueryAPI(resource = " data" , fld = " spid" , val = val , return_flds = c(" spid" , " chid" , " casn" , " chnm" , " dsstox_substance_id" ))
5656 if (! length(colnames(dat ))) {
@@ -65,9 +65,9 @@ tcplLoadChem <- function(field = NULL, val = NULL, exact = TRUE,
6565 if (! is.null(field )) {
6666 vfield <- c(" chid" , " spid" , " chnm" , " casn" , " code" , " chem.only" ," dsstox_substance_id" )
6767 if (! field %in% vfield ) stop(" Invalid 'field' value." )
68+ if (field == " chem.only" ) include.spid <- FALSE
6869 }
6970
70-
7171 qstring <- .ChemQ(field = field , val = val , exact = exact )
7272
7373 dat <- tcplQuery(query = qstring , tbl = tbl )
@@ -86,9 +86,7 @@ tcplLoadChem <- function(field = NULL, val = NULL, exact = TRUE,
8686
8787 if (include.spid ) return (unique(dat , by = c(" spid" , " chid" )))
8888
89- dat <- unique(dat [ , list (chid , chnm , casn , code , dsstox_substance_id )])
90-
91- unique(dat , by = c(" spid" , " chid" ))[]
89+ unique(dat [ , list (chid , chnm , casn , code , dsstox_substance_id )])
9290
9391}
9492
0 commit comments