Hello I would like to assign a dbConnection to a R6 class but it fails.
LastProfilZdb <- R6Class(
classname = "LastProfilZdb",
public = list(
name = NULL,
zp = NULL,
data = NULL ,
zp_id = function() {
pool::poolWithTransaction(self$db_server, function(conn){
DBI::dbGetQuery(conn, paste0("SELECT ZP_ID FROM
ZP_ID WHERE LP_ZP = '", self$zaehlpunkt,
"' OR ZP_NAME_SAP = '", self$zaehlpunkt, "'"))
})
},
#....
#....
initialize = function(){
message("Init Data Base Connection")
#
self$db_server <- pool::dbPool(drv = odbc::odbc(),
dsn = "Oracle",
schema = "schema" )
},
finalize = function() {
message("Closing Data Base Connection")
pool::poolClose(self$db_server)
}
),
private = list(
# db Connection is stored in the calss so we don't need to care any more
# This way, input data can be collected in a neat way,
# and stored inside our object.
db_server = NULL
)
)
This fails with error: Error in self$db_server <- pool::dbPool(drv = odbc::odbc(), dsn = "Oracle", : cannot add bindings to a locked environment
What can I do?