Developers Getting Started With i2b2
Space shortcuts
Space Tools

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Table of Contents

Children Display


Overview

The Data Exporter functionality enables an i2b2 user to request patient data for the patients found by a desired query. In the configured workflow, data is requested and generated through new breakdown types that can be selected in the Run Query dialog. Users will see "data request" breakdowns, which send an e-mail to a predefined data manager requesting a type of data. The data manager (Manager user role) processes the request by rerunning the query with a special "data export" breakdown. The patient data is exported as a file and stored in a specified location for retrieval.

...

The i2b2 breakdown architecture has been modified to support new breakdown types for data request and export. HIVE_CELL_PARAMS has new parameters for global configuration, he the QT_RESULT_TYPE table has new entries for query export types, and the QT_BREAKDOWN_PATH defines the request and export. These are XML documents containing e-mails to send and SQL to execute. These breakdown types display in the run query dialog. When a user requests a breakdown, an User e-mail is sent to a data manager. When the data manager user exports the requested data, an export file is generated and email notification sent to the manager is also based on the entries in the QT_BREAKDOWN_PATH tablemails are sent to the e-mail address of the currently logged-in use. Data Manager e-mails are sent to an address configured in HIVE_CELL_PARAMS, and the data manager e-mail in an export is also saved as a file in the export location. The export file generation location, also configured in HIVE_CELL_PARAMS, is on the local drive hosting the i2b2 application. The data requester email in the export definition is not directly sent to the user - it is generated as a README file in the data export directory. The data Manager will be required to manually copy the file content into an email and send it to the data request User  

Database changes

Currently QT_BREAKDOWN_PATH .value column has datatype of varchar(2000). In order to support the XML  structure needed for the Data Exporter, the value column has been modified to CLOB datatype. 

...

NAMEDESCRIPTIONDISPLAYTYPE_IDVISUAL_ATTRIBUTE_TYPE_IDUSER_ROLE_CDCLASSNAME
PATIENT_DEMOGRAPHIC_REQUESTRequest Demographics DataCATNUMLRDATA_LDSedu.harvard.i2b2.crc.dao.setfinder.QueryResultPatientRequest
PATIENT_DEMOGRAPHIC_CSVExport Demographics DataCATNUMLXMANAGERedu.harvard.i2b2.crc.dao.setfinder.QueryResultPatientDownload


Info

We recommended recommend data requests be limited to DATA_LDS users (irrespective of Admin path role - admin, user, manager) and data exports be limited to MANAGER users (irrespective of data path role - data_lds, data_agg,data_obf, data_deid). The user role determines if exports/requests are visible and runnable. 

 QT_QUERY_RESULT_TYPEuser roledata requestdata export

 DATA_LDS

DATA_LDS

Success

non-display

MANAGER  

MANAGER

non-display

Success

MANAGER with

DATA_LDS

MANAGER


Success

MANAGER

with DATA_LDS

DATA_LDS

Success



...

NameValue
  • <request name>_REQUEST defines the request email generation parameters. 
  • Request email can be configured in PM_USER_DATA parameters to define the email address of the User.
  • User email content configurable in <RequesterEmailMessage>/>xml value parameter
  • Data Manager gets the data manager email (email address configured in the HIVE_CELL_PARAMS)
  • Data manager email content configurable in the <DataManagerEmailMessage>/xml value parameter

<?xml version="1.0"?>
<ValueExporter>
  <Version>[...version number...]</Version>
  <CreationDateTime>08/09/2024 12:00:00</CreationDateTime>
  <RequesterEmailMessage>[...details sent to User on data request...]  </RequesterEmailMessage>
  <DataManagerEmailMessage>[...details sent to data Manager on user data request...]</DataManagerEmailMessage>
</ValueExporter>

  • <request name>_CSV defines the data export email parameters and the SQL to for the export file generation.   
  • The data export email has detailed info on the file location and access info and can be customized according to your local institution's policies. 
  • The exported file is (s) are generated in a secure location on the server's file system along with the data export email file in a zipped folder
  • Email content and export SQL are configurable in the XML entries for the request/export in the Value parameters.
  •  Multiple SQL statements can be configured in the Value <file></file> tags as one SQL statement per file tag
<?xml version="1.0"?>
<ValueExporter>
  <Version>[...version number...]</Version>
  <CreationDateTime><date value></CreationDateTime>
  <DataManagerEmailMessage>details sent to data Manager on data request</DataManagerEmailMessage>
  <File>
<Filename>[... filename specification..]</Filename>
<Query>[... SQL query to generate the data export content...]</Query>
      <SeparatorCharacter>[...file format seperator...]</SeparatorCharacter>
  </File>
</ValueExporter>

...

Cell IDParameter NameExample ValueNotes
CRCedu.harvard.i2b2.crc.exportcsv.datamanageremailuserid@partners.orgEmail address used for sending request/export e-mails
CRCedu.harvard.i2b2.crc.smtp.hostsmtp.partners.orgSMTP host
CRCedu.harvard.i2b2.crc.smtp.port25SMTP port
CRCedu.harvard.i2b2.crc.smtp.ssl.enabledFALSETRUE will enable SSL
CRCedu.harvard.i2b2.crc.smtp.authFALSETRUE will enable SMTP authentication
CRCedu.harvard.i2b2.crc.smtp.usernamenoneSMTP username (required for SMTP authentication)
CRCedu.harvard.i2b2.crc.smtp.passwordnoneSMTP password (required for SMTP authentication)
CRCedu.harvard.i2b2.crc.smtp.enabledFALSETRUE will enable e-mails
CRCedu.harvard.i2b2.crc.smtp.from.fullnameData ManagerName that e-mails will be sent from.
CRCedu.harvard.i2b2.crc.smtp.from.emaildatamanager@site.orgE-mail address that e-mails will be sent from.
CCedu.harvard.i2b2.crc.smtp.subjecti2b2 Data RequestSubject line for e-mails.
CRCedu.harvard.i2b2.crc.exportcsv.defaultescapecharacter"Escape character for export files
CRCedu.harvard.i2b2.crc.exportcsv.maxfetchrows-1Maximum number of rows to export, or -1 for no limit
CRCedu.harvard.i2b2.crc.exportcsv.defaultlineend\nLine ending for export files
CRCedu.harvard.i2b2.crc.exportcsv.defaultseperator\tField separator for export files
CRCedu.harvard.i2b2.crc.exportcsv.resultfetchsize50000??????Number of records retrieved during each database fetch.
CRCedu.harvard.i2b2.crc.exportcsv.filename{{{PROJECT_ID}}}/{{{DATE_yyyyMMdd}}}_{{{FULL_NAME}}}.tsvParameterized template for export file names. If the extension is .zip, the file is zipped.
CRCedu.harvard.i2b2.crc.exportcsv.defaultquotechar"Quote character for export files
CRCedu.harvard.i2b2.crc.exportcsv.workfolder/tmp/i2b2Folder on the i2b2 server for data exports
CRCedu.harvard.i2b2.crc.exportcsv.zipencryptmethodnone?????????Encryption method for the exported ZIP file. One of STANDARD, NONE, or AES.


Export query definition variables

...