RfC450 - incomplete requests function * move clinical trials from screening term to separate section * move queries to SQL::Abstract (request_ids query needed 2 multi-placeholders)
NCRS COSD script * use XML::LibXML & XML::Compile::Schema from xsd to allow ordered elements * alternative function to generate xml using Template - easier layout control * add xml validator * remove some invalid header text * change most nested elements to inline to match supplied (inconsistent) example * use Encoding::FixLatin 'fix_latin' on free-text entries (result summaries, clinical details) to avoid encoding problems (non-ascii characters in NBT reports) * supply -uft8 flag to IO::All to prevent 'wide character' warning * suspend TopographySNOMEDPathology item, they don't want it * replace hard-coded NHSNumberStatusIndicator with value relating to NHS number presence * only 1 of SampleCollectionDate / SampleReceiptDate * skip *EQAS records and single-character last_name's * skip anonymised clinical trials
activated apparent_sender = no-reply@hmds.info to avoid rejection of messages from non-existent domain; adapted yearly register_and_error_log.pl to use same tt as monthly version; a failed cytogenetics result is now more verbose so cytogenetics_failed query needs to look for 'failed' as an rlike
switched to Local::DB for live to use insert_or_update method; moved update_patient_demographics to own sub due to increased complexity - need insert_or_update method; bugfix for initial cml patients query - needs additional 'undef' on pd.status or has same effect as inner join instead of left join