refactored Roles::PDF so that all reports are generated by same method inline_html_to_pdf_no_webkit() so reports should be identical whether by print run, individual print or print_run.pl cron, and only have one sub to define pdf settings for all functions; print_run.pl takes getopt -t for test; moved family_id validation prefix definition to settings.cfg so test & live can have different values; new entry for pcr_and_sequencing_worksheet.tt
amended plasma storage worklist template as requested in RfC; corrected genomics_xml update success from $n to $result->rows & added warning on failure to update
fixed error in import_xtr_96_data.tt handling of data.failed var - returned 0 but true value for size(); var was also a HoH not hash; ensured genomics_xml.pl app_version always returned 4-digit value; improved wording of screen update history entry; more explicit message from ftp put() error
for UCLH: arranged sort order of previous records by registration date then lab number - done by Perl sort function as RDBO forces t1.id 1st if using DATE(requests.created_at) in sort options
simplified generation of participant id - moved patient_case_id lookup into main requests query, skipped patient_case_id field when creating %required_fields; updated genomics.t so tests pass
genomics participant id only created/updated if record screened and unit number still at default UNKNOWN, previously had to lookup unit number every time
patched genomics_xml.pl to update unit number with participant id at any time, not just within of screening, in case of script error on 1st run after screening, in which case opportunity for unit number update lost