I am getting an error when trying to execute a new Characterisation as part of the EHDEN pharmacovigilance studyathon. The same characterisations run OK on other databases, so I wonder if it is related to the out Atlas configuration. This is my first post so apologies if I haven’t provided all the required information.
This is the error message generated by Atlas:
org.ohdsi.webapi.exception.AtlasException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: org.springframework.jdbc.BadSqlGrammarException: StatementCallback; bad SQL grammar [INSERT INTO TEMP.rf9lhgvr_cov_ref (
covariate_id,
covariate_name,
analysis_id,
concept_id
)
SELECT covariate_id,
CAST(CONCAT('gender = ', CASE WHEN concept_name IS NULL THEN ‘Unknown concept’ ELSE concept_name END) AS VARCHAR(512)) AS covariate_name,
1 AS analysis_id,
CAST((covariate_id - 1) / 1000 AS INT) AS concept_id
FROM (
SELECT DISTINCT covariate_id
FROM TEMP.rf9lhgvr_cov_2
) t1
LEFT JOIN CDM.concept
ON concept_id = CAST((covariate_id - 1) / 1000 AS INT); INSERT INTO TEMP.rf9lhgvr_analysis_ref (
analysis_id,
analysis_name,
domain_id,
start_day,
end_day,
is_binary,
missing_means_zero
)
SELECT 1 AS analysis_id,
CAST(‘DemographicsGender’ AS VARCHAR(512)) AS analysis_name,
CAST(‘Demographics’ AS VARCHAR(20)) AS domain_id,
CAST(NULL AS INT) AS start_day,
CAST(NULL AS INT) AS end_day,
CAST('Y' AS VARCHAR(1)) AS is_binary,
CAST(NULL AS VARCHAR(1)) AS missing_means_zero; SELECT CAST(FLOOR((YEAR(cohort_start_date) - year_of_birth) / 5) * 1000 + 3 AS BIGINT) AS covariate_id,
cohort_definition_id,
COUNT(*) AS sum_value
INTO TEMP.rf9lhgvr_cov_3
FROM TEMP.temp_cohort_rf9lhgvr cohort
INNER JOIN CDM.person
ON cohort.subject_id = person.person_id
WHERE cohort.cohort_definition_id IN (35)
GROUP BY cohort_definition_id,
FLOOR((YEAR(cohort_start_date) - year_of_birth) / 5)
; INSERT INTO TEMP.rf9lhgvr_cov_ref (
covariate_id,
covariate_name,
analysis_id,
concept_id
)
SELECT covariate_id,
CAST(CONCAT (
'age group: ‘,
RIGHT(CONCAT(’ ', CAST(CAST(5 * (covariate_id - 3) / 1000 AS INTEGER) AS VARCHAR)), 3),
’ - ‘,
RIGHT(CONCAT(’ ', CAST((CAST(5 * (covariate_id - 3) / 1000 AS INTEGER)) + 4 AS VARCHAR)), 3)
) AS VARCHAR(512)) AS covariate_name,
3 AS analysis_id,
0 AS concept_id
FROM (
SELECT DISTINCT covariate_id
FROM TEMP.rf9lhgvr_cov_3
) t1; INSERT INTO TEMP.rf9lhgvr_analysis_ref (
analysis_id,
analysis_name,
domain_id,
start_day,
end_day,
is_binary,
missing_means_zero
)
SELECT 3 AS analysis_id,
CAST(‘DemographicsAgeGroup’ AS VARCHAR(512)) AS analysis_name,
CAST(‘Demographics’ AS VARCHAR(20)) AS domain_id,
CAST(NULL AS INT) AS start_day,
CAST(NULL AS INT) AS end_day,
CAST('Y' AS VARCHAR(1)) AS is_binary,
CAST(NULL AS VARCHAR(1)) AS missing_means_zero; IF OBJECT_ID('TEMP.rf9lhgvr_dem_age_data', 'U'