function report_CT_ENG(c1trigger,c6trigger,alarms,rA,rpt,Font_caption,...
    Font_table,datarif,CT,conn,FileName)

import mlreportgen.dom.*
import mlreportgen.report.*

% Make sure DOM is compilable
makeDOMCompilable()

CT_Att = zeros(1,rA);
att = cell(1,rA);
for A = 1:rA
    array = char(alarms(A,2));
    comando = ['select EventDate, EventTime, XShift, X from ELABDATACTRL where EventDate > ''' ...
        datestr(datenum(datarif),'yyyy-mm-dd') ''' and CtrlToolName = ''' ...
        array ''' '];
    curs = exec(conn,comando);
    curs = fetch(curs);
    Dati = curs.Data;
    
    % Modifico il formato di data e ora
    [rD,rC] = size(Dati);
    if rC ~= 1
        T = [cell2mat(Dati(:,1)) repmat(' ', [rD,1]) cell2mat(Dati(:,2))];
        Date = datenum(T); % Data
        Att_Loc = cell2mat(Dati(:,3)); % Attivazioni Locali
        Att_Cum = cell2mat(Dati(:,4)); % Attivazioni Cumulate
        Att_Loc_Tot = cumsum(Att_Loc);
        testo = Paragraph(['During the reference time period, '...
            'the control tool was activated ' num2str(Att_Loc_Tot(end)) ' times.' ]);
        testo2 = Paragraph(['The same device has been activated a total of '...
            num2str(Att_Cum(end)) ' times since the beginning of the monitoring activity.' ]);
        if Att_Loc_Tot(end) > 1
            CT_Att(1,A) = A;
        end
        testo.HAlign = 'justify';
        testo2.HAlign = 'justify';
        add(CT,testo);
        add(CT,testo2);
        att_temp = find(Att_Loc);
        if isempty(att_temp) == 0
            att{1,A} = splitlines(strjoin(cellstr(Date(att_temp)), '\n'));
        end
    else
        testo = Paragraph('No data available for the reference time period.');
        add(CT,testo);
    end
end
clear A
A = find(CT_Att); % Cerco eventuali attivazioni nei singoli dispositivi CT
if isempty(A) == 0
    colonna1(1,1) = {'ID'};
    colonna2(1,1) = {'Control tool typology'};
    colonna3(1,1) = {'Activations [dd-mm-yyyy hh:MM:ss]'};
    disp = c1trigger(A);
    type = c6trigger(A);
    [num,~] = size(disp);
    for n = 1:num
        colonna1(n+1,1) = {disp};
        colonna2(n+1,1) = {type};
        colonna3(n+1,1) = {att};
    end
    tab = FormalTable([colonna1,colonna2,colonna3]);
    % formattazione tabella
    tab.TableEntriesStyle = {HAlign('center'),VAlign('middle'),FontSize(Font_table),InnerMargin('0.5mm')};
    tab.Style = {ResizeToFitContents(true),Width("100%"),RowSep('solid','black','1px'),...
        ColSep('solid','black','1px'),Hyphenation(false),BackgroundColor('#E0F1FF')};
    tab.Border = 'single';
    tabCaption = Paragraph('Tab. 2 - Control tools typology and activations number during the reference time period');
    tabCaption.Style = {HAlign('center'),FontSize(Font_caption),Italic(1),Color('midnightblue')};
    bodyFirstRow = tab.Body.Children(1);
    bodyFirstRow.Style = [bodyFirstRow.Style {Bold()}];
    
    add(CT,tabCaption);
    add(CT,tab);
end
br = PageBreak();
add(CT,br);
add(rpt,CT);
template(rpt);

fileID = fopen(FileName,'a');
fmt = '%s \r';
text = 'report_CT_ENG function executed correctly';
fprintf(fileID,fmt,text);
fclose(fileID);

end