OHDSI Home | Forums | Wiki | Github

DataQualityDashboard::executeDqChecks call returns connectionDetails must be an object of class 'connectionDetails'

Please forgive me if this is a dumb question as I am a newbie.

I set up RStudio following the documentation and installed DataQualityDashboard, but when I run it throws the following error: Error in DataQualityDashboard::executeDqChecks(connectionDetails = con, :
connectionDetails must be an object of class ‘connectionDetails’.

Here is the transcript of what I did:

con ← createConnectionDetails(dbms = ‘sql server’,

  •                            connectionString = "jdbc:sqlserver://omopsqltest:1433;databaseName=OMOP",
    
  •                            user = 'webapi_sa', password = 'XXXXX')
    

conn ← connect(con)
Connecting using SQL Server driver

querySql(conn, “SELECT count(*) FROM OMOP.cdm.PERSON;”)

1 2933714 – The connection clearly works

disconnect(conn)
DataQualityDashboard::executeDqChecks(connectionDetails = con,

  •                                   cdmDatabaseSchema = 'cdm',
    
  •                                   resultsDatabaseSchema ='results',
    
  •                                   cdmSourceName = 'OMOP', 
    
  •                                   numThreads = 1,
    
  •                                   sqlOnly = FALSE, 
    
  •                                   outputFolder = 'c:\\tmp\\dqd', 
    
  •                                   outputFile = 'DataQualityDashboard',
    
  •                                   verboseMode = TRUE,
    
  •                                   writeToTable = FALSE,
    
  •                                   checkLevels = c('TABLE', 'FIELD', 'CONCEPT'),
    
  •                                   checkNames = c('measurePersonCompleteness', 'cdmField', 'isRequired')
    
  • )
    Error in DataQualityDashboard::executeDqChecks(connectionDetails = con, :
    connectionDetails must be an object of class ‘connectionDetails’.

typeof(con)
[1] “list”

What am I doing wrong?

Thank you in advance for any help you may provide!
Charlie

Hi there, thanks for reporting this! I believe this is due to an incompatibility between DQD and the latest version of DatabaseConnector. We identified this recently and I just merged in a fix yesterday. An updated version of DQD will be released in the coming days which should resolve this issue - I’ll report back here when that’s released!

In the meantime, reverting to a pre-6.0.0 version of DatabaseConnector should also fix this.

Apologies for the inconvenience!

oh thank you so much. I see now in the code that it is doing a check on class and comparing it to
!(“connectionDetails” %in% class(connectionDetails))) {

class(con)
[1] “ConnectionDetails” “DefaultConnectionDetails”

The issue appears to be the case of the first letter… anyway that’s my guess.
But thank you for your quick response and I look forward to getting the fix.

Charlie

Got same error in one of our projects. Following the thread so we can be informed when a fix is released

1 Like

Thanks both for your patience. The release is in final review and should be shipped next week.

@charlie that’s correct - the case of the ConnectionDetails object changed in databaseConnector 6.0.0. The fix in DQD will simply be to add the new name as an accepted value to that initial check!

I’ll let you both know here as soon as it’s released.

2 Likes

This is fixed in the latest release of the DQD package, v2.1. Please let me know if you experience any further issues!

1 Like

@katy-sadowski’s answer helped.
install_github('OHDSI/DatabaseConnector',ref='v5.1.0')

1 Like
t