Opened 9 years ago

Closed 8 years ago

#267 closed enhancement (fixed)

reporting system (DB)

Reported by: gegorbet Owned by: dzollars
Priority: major Milestone: future
Component: ultrascan3 Version:
Keywords: review Cc:

Description

New tables need to be added to the database and new APIs written to allow:

  • Analysis programs to save report documents to the DB
  • Users to see analyses for a runID via a web script

This ticket parallels ticket #51. Whereas that ticket can be seen as tasks that Gary must implement for all analysis programs, this new one represents task for Dan in creating DB tables, APIs, and web scripts.

Attachments (1)

us3_reports_update.sql (4.6 KB) - added by dzollars 8 years ago.
Database definition file to establish reports in databases that already exist

Download all attachments as: .zip

Change History (6)

comment:1 Changed 8 years ago by dzollars

  • Status changed from new to assigned
  • Type changed from defect to enhancement

A substantial and comprehensive first pass at data tables and stored routines for the report module has been committed. I will also attach a file to this ticket that can be used to add all the necessary tables to existing databases. The tables have also been made a part of the standard database create script for new installations.

Stored routines have all been tested and work. One can save/update/retrieve/delete from all associated report tables as appropriate. Next step is to create a C++ class to wrap these details a bit, and then UltraScan analysis programs would use that to save report components to DB. Finally, once there is some data in there, a LIMS page to display it in that environment will be created.

Changed 8 years ago by dzollars

Database definition file to establish reports in databases that already exist

comment:2 Changed 8 years ago by gegorbet

In the reportDocument table, entries analysis/subAnalysis/documentType are enums. I just added new entries for analysis and subAnalysis; so the tables already require an update. Maybe these fields should be VARCHAR(32) instead of ENUM. That way, any future additions only require an update to ~/ultrascan3/etc/reports.xml as the current local reports updates do.

comment:3 Changed 8 years ago by gegorbet

After further study and discussion, it seems there are enough good reasons to keep analysis/subAnalysis/documentType as enums. They should, however, be kept in sync with the entries in the ~/ultrascan3/etc/reports.xml file.

I think that the analysis setting should be moved from the reportDocument record to the reportDetail record. A single reportDetail record would be produced by any single analysis program. All the reportDocument records produced by that analysis program would have the same analysis value. A reportDetail record is, in essense, a record of a single analysis. A reportDocument is one of several analysis items, each with a unique subAnalysis and documentType setting, but with a shared reportDetail and shared analysis setting.

comment:4 Changed 8 years ago by gegorbet

  • Keywords review added

Database and desktop modifications for DB reporting are complete. See ticket #51.

Report-ready.

comment:5 Changed 8 years ago by dzollars

  • Resolution set to fixed
  • Status changed from assigned to closed
Note: See TracTickets for help on using tickets.