[% FOREACH entry IN vals.datasets %] [% END %] [% FOREACH field IN vals.reported_fields %][% # field %] [% # field = field | lower # now lowercase field to match vals hashref %] [% FOREACH entry IN vals.datasets %] [% SET result = entry.$field ; SET default = ranges.$field.default %] [% IF field.match('electrophoresis') && result.match('Isotype undetermined'); result = ''; END %] [% IF result && default != '' && ( 10 * result ) == ( 10 * default) # if default value %] [% IF field.match('Ig'); result = '' %] [% ELSIF field.match('paraprotein') %] [% IF entry.electrophoresis.match('Ig'); result = 'Unquantifiable' %] [% ELSIF entry.electrophoresis.match('No paraprotein'); result = '' %] [% ELSE; result = 'N/K'; END %] [% ELSE; result = 'N/K'; END # 9.9 != 9.90, etc %] [% END %] [% # IF result.match('<') OR result.match('N/K') OR ! result; class = 'center' %] [% SET class = 'center' # reset to default %] [% IF is_num(result) # no maths funcs unless numerical: %] [% IF ranges.item(field).flag_lower && result < ranges.item(field).flag_lower; class = 'highlight' %] [% ELSIF ranges.item(field).flag_higher && result > ranges.item(field).flag_higher; class = 'highlight' %] [% END %] [% END %] [% END %] [% IF ranges.$field.units %] [% ELSE %] [% END %] [% END %] [% # FOREACH field IN vals.calculated_fields # done manually now: %] [% # END %] [% FOREACH entry IN vals.datasets; DEFAULT entry.adenopathy = 'none' %] [% END %] [% FOREACH entry IN vals.datasets %] [% END %]
Parameter[% entry.date %]Reference Units
[% field.replace('_', ' ') FILTER ucfirst %]:[% # remove_me_to_test field ':' %] [% result | html %] [% ranges.$field.lower_range %] - [% ranges.$field.upper_range %] [% ranges.$field.units.replace('10/9', '109') %] 
Swelling: [% entry.adenopathy.replace('_\w+', '') # _(swelling|pain) %]  
Bone pain: [% IF ! entry.bone_pain.total_count %] [% entry.bone_pain.skip ? ' ' : 'none' # leave blank if no entry in bone pain table %] [% ELSIF entry.bone_pain.total_count > 2 # generalised %] [% SET class = entry.bone_pain.severe ? 'red' : 'normal' %] generalised [% ELSE # 1 or 2 entries %] [% IF entry.bone_pain.severe %] [% FOREACH pain IN entry.bone_pain.severe %] [% pain.replace('_\w+', '') %] [% END %] [% END %] [% IF entry.bone_pain.moderate %] [% FOREACH pain IN entry.bone_pain.moderate %] [% pain.replace('_\w+', '') %] [% END %] [% END %] [% END %]