[% # PROCESS dumper.tt dump = haem_data.as_tree %] [% BLOCK calculate; DEFAULT factor = 10; # unless supplied result = haem_data.item(var); flag = var _ '_f'; # eg wbc_f class = result.match('\*') || haem_data.item(flag) ? 'red' : 'normal'; %] [% IF result.match('\*'); result; # ie *000 ELSE; IF float; # needs formatting: FILTER format('%.' _ float _ 'f'); result / factor; END; ELSE; result / factor; END; suffix; END; %] [% END %]
[% INCLUDE calculate(var = 'wbc', float = 1) %] [% INCLUDE calculate(var = 'rbc', float = 2, factor = 100) %] [% INCLUDE calculate(var = 'hb', factor = 1) # ie int %] [% INCLUDE calculate(var = 'plt', factor = 1) # ie int %] [% INCLUDE calculate(var = 'hct', float = 1) %] [% INCLUDE calculate(var = 'mcv', float = 1) %] [% INCLUDE calculate(var = 'mch', float = 1) %] [% INCLUDE calculate(var = 'mchc', factor = 1) # ie int %]
WBC RBC Hb Plt HCT MCV MCH MCHC
 
[% INCLUDE calculate(var = 'lymph', float = 1) %] [% INCLUDE calculate(var = 'lymph_percent', float = 1, suffix = '%') %] [% IF c.user_can('modify_results') AND NOT is_locked %] [% END %] [% INCLUDE calculate(var = 'mixed', float = 1 ) %] [% INCLUDE calculate(var = 'mixed_percent', float = 1, suffix = '%') %] [% INCLUDE calculate(var = 'neutr', float = 1) %] [% INCLUDE calculate(var = 'neutr_percent', float = 1, suffix = '%') %]
Lymph [% IF haem_data.status.match('default') %] [% END %] [ DELETE ]
Mixed
Neutr